WarpX
|
#include <FieldProbe.H>
Public Member Functions | |
FieldProbe (const std::string &rd_name) | |
void | InitData () final |
void | LoadBalance () final |
void | ComputeDiags (int step) final |
![]() | |
ReducedDiags (const std::string &rd_name) | |
virtual | ~ReducedDiags ()=default |
ReducedDiags (const ReducedDiags &)=default | |
ReducedDiags & | operator= (const ReducedDiags &)=default |
ReducedDiags (ReducedDiags &&)=default | |
ReducedDiags & | operator= (ReducedDiags &&)=default |
void | BackwardCompatibility () const |
Static Public Attributes | |
static const int | noutputs = 11 |
noutputs is 11 for particle id + (x, y, z, Ex, Ey, Ez, Bx, By, Bz, S) More... | |
Private Member Functions | |
void | WriteToFile (int step) const override |
bool | ProbeInDomain () const |
void | normalize (amrex::Real &AMREX_RESTRICT x, amrex::Real &AMREX_RESTRICT y, amrex::Real &AMREX_RESTRICT z) |
Private Attributes | |
amrex::Real | x_probe = 0. |
amrex::Real | y_probe = 0. |
amrex::Real | x1_probe = 0. |
amrex::Real | y1_probe = 0. |
amrex::Real | target_normal_x = 0. |
amrex::Real | target_normal_y = 1. |
amrex::Real | target_normal_z = 0. |
amrex::Real | target_up_x = 0. |
amrex::Real | target_up_y = 0. |
amrex::Real | target_up_z = 1. |
amrex::Real | z_probe |
amrex::Real | z1_probe |
amrex::Real | detector_radius |
long | m_valid_particles {0} |
counts number of particles for all MPI ranks More... | |
int | m_last_compute_step = 0 |
remember the last time More... | |
DetectorGeometry | m_probe_geometry = DetectorGeometry::Point |
determines geometry of detector point distribution More... | |
int | m_resolution = 0 |
determines number of particles places for non-point geometries More... | |
amrex::Vector< amrex::Real > | m_data |
Empty vector for to which data is pushed. More... | |
amrex::Vector< amrex::Real > | m_data_out |
Empty array to be used by IOProcessor node to store and output data. More... | |
FieldProbeParticleContainer | m_probe |
this is the particle container in which probe particles are stored More... | |
bool | m_field_probe_integrate = false |
if true, integrate values over time instead of probing instantaneous values More... | |
int | interp_order = 1 |
particle shape used for field gather More... | |
bool | do_moving_window_FP = false |
Judges whether to follow a moving window. More... | |
Additional Inherited Members | |
![]() | |
std::string | m_path = "./diags/reducedfiles/" |
output path (default) More... | |
std::string | m_extension = "txt" |
output extension (default) More... | |
std::string | m_rd_name |
diags name More... | |
utils::parser::IntervalsParser | m_intervals |
output intervals More... | |
bool | m_write_header = false |
check if header should be written More... | |
std::string | m_sep = " " |
separator in the output file More... | |
int | m_precision = 14 |
precision for data in the output file More... | |
std::vector< amrex::Real > | m_data |
output data More... | |
This class mainly contains a function that computes the value of each component of the EM field at a given point
FieldProbe::FieldProbe | ( | const std::string & | rd_name | ) |
constructor
[in] | rd_name | reduced diags names |
|
finalvirtual |
This function computes the value of Ex, Ey, Ez, Bx, By, Bz and at a given point
[in] | step | current time step |
Implements ReducedDiags.
|
finalvirtual |
This function assins test/data particles to constructed environemnt
Reimplemented from ReducedDiags.
|
finalvirtual |
Redistribute parallel data structures during load balance
Reimplemented from ReducedDiags.
|
inlineprivate |
Simple utility function to normalize the components of a "vector"
|
private |
Check if the probe is in the simulation domain boundary
|
overrideprivatevirtual |
Built-in function in ReducedDiags to write out test data
Reimplemented from ReducedDiags.
|
private |
|
private |
Judges whether to follow a moving window.
|
private |
particle shape used for field gather
|
private |
Empty vector for to which data is pushed.
|
private |
Empty array to be used by IOProcessor node to store and output data.
|
private |
if true, integrate values over time instead of probing instantaneous values
|
private |
remember the last time
|
private |
this is the particle container in which probe particles are stored
|
private |
determines geometry of detector point distribution
|
private |
determines number of particles places for non-point geometries
|
private |
counts number of particles for all MPI ranks
|
static |
noutputs is 11 for particle id + (x, y, z, Ex, Ey, Ez, Bx, By, Bz, S)
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |