aboutsummaryrefslogtreecommitdiff
path: root/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PMLPsatdAlgorithm.H
diff options
context:
space:
mode:
authorGravatar Edoardo Zoni <59625522+EZoni@users.noreply.github.com> 2021-04-19 08:27:19 -0700
committerGravatar GitHub <noreply@github.com> 2021-04-19 08:27:19 -0700
commit0beb477484381a012d9e80f326c4cb51926b5e5c (patch)
treebe3b5e0d9374e2cb718582b4fdd64c13a1aa55ff /Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PMLPsatdAlgorithm.H
parente0d1e2494f1190f1b42088273409887a459987bd (diff)
downloadWarpX-0beb477484381a012d9e80f326c4cb51926b5e5c.tar.gz
WarpX-0beb477484381a012d9e80f326c4cb51926b5e5c.tar.zst
WarpX-0beb477484381a012d9e80f326c4cb51926b5e5c.zip
Divergence cleaning for PSATD in PML (#1600)
* Add div(E)/div(B) cleaning options for PSATD in PMLs * Pass missing flags to spectral solver in PML * Duplicate MPI exchange and communication functions for G * Use separate parameters for div cleaning in PMLs * Add asserts for features that are not implemented * Do not need to duplicate MPI exchange functions for G * Add short documentation for new input parameters * Set new parameters true by default with PSATD solver * Add CI test for PML div cleaning with PSATD * Use new syntax <diag_name>.intervals in new input file * Reset benchmark of new CI test * Always synchronize nodal points of G MultiFab * Fix few warnings in 2D build * Update Benchmark of pml_psatd_dive_divb_cleaning * Improve Documentation of warpx.do_pml_dive_cleaning Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com> * Improve Documentation of warpx.do_pml_divb_cleaning Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com> * Improve Abort Message * Clean Up Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
Diffstat (limited to 'Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PMLPsatdAlgorithm.H')
-rw-r--r--Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PMLPsatdAlgorithm.H6
1 files changed, 5 insertions, 1 deletions
diff --git a/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PMLPsatdAlgorithm.H b/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PMLPsatdAlgorithm.H
index 368ea27ad..1b9755826 100644
--- a/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PMLPsatdAlgorithm.H
+++ b/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PMLPsatdAlgorithm.H
@@ -21,7 +21,9 @@ class PMLPsatdAlgorithm : public SpectralBaseAlgorithm
const amrex::DistributionMapping& dm,
const int norder_x, const int norder_y,
const int norder_z, const bool nodal,
- const amrex::Real dt);
+ const amrex::Real dt,
+ const bool dive_cleaning,
+ const bool divb_cleaning);
void InitializeSpectralCoefficients(
const SpectralKSpace& spectral_kspace,
@@ -69,6 +71,8 @@ class PMLPsatdAlgorithm : public SpectralBaseAlgorithm
private:
SpectralRealCoefficients C_coef, S_ck_coef, inv_k2_coef;
amrex::Real m_dt;
+ bool m_dive_cleaning;
+ bool m_divb_cleaning;
};
#endif // WARPX_USE_PSATD