From 41a0779a4c47a1395ad8bc5ff7e1b1025acaf2e8 Mon Sep 17 00:00:00 2001 From: jackieyao0114 Date: Wed, 1 Dec 2021 09:30:53 -0800 Subject: [PATCH] change 4-point stencil to 3-point stencil for Neumann --- .../CartesianYeeAlgorithm.H | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Source/FieldSolver/FiniteDifferenceSolver/FiniteDifferenceAlgorithms/CartesianYeeAlgorithm.H b/Source/FieldSolver/FiniteDifferenceSolver/FiniteDifferenceAlgorithms/CartesianYeeAlgorithm.H index a19c6716e..cd1e6bb8b 100644 --- a/Source/FieldSolver/FiniteDifferenceSolver/FiniteDifferenceAlgorithms/CartesianYeeAlgorithm.H +++ b/Source/FieldSolver/FiniteDifferenceSolver/FiniteDifferenceAlgorithms/CartesianYeeAlgorithm.H @@ -240,11 +240,11 @@ struct CartesianYeeAlgorithm { if(ncomp != nodality){ if ( Ms_hi_x == 0.) //non-magnetic on right { - return inv_dx*inv_dx*(2.*F(i,j,k,ncomp) - 5.*F(i-1,j,k,ncomp) + 4.*F(i-2,j,k,ncomp) - F(i-3,j,k,ncomp)); + return inv_dx*inv_dx*(F(i,j,k,ncomp) - 2.* F(i-1,j,k,ncomp) + F(i-2,j,k,ncomp)); } else if (Ms_lo_x == 0.) //non-magnetic on left { - return inv_dx*inv_dx*(2.*F(i,j,k,ncomp) - 5.*F(i+1,j,k,ncomp) + 4.*F(i+2,j,k,ncomp) - F(i+3,j,k,ncomp)); + return inv_dx*inv_dx*(F(i,j,k,ncomp) - 2.* F(i+1,j,k,ncomp) + F(i+2,j,k,ncomp)); } else { return inv_dx*(UpwardDx(F, coefs_x, n_coefs_x, i, j, k, ncomp) - DownwardDx(F, coefs_x, n_coefs_x, i, j, k, ncomp)); @@ -276,11 +276,11 @@ struct CartesianYeeAlgorithm { if(ncomp != nodality){ if ( Ms_hi_y == 0.) //non-magnetic on right { - return inv_dy*inv_dy*(2.*F(i,j,k,ncomp) - 5.*F(i,j-1,k,ncomp) + 4.*F(i,j-2,k,ncomp) - F(i,j-3,k,ncomp)); + return inv_dy*inv_dy*(F(i,j,k,ncomp) - 2.*F(i,j-1,k,ncomp) + F(i,j-2,k,ncomp)); } else if (Ms_lo_y == 0.) //non-magnetic on left { - return inv_dy*inv_dy*(2.*F(i,j,k,ncomp) - 5.*F(i,j+1,k,ncomp) + 4.*F(i,j+2,k,ncomp) - F(i,j+3,k,ncomp)); + return inv_dy*inv_dy*(F(i,j,k,ncomp) - 2.*F(i,j+1,k,ncomp) + F(i,j+2,k,ncomp)); } else { return inv_dy*(UpwardDy(F, coefs_y, n_coefs_y, i, j, k, ncomp) - DownwardDy(F, coefs_y, n_coefs_y, i, j, k, ncomp)); @@ -312,11 +312,11 @@ struct CartesianYeeAlgorithm { if(ncomp != nodality){ if ( Ms_hi_z == 0.) //non-magnetic on right { - return inv_dz*inv_dz*(2.*F(i,j,k,ncomp) - 5.*F(i,j,k-1,ncomp) + 4.*F(i,j,k-2,ncomp) - F(i,j,k-3,ncomp)); + return inv_dz*inv_dz*(F(i,j,k,ncomp) - 2.*F(i,j,k-1,ncomp) + F(i,j,k-2,ncomp)); } else if (Ms_lo_z == 0.) //non-magnetic on left { - return inv_dz*inv_dz*(2.*F(i,j,k,ncomp) - 5.*F(i,j,k+1,ncomp) + 4.*F(i,j,k+2,ncomp) - F(i,j,k+3,ncomp)); + return inv_dz*inv_dz*(F(i,j,k,ncomp) - 2.*F(i,j,k+1,ncomp) + F(i,j,k+2,ncomp)); } else { return inv_dz*(UpwardDz(F, coefs_z, n_coefs_z, i, j, k, ncomp) - DownwardDz(F, coefs_z, n_coefs_z, i, j, k, ncomp));