diff options
author | 2021-08-26 13:03:40 -0700 | |
---|---|---|
committer | 2021-08-26 13:03:40 -0700 | |
commit | 71fbd848580b1d249a4c6dc7f3bb1b253d631b87 (patch) | |
tree | 778fd6ff5c033b833a0e0100abaa11347405cf05 /Source/Python/WarpXWrappers.cpp | |
parent | df4504de42360074b9cfdcef8c03d248459c047e (diff) | |
download | WarpX-71fbd848580b1d249a4c6dc7f3bb1b253d631b87.tar.gz WarpX-71fbd848580b1d249a4c6dc7f3bb1b253d631b87.tar.zst WarpX-71fbd848580b1d249a4c6dc7f3bb1b253d631b87.zip |
Improvement in electrostic field solve when using EB & a small refactoring of the Electrostatic solver (#2143)
* refactored parts of the electrostatic solver to allow an outside Poisson solver to be installed
* added callback to install a Poisson solver that can be used instead of the MLMG solver
* added call to the poissonsolver callback if one is installed and updated ElectrostaticSolver.cpp to calculate the electric field directly in amrex if EBs are used
* fixed issue causing ElectrostaticSphereEB test to crash
* fixed the logic for when to call computeE
* added function to allow charge density to be deposited in rho_fp from outside WarpX
* fixed inconsistency between labframe and relativistic electrostatic simulation setup
* fixed typo
* fixed issue that caused ElectrostaticSphere test to fail and removed unnecessary call to multiply E_y by -1 when doing a 2d simulation
* revert edit to error handling string
* changes requested during PR review
* additional change requested during PR review
* fixed typo
* revert unnecessary changes
Diffstat (limited to 'Source/Python/WarpXWrappers.cpp')
-rw-r--r-- | Source/Python/WarpXWrappers.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Source/Python/WarpXWrappers.cpp b/Source/Python/WarpXWrappers.cpp index 24ee25dcf..1450011f9 100644 --- a/Source/Python/WarpXWrappers.cpp +++ b/Source/Python/WarpXWrappers.cpp @@ -181,6 +181,10 @@ extern "C" { warpx_py_beforeEsolve = callback; } + void warpx_set_callback_py_poissonsolver (WARPX_CALLBACK_PY_FUNC_0 callback) + { + warpx_py_poissonsolver = callback; + } void warpx_set_callback_py_afterEsolve (WARPX_CALLBACK_PY_FUNC_0 callback) { warpx_py_afterEsolve = callback; |