From 1c20a09ba6268b2e7d23041c09060bcf1df23628 Mon Sep 17 00:00:00 2001 From: NeilZaim <49716072+NeilZaim@users.noreply.github.com> Date: Wed, 30 Sep 2020 22:18:46 +0200 Subject: Remove instability on PML with do_nodal (#1379) * Increase size of sigma_star by 1 in nodal mode * Add do_nodal to FabFactory * Add ifdef WARPX_USE_PSATD directives * Increase size of sigma_star arrays by one regardless of nodal state --- Source/BoundaryConditions/PML.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'Source/BoundaryConditions/PML.cpp') diff --git a/Source/BoundaryConditions/PML.cpp b/Source/BoundaryConditions/PML.cpp index 8141f7abf..202867bdb 100644 --- a/Source/BoundaryConditions/PML.cpp +++ b/Source/BoundaryConditions/PML.cpp @@ -125,29 +125,29 @@ SigmaBox::SigmaBox (const Box& box, const BoxArray& grids, const Real* dx, int n { sigma [idim].resize(sz[idim]+1); sigma_cumsum [idim].resize(sz[idim]+1); - sigma_star [idim].resize(sz[idim]); - sigma_star_cumsum [idim].resize(sz[idim]); + sigma_star [idim].resize(sz[idim]+1); + sigma_star_cumsum [idim].resize(sz[idim]+1); sigma_fac [idim].resize(sz[idim]+1); sigma_cumsum_fac [idim].resize(sz[idim]+1); - sigma_star_fac [idim].resize(sz[idim]); - sigma_star_cumsum_fac[idim].resize(sz[idim]); + sigma_star_fac [idim].resize(sz[idim]+1); + sigma_star_cumsum_fac[idim].resize(sz[idim]+1); sigma [idim].m_lo = lo[idim]; sigma [idim].m_hi = hi[idim]+1; sigma_cumsum [idim].m_lo = lo[idim]; sigma_cumsum [idim].m_hi = hi[idim]+1; sigma_star [idim].m_lo = lo[idim]; - sigma_star [idim].m_hi = hi[idim]; + sigma_star [idim].m_hi = hi[idim]+1; sigma_star_cumsum [idim].m_lo = lo[idim]; - sigma_star_cumsum [idim].m_hi = hi[idim]; + sigma_star_cumsum [idim].m_hi = hi[idim]+1; sigma_fac [idim].m_lo = lo[idim]; sigma_fac [idim].m_hi = hi[idim]+1; sigma_cumsum_fac [idim].m_lo = lo[idim]; sigma_cumsum_fac [idim].m_hi = hi[idim]+1; sigma_star_fac [idim].m_lo = lo[idim]; - sigma_star_fac [idim].m_hi = hi[idim]; + sigma_star_fac [idim].m_hi = hi[idim]+1; sigma_star_cumsum_fac[idim].m_lo = lo[idim]; - sigma_star_cumsum_fac[idim].m_hi = hi[idim]; + sigma_star_cumsum_fac[idim].m_hi = hi[idim]+1; } Array fac; -- cgit v1.2.3