aboutsummaryrefslogtreecommitdiff
path: root/Source/Utils/WarpXMovingWindow.cpp
diff options
context:
space:
mode:
authorGravatar Weiqun Zhang <WeiqunZhang@lbl.gov> 2021-07-13 23:04:31 -0700
committerGravatar GitHub <noreply@github.com> 2021-07-13 23:04:31 -0700
commitffb3bb8e0ac21c2489906c1cf51d3f4dae235542 (patch)
tree8632faa062e3e76bfec4cd85671a56514b18b444 /Source/Utils/WarpXMovingWindow.cpp
parent40e36e1860015214601d618c9ab847f623328867 (diff)
downloadWarpX-ffb3bb8e0ac21c2489906c1cf51d3f4dae235542.tar.gz
WarpX-ffb3bb8e0ac21c2489906c1cf51d3f4dae235542.tar.zst
WarpX-ffb3bb8e0ac21c2489906c1cf51d3f4dae235542.zip
amrex::Parser (#2063)
* amrex::Parser Replace WarpXParser with amrex::Parser. Roundoff errors are expected because of additional optimization in amrex::Parser. * Reset the Langmuir_multi_psatd_single_precision benchmark due to change in single precision parser * enable Intel oneAPI CI again * Update Source/EmbeddedBoundary/WarpXInitEB.cpp * Replace hard-coded number in ParticleDiag with a constexpr
Diffstat (limited to 'Source/Utils/WarpXMovingWindow.cpp')
-rw-r--r--Source/Utils/WarpXMovingWindow.cpp20
1 files changed, 10 insertions, 10 deletions
diff --git a/Source/Utils/WarpXMovingWindow.cpp b/Source/Utils/WarpXMovingWindow.cpp
index e179ea870..9b270469c 100644
--- a/Source/Utils/WarpXMovingWindow.cpp
+++ b/Source/Utils/WarpXMovingWindow.cpp
@@ -9,7 +9,6 @@
#include "WarpX.H"
#include "BoundaryConditions/PML.H"
-#include "Parser/WarpXParserWrapper.H"
#include "Particles/MultiParticleContainer.H"
#include "Utils/WarpXConst.H"
#include "Utils/WarpXProfilerWrapper.H"
@@ -32,6 +31,7 @@
#include <AMReX_IntVect.H>
#include <AMReX_MFIter.H>
#include <AMReX_MultiFab.H>
+#include <AMReX_Parser.H>
#include <AMReX_REAL.H>
#include <AMReX_RealBox.H>
#include <AMReX_SPACE.H>
@@ -147,21 +147,21 @@ WarpX::MoveWindow (const int step, bool move_j)
// Shift each component of vector fields (E, B, j)
for (int dim = 0; dim < 3; ++dim) {
// Fine grid
- HostDeviceParser<3> Bfield_parser;
- HostDeviceParser<3> Efield_parser;
+ ParserExecutor<3> Bfield_parser;
+ ParserExecutor<3> Efield_parser;
bool use_Bparser = false;
bool use_Eparser = false;
if (B_ext_grid_s == "parse_b_ext_grid_function") {
use_Bparser = true;
- if (dim == 0) Bfield_parser = getParser(Bxfield_parser);
- if (dim == 1) Bfield_parser = getParser(Byfield_parser);
- if (dim == 2) Bfield_parser = getParser(Bzfield_parser);
+ if (dim == 0) Bfield_parser = Bxfield_parser->compile<3>();
+ if (dim == 1) Bfield_parser = Byfield_parser->compile<3>();
+ if (dim == 2) Bfield_parser = Bzfield_parser->compile<3>();
}
if (E_ext_grid_s == "parse_e_ext_grid_function") {
use_Eparser = true;
- if (dim == 0) Efield_parser = getParser(Exfield_parser);
- if (dim == 1) Efield_parser = getParser(Eyfield_parser);
- if (dim == 2) Efield_parser = getParser(Ezfield_parser);
+ if (dim == 0) Efield_parser = Exfield_parser->compile<3>();
+ if (dim == 1) Efield_parser = Eyfield_parser->compile<3>();
+ if (dim == 2) Efield_parser = Ezfield_parser->compile<3>();
}
shiftMF(*Bfield_fp[lev][dim], geom[lev], num_shift, dir, B_external_grid[dim], use_Bparser, Bfield_parser);
shiftMF(*Efield_fp[lev][dim], geom[lev], num_shift, dir, E_external_grid[dim], use_Eparser, Efield_parser);
@@ -277,7 +277,7 @@ WarpX::MoveWindow (const int step, bool move_j)
void
WarpX::shiftMF (MultiFab& mf, const Geometry& geom, int num_shift, int dir,
amrex::Real external_field, bool useparser,
- HostDeviceParser<3> const& field_parser)
+ ParserExecutor<3> const& field_parser)
{
WARPX_PROFILE("WarpX::shiftMF()");
const BoxArray& ba = mf.boxArray();