aboutsummaryrefslogtreecommitdiff
path: root/Source/Particles/PhysicalParticleContainer.cpp
diff options
context:
space:
mode:
authorGravatar Weiqun Zhang <weiqunzhang@lbl.gov> 2019-12-04 11:31:32 -0800
committerGravatar Weiqun Zhang <weiqunzhang@lbl.gov> 2019-12-04 11:31:32 -0800
commita2c70d824036f371c07e670cb0aea6dde1dc383f (patch)
treec741440124f88c267bafaa1ef73f1573994f03b1 /Source/Particles/PhysicalParticleContainer.cpp
parentf354f65d4e67595deec9afa44e20492c913fd70f (diff)
downloadWarpX-a2c70d824036f371c07e670cb0aea6dde1dc383f.tar.gz
WarpX-a2c70d824036f371c07e670cb0aea6dde1dc383f.tar.zst
WarpX-a2c70d824036f371c07e670cb0aea6dde1dc383f.zip
When momentum-conserving gather is used, the index type of Ex, Ey, etc. is not the same as WarpX::*_nodal_flag.
Diffstat (limited to 'Source/Particles/PhysicalParticleContainer.cpp')
-rw-r--r--Source/Particles/PhysicalParticleContainer.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/Source/Particles/PhysicalParticleContainer.cpp b/Source/Particles/PhysicalParticleContainer.cpp
index 008eb9c89..3128868e4 100644
--- a/Source/Particles/PhysicalParticleContainer.cpp
+++ b/Source/Particles/PhysicalParticleContainer.cpp
@@ -1362,40 +1362,41 @@ PhysicalParticleContainer::applyNCIFilter (
#endif
// Filter Ex (Both 2D and 3D)
- filtered_Ex.resize(amrex::convert(tbox,WarpX::Ex_nodal_flag));
+ filtered_Ex.resize(amrex::convert(tbox,Ex.box().ixType()));
// Safeguard for GPU
exeli = filtered_Ex.elixir();
// Apply filter on Ex, result stored in filtered_Ex
+
nci_godfrey_filter_exeybz[lev]->ApplyStencil(filtered_Ex, Ex, filtered_Ex.box());
// Update ex_ptr reference
ex_ptr = &filtered_Ex;
// Filter Ez
- filtered_Ez.resize(amrex::convert(tbox,WarpX::Ez_nodal_flag));
+ filtered_Ez.resize(amrex::convert(tbox,Ez.box().ixType()));
ezeli = filtered_Ez.elixir();
nci_godfrey_filter_bxbyez[lev]->ApplyStencil(filtered_Ez, Ez, filtered_Ez.box());
ez_ptr = &filtered_Ez;
// Filter By
- filtered_By.resize(amrex::convert(tbox,WarpX::By_nodal_flag));
+ filtered_By.resize(amrex::convert(tbox,By.box().ixType()));
byeli = filtered_By.elixir();
nci_godfrey_filter_bxbyez[lev]->ApplyStencil(filtered_By, By, filtered_By.box());
by_ptr = &filtered_By;
#if (AMREX_SPACEDIM == 3)
// Filter Ey
- filtered_Ey.resize(amrex::convert(tbox,WarpX::Ey_nodal_flag));
+ filtered_Ey.resize(amrex::convert(tbox,Ey.box().ixType()));
eyeli = filtered_Ey.elixir();
nci_godfrey_filter_exeybz[lev]->ApplyStencil(filtered_Ey, Ey, filtered_Ey.box());
ey_ptr = &filtered_Ey;
// Filter Bx
- filtered_Bx.resize(amrex::convert(tbox,WarpX::Bx_nodal_flag));
+ filtered_Bx.resize(amrex::convert(tbox,Bx.box().ixType()));
bxeli = filtered_Bx.elixir();
nci_godfrey_filter_bxbyez[lev]->ApplyStencil(filtered_Bx, Bx, filtered_Bx.box());
bx_ptr = &filtered_Bx;
// Filter Bz
- filtered_Bz.resize(amrex::convert(tbox,WarpX::Bz_nodal_flag));
+ filtered_Bz.resize(amrex::convert(tbox,Bz.box().ixType()));
bzeli = filtered_Bz.elixir();
nci_godfrey_filter_exeybz[lev]->ApplyStencil(filtered_Bz, Bz, filtered_Bz.box());
bz_ptr = &filtered_Bz;