Hipace
|
This class holds data for all diagnostics. More...
#include <Diagnostic.H>
Public Member Functions | |
Diagnostic (int nlev) | |
Constructor. More... | |
void | Initialize (const int lev, bool do_laser) |
Determine which data to output. More... | |
amrex::Vector< std::string > & | getBeamNames () |
return names of the beams to output More... | |
amrex::Vector< FieldDiagnosticData > & | getFieldData () |
return data for all field diagnostics More... | |
bool | hasAnyFieldOutput (int output_step, int max_step, amrex::Real output_time, amrex::Real max_time) const |
determines if any field diagnostic has any output on in this time step More... | |
bool | hasBeamOutput (int output_step, int max_step, amrex::Real output_time, amrex::Real max_time) const |
determines if any beam diagnostic has any output on in this time step More... | |
bool | hasAnyOutput (int output_step, int max_step, amrex::Real output_time, amrex::Real max_time) const |
determines if any field or beam diagnostic has any output on in this time step More... | |
bool | needsRho () const |
determines if rho is requested as a diagnostic More... | |
bool | needsRhoIndividual () const |
determines if rho for every individual plasma is requested as a diagnostic More... | |
void | TrimIOBox (int slice_dir, amrex::Box &domain_3d, amrex::RealBox &rbox_3d) |
calculate box which possibly was trimmed in case of slice IO More... | |
void | ResizeFDiagFAB (const amrex::Box a_domain, const int lev, amrex::Geometry const &geom, int output_step, int max_step, amrex::Real output_time, amrex::Real max_time) |
resizes the FArrayBox of the diagnostics to the currently calculated box More... | |
Static Public Member Functions | |
static bool | hasFieldOutput (const FieldDiagnosticData &fd, int output_step, int max_step, amrex::Real output_time, amrex::Real max_time) |
determines if a single field diagnostic has any output on in this time step More... | |
Private Attributes | |
amrex::Vector< std::string > | m_output_beam_names |
int | m_beam_output_period = 0 |
amrex::Vector< FieldDiagnosticData > | m_field_data |
bool | m_initialized = false |
This class holds data for all diagnostics.
|
explicit |
Constructor.
|
inline |
return names of the beams to output
|
inline |
return data for all field diagnostics
|
inline |
determines if any field diagnostic has any output on in this time step
[in] | output_step | current step index |
[in] | max_step | last step index |
[in] | output_time | physical time of current step |
[in] | max_time | physical time of last step |
|
inline |
determines if any field or beam diagnostic has any output on in this time step
[in] | output_step | current step index |
[in] | max_step | last step index |
[in] | output_time | physical time of current step |
[in] | max_time | physical time of last step |
|
inline |
determines if any beam diagnostic has any output on in this time step
[in] | output_step | current step index |
[in] | max_step | last step index |
[in] | output_time | physical time of current step |
[in] | max_time | physical time of last step |
|
inlinestatic |
determines if a single field diagnostic has any output on in this time step
[in] | fd | field diagnostic |
[in] | output_step | current step index |
[in] | max_step | last step index |
[in] | output_time | physical time of current step |
[in] | max_time | physical time of last step |
void Diagnostic::Initialize | ( | const int | lev, |
bool | do_laser | ||
) |
Determine which data to output.
bool Diagnostic::needsRho | ( | ) | const |
determines if rho is requested as a diagnostic
bool Diagnostic::needsRhoIndividual | ( | ) | const |
determines if rho for every individual plasma is requested as a diagnostic
void Diagnostic::ResizeFDiagFAB | ( | const amrex::Box | a_domain, |
const int | lev, | ||
amrex::Geometry const & | geom, | ||
int | output_step, | ||
int | max_step, | ||
amrex::Real | output_time, | ||
amrex::Real | max_time | ||
) |
resizes the FArrayBox of the diagnostics to the currently calculated box
[in] | a_domain | box to which the Geometry of the diagnostics will be resized to |
[in] | lev | MR level |
[in] | geom | geometry of the full simulation domain |
[in] | output_step | current step index |
[in] | max_step | last step index |
[in] | output_time | physical time of current step |
[in] | max_time | physical time of last step |
void Diagnostic::TrimIOBox | ( | int | slice_dir, |
amrex::Box & | domain_3d, | ||
amrex::RealBox & | rbox_3d | ||
) |
calculate box which possibly was trimmed in case of slice IO
[in] | slice_dir | slicing direction |
[in,out] | domain_3d | domain box to be possibly trimmed to a slice box |
[in,out] | rbox_3d | real box to be possibly trimmed to a slice box |
|
private |
Number of iterations between consecutive output dumps. Default is 0, meaning no output
|
private |
individual field diag data
|
private |
if this object is fully initialized
|
private |
Component names to Write to output file