aboutsummaryrefslogtreecommitdiff
path: root/Source/WarpX.cpp
diff options
context:
space:
mode:
authorGravatar MaxThevenet <mthevenet@lbl.gov> 2019-11-11 18:32:23 -0800
committerGravatar MaxThevenet <mthevenet@lbl.gov> 2019-11-11 18:32:23 -0800
commit89069ca7ba61dc34f9b392c75d0d4e2f3c2e0938 (patch)
treec4de95bebf93ac838d0a262bc12b37f858d1a0ad /Source/WarpX.cpp
parent0d06578a4f08aa7f98369109ca4f1bf88d09acf4 (diff)
downloadWarpX-89069ca7ba61dc34f9b392c75d0d4e2f3c2e0938.tar.gz
WarpX-89069ca7ba61dc34f9b392c75d0d4e2f3c2e0938.tar.zst
WarpX-89069ca7ba61dc34f9b392c75d0d4e2f3c2e0938.zip
move FillBoundaryF call to where needed, and allow for extra guard cells
Diffstat (limited to 'Source/WarpX.cpp')
-rw-r--r--Source/WarpX.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/Source/WarpX.cpp b/Source/WarpX.cpp
index 10a6b731e..c6f96d1cd 100644
--- a/Source/WarpX.cpp
+++ b/Source/WarpX.cpp
@@ -53,6 +53,9 @@ long WarpX::nox = 1;
long WarpX::noy = 1;
long WarpX::noz = 1;
+int WarpX::extra_guard_cells_alloc;
+int WarpX::extra_guard_cells_exchange;
+
bool WarpX::use_fdtd_nci_corr = false;
int WarpX::l_lower_order_in_v = true;
@@ -303,6 +306,13 @@ WarpX::ReadParameters ()
pp.queryarr("E_external_grid", E_external_grid);
pp.queryarr("B_external_grid", B_external_grid);
+ pp.query("extra_guard_cells_alloc", extra_guard_cells_alloc);
+ pp.query("extra_guard_cells_exchange", extra_guard_cells_exchange);
+ AMREX_ALWAYS_ASSERT_WITH_MESSAGE(
+ extra_guard_cells_exchange <= extra_guard_cells_alloc,
+ "ERROR: warpx.extra_guard_cells_exchange must be smaller than warpx.extra_guard_cells_alloc"
+ );
+
pp.query("do_moving_window", do_moving_window);
if (do_moving_window)
{
@@ -715,7 +725,9 @@ WarpX::AllocLevelData (int lev, const BoxArray& ba, const DistributionMapping& d
nox_fft, noy_fft, noz_fft,
NCIGodfreyFilter::m_stencil_width,
maxwell_fdtd_solver_id,
- maxLevel());
+ maxLevel(),
+ extra_guard_cells_alloc,
+ extra_guard_cells_exchange);
if (mypc->nSpeciesDepositOnMainGrid() && n_current_deposition_buffer == 0) {
n_current_deposition_buffer = 1;