Open oshapoval opened 2 years ago
Here is the comparison between nodal
and hybrid
PSATD for the same two particle test with domain decomposition along x
or z
(2 grids of size 64x128
or 128x64
, respectively). Only hybrid
with domain decomposition along z
does not seem to have asymmetry issues in this case.
I found an even simpler case in which the problem shows up: the emission of a laser by an antenna: Here is the input script: inputs.txt
Here is the plot of E[:, :] - E[:, ::-1]
at iteration 100
As discussed on Slack, this might be related to the issue that we tried to address with #1839 in the past. If confirmed, I can try to open a new PR to implement that change from fully nodal to fully cell-centered.
To be precise, this is the type of operations that most likely break the symmetry in the nodal case: https://github.com/ECP-WarpX/WarpX/blob/ca1b886ecb26c8bd20018c4ecfd71a70f11c1d3f/Source/FieldSolver/SpectralSolver/SpectralFieldData.cpp#L247
Tried @EZoni fix on 2 particles test. And it fixes the issue with nodal PSATD even with domain decomposition along x and z.
Two particles test with
nodal
PSATD and no periodic single box (psatd.periodic_single_box_fft = 0
) demonstrates slight asymmetry. The input script and plots ofEz
field and its normalized differenceEz_diff = np.abs(Ez[:,:] - Ez[:,::-1])/np.max(Ez)
are attached below.Tried @RemiLehe suggestions:
FillBoundary
in theSource/Evolve/WarpXEvolve.cpp
=> no changes in the amplitude of Ez_diff;