diff options
author | 2021-10-21 10:01:39 -0700 | |
---|---|---|
committer | 2021-10-21 10:01:39 -0700 | |
commit | 7d011e8f733c9bcb1de8d44c27bf912655d36068 (patch) | |
tree | ac70d3e05ef087f36c3fd56918bd182cd14c6295 /Source/FieldSolver/FiniteDifferenceSolver | |
parent | 5500567e17314557c44c84bf38b135aeb75d9a99 (diff) | |
download | WarpX-7d011e8f733c9bcb1de8d44c27bf912655d36068.tar.gz WarpX-7d011e8f733c9bcb1de8d44c27bf912655d36068.tar.zst WarpX-7d011e8f733c9bcb1de8d44c27bf912655d36068.zip |
Div(B) Cleaning: Change Normalization of G (#2429)
* PSATD with div(B) Cleaning: Change Normalization of G
* Use New Normalization also in RZ
* Use New Normalization also in FDTD
* Reset Benchmark of Test divb_cleaning_3d
Diffstat (limited to 'Source/FieldSolver/FiniteDifferenceSolver')
-rw-r--r-- | Source/FieldSolver/FiniteDifferenceSolver/EvolveB.cpp | 8 | ||||
-rw-r--r-- | Source/FieldSolver/FiniteDifferenceSolver/EvolveG.cpp | 9 |
2 files changed, 9 insertions, 8 deletions
diff --git a/Source/FieldSolver/FiniteDifferenceSolver/EvolveB.cpp b/Source/FieldSolver/FiniteDifferenceSolver/EvolveB.cpp index 493e91dc9..f115ca8e5 100644 --- a/Source/FieldSolver/FiniteDifferenceSolver/EvolveB.cpp +++ b/Source/FieldSolver/FiniteDifferenceSolver/EvolveB.cpp @@ -108,8 +108,6 @@ void FiniteDifferenceSolver::EvolveBCartesian ( amrex::LayoutData<amrex::Real>* cost = WarpX::getCosts(lev); - Real constexpr c2 = PhysConst::c * PhysConst::c; - // Loop through the grids, and over the tiles within each grid #ifdef AMREX_USE_OMP #pragma omp parallel if (amrex::Gpu::notInLaunchRegion()) @@ -190,15 +188,15 @@ void FiniteDifferenceSolver::EvolveBCartesian ( [=] AMREX_GPU_DEVICE (int i, int j, int k) { - Bx(i,j,k) += c2 * dt * T_Algo::DownwardDx(G, coefs_x, n_coefs_x, i, j, k); + Bx(i,j,k) += dt * T_Algo::DownwardDx(G, coefs_x, n_coefs_x, i, j, k); }, [=] AMREX_GPU_DEVICE (int i, int j, int k) { - By(i,j,k) += c2 * dt * T_Algo::DownwardDy(G, coefs_y, n_coefs_y, i, j, k); + By(i,j,k) += dt * T_Algo::DownwardDy(G, coefs_y, n_coefs_y, i, j, k); }, [=] AMREX_GPU_DEVICE (int i, int j, int k) { - Bz(i,j,k) += c2 * dt * T_Algo::DownwardDz(G, coefs_z, n_coefs_z, i, j, k); + Bz(i,j,k) += dt * T_Algo::DownwardDz(G, coefs_z, n_coefs_z, i, j, k); } ); } diff --git a/Source/FieldSolver/FiniteDifferenceSolver/EvolveG.cpp b/Source/FieldSolver/FiniteDifferenceSolver/EvolveG.cpp index b2aa302ad..0e9c383d9 100644 --- a/Source/FieldSolver/FiniteDifferenceSolver/EvolveG.cpp +++ b/Source/FieldSolver/FiniteDifferenceSolver/EvolveG.cpp @@ -73,6 +73,9 @@ void FiniteDifferenceSolver::EvolveGCartesian ( std::array<std::unique_ptr<amrex::MultiFab>,3> const& Bfield, amrex::Real const dt) { + + amrex::Real constexpr c2 = PhysConst::c * PhysConst::c; + #ifdef AMREX_USE_OMP #pragma omp parallel if (amrex::Gpu::notInLaunchRegion()) #endif @@ -101,9 +104,9 @@ void FiniteDifferenceSolver::EvolveGCartesian ( // Loop over cells and update G amrex::ParallelFor(tf, [=] AMREX_GPU_DEVICE (int i, int j, int k) { - G(i,j,k) += dt * (T_Algo::UpwardDx(Bx, coefs_x, n_coefs_x, i, j, k) - + T_Algo::UpwardDy(By, coefs_y, n_coefs_y, i, j, k) - + T_Algo::UpwardDz(Bz, coefs_z, n_coefs_z, i, j, k)); + G(i,j,k) += c2 * dt * (T_Algo::UpwardDx(Bx, coefs_x, n_coefs_x, i, j, k) + + T_Algo::UpwardDy(By, coefs_y, n_coefs_y, i, j, k) + + T_Algo::UpwardDz(Bz, coefs_z, n_coefs_z, i, j, k)); }); } } |