aboutsummaryrefslogtreecommitdiff
path: root/Docs/source/running_cpp/parameters.rst
diff options
context:
space:
mode:
authorGravatar Remi Lehe <remi.lehe@normalesup.org> 2020-01-24 11:03:48 -0800
committerGravatar GitHub <noreply@github.com> 2020-01-24 11:03:48 -0800
commita32b3292967b6b0ee766ad14303c6cd0f2369b04 (patch)
treef271f8104c0cc38784bbbe6cb3f8747d12cc3d32 /Docs/source/running_cpp/parameters.rst
parent50b7e6c7189e98241684212dbae37f85cb43a02f (diff)
parentc5d8298284709dbea9f2c764bf429872933de11c (diff)
downloadWarpX-a32b3292967b6b0ee766ad14303c6cd0f2369b04.tar.gz
WarpX-a32b3292967b6b0ee766ad14303c6cd0f2369b04.tar.zst
WarpX-a32b3292967b6b0ee766ad14303c6cd0f2369b04.zip
Merge pull request #609 from RevathiJambunathan/ParticlesEBParser
Externally applied E/B fields on the particles using parser
Diffstat (limited to 'Docs/source/running_cpp/parameters.rst')
-rw-r--r--Docs/source/running_cpp/parameters.rst51
1 files changed, 47 insertions, 4 deletions
diff --git a/Docs/source/running_cpp/parameters.rst b/Docs/source/running_cpp/parameters.rst
index b2810329a..3cd7af96c 100644
--- a/Docs/source/running_cpp/parameters.rst
+++ b/Docs/source/running_cpp/parameters.rst
@@ -454,10 +454,6 @@ Particle initialization
this process (see "Lookup tables for QED modules" section below).
**Implementation of this feature is in progress. It requires to compile with QED=TRUE**
-* ``warpx.E_external_particle`` & ``warpx.B_external_particle`` (list of `float`) optional (default `0. 0. 0.`)
- Two separate parameters which add a uniform E-field or B-field to each particle
- which is then added to the field values gathered from the grid in the
- PIC cycle.
Laser initialization
--------------------
@@ -732,6 +728,53 @@ Laser initialization
the field solver. In particular, do not use any other boundary condition
than periodic.
+* ``particles.B_ext_particle_init_style`` (string) optional (default is "default")
+ This parameter determines the type of initialization for the external
+ magnetic field that is applied directly to the particles at every timestep.
+ The "default" style sets the external B-field (Bx,By,Bz) to (0.0,0.0,0.0).
+ The string can be set to "constant" if a constant external B-field is applied
+ every timestep. If this parameter is set to "constant", then an additional
+ parameter, namely, ``particles.B_external_particle`` must be specified in
+ the input file.
+ To parse a mathematical function for the external B-field, use the option
+ ``parse_B_ext_particle_function``. This option requires additional parameters
+ in the input file, namely,
+ ``particles.Bx_external_particle_function(x,y,z,t)``,
+ ``particles.By_external_particle_function(x,y,z,t)``,
+ ``particles.Bz_external_particle_function(x,y,z,t)`` to apply the external B-field
+ on the particles. Constants required in the mathematical expression can be set
+ using ``my_constants``. For a two-dimensional simulation, it is assumed that
+ the first and second dimensions are `x` and `z`, respectively, and the
+ value of the `By` component is set to zero.
+ Note that the current implementation of the parser for B-field on particles
+ does not work with RZ and the code will abort with an error message.
+
+* ``particles.E_ext_particle_init_style`` (string) optional (default is "default")
+ This parameter determines the type of initialization for the external
+ electric field that is applied directly to the particles at every timestep.
+ The "default" style set the external E-field (Ex,Ey,Ez) to (0.0,0.0,0.0).
+ The string can be set to "constant" if a cosntant external E-field is to be
+ used in the simulation at every timestep. If this parameter is set to "constant",
+ then an additional parameter, namely, ``particles.E_external_particle`` must be
+ specified in the input file.
+ To parse a mathematical function for the external E-field, use the option
+ ``parse_E_ext_particle_function``. This option requires additional
+ parameters in the input file, namely,
+ ``particles.Ex_external_particle_function(x,y,z,t)``,
+ ``particles.Ey_external_particle_function(x,y,z,t)``,
+ ``particles.Ez_external_particle_function(x,y,z,t)`` to apply the external E-field
+ on the particles. Constants required in the mathematical expression can be set
+ using ``my_constants``. For a two-dimensional simulation, similar to the B-field,
+ it is assumed that the first and second dimensions are `x` and `z`, respectively,
+ and the value of the `Ey` component is set to zero.
+ The current implementation of the parser for the E-field on particles does not work
+ with RZ and the code will abort with an error message.
+
+* ``particles.E_external_particle`` & ``particles.B_external_particle`` (list of `float`) optional (default `0. 0. 0.`)
+ Two separate parameters which add an externally applied uniform E-field or
+ B-field to each particle which is then added to the field values gathered
+ from the grid in the PIC cycle.
+
Collision initialization
------------------------