|
WarpX
|
#include <FullDiagnostics.H>
Public Types | |
| enum struct | TimeAverageType { None , Static , Dynamic } |
Public Member Functions | |
| FullDiagnostics (int i, const std::string &name, DiagTypes diag_type) | |
| Public Member Functions inherited from Diagnostics | |
| Diagnostics (int i, std::string name, DiagTypes diag_type) | |
| virtual | ~Diagnostics () |
| Diagnostics (Diagnostics const &)=delete | |
| Diagnostics & | operator= (Diagnostics const &)=delete |
| Diagnostics (Diagnostics &&)=default | |
| Diagnostics & | operator= (Diagnostics &&)=default |
| void | ComputeAndPack () |
| void | InitData (const MultiParticleContainer &mpc) |
| void | InitDataBeforeRestart () |
| void | InitDataAfterRestart (const MultiParticleContainer &mpc) |
| virtual void | InitializeParticleFunctors () |
| void | NewIteration () |
| void | FilterComputePackFlush (int step, bool force_flush=false) |
| bool | DoDumpLastTimestep () const |
| int | getnumbuffers () const |
| virtual amrex::Real | gettlab (int i_buffer) |
| virtual void | settlab (int i_buffer, amrex::Real tlab) |
| virtual int | get_buffer_k_index_hi (int i_buffer) |
| virtual void | set_buffer_k_index_hi (int i_buffer, int kindex) |
| virtual amrex::Real | get_snapshot_domain_lo (int i_buffer, int idim) |
| virtual amrex::Real | get_snapshot_domain_hi (int i_buffer, int idim) |
| void | setSnapshotDomainLo (int i_buffer, int idim, amrex::Real domain_lab_lo) |
| void | setSnapshotDomainHi (int i_buffer, int idim, amrex::Real domain_lab_hi) |
| virtual int | get_flush_counter (int i_buffer) |
| virtual void | set_flush_counter (int i_buffer, int flush_counter) |
| virtual int | get_last_valid_Zslice (int i_buffer) |
| virtual void | set_last_valid_Zslice (int i_buffer, int last_valid_Zslice) |
| virtual int | get_snapshot_full_flag (int i_buffer) |
| virtual void | set_snapshot_full (int i_buffer, int snapshot_full) |
Private Member Functions | |
| void | ReadParameters () |
| void | Flush (int i_buffer, bool) override |
| void | FlushRaw () |
| void | DerivedInitData () override |
| bool | DoComputeAndPack (int step, bool force_flush=false) override |
| bool | DoDump (int step, int i_buffer, bool force_flush=false) override |
| void | AddRZModesToOutputNames (const std::string &field, int ncomp) |
| void | InitializeBufferData (int i_buffer, int lev, bool restart=false) override |
| void | InitializeFieldFunctorsRZopenPMD (int lev) override |
| void | AddRZModesToDiags (int lev) |
| void | InitializeFieldFunctors (int lev) override |
| void | InitializeParticleBuffer (const MultiParticleContainer &mpc) override |
| void | PrepareFieldDataForOutput () override |
| void | PrepareParticleDataForOutput () override |
| void | MovingWindowAndGalileanDomainShift (int step) override |
| void | BackwardCompatibility () |
Private Attributes | |
| ablastr::utils::text::IntervalsParser | m_intervals |
| bool | m_plot_raw_fields = false |
| bool | m_plot_raw_fields_guards = false |
| bool | m_dump_rz_modes = false |
| bool | m_solver_deposits_current = true |
| TimeAverageType | m_time_average_mode = TimeAverageType::None |
| int | m_average_period_steps = -1 |
| amrex::Real | m_average_period_time = -1.0 |
| int | m_average_start_step = -1 |
|
strong |
Type of time averaging for diagnostics (fields only) None corresponds to instantaneous diags Static corresponds to a fixed starting step for averaging, will average until the end, and dump out intermediate average results Dynamic corresponds to a moving period for averaging where the start step is as many steps before the output interval as the averaging period is long.
| Enumerator | |
|---|---|
| None | |
| Static | |
| Dynamic | |
| FullDiagnostics::FullDiagnostics | ( | int | i, |
| const std::string & | name, | ||
| DiagTypes | diag_type ) |
|
private |
Append m_all_field_functors[lev] with all modes of all components of E B and j and add name to varnames.
| [in] | lev | level on which source multifabs are defined. |
|
private |
Append varnames with names for all modes of a field
| [in] | field | field name (includes component, e.g., Er) |
| [in] | ncomp | number of components (modes, real and imag) |
|
private |
This function queries deprecated input parameters and abort the run if one of them is specified.
|
overrideprivatevirtual |
Initialize Data required to compute TimeAveraged diagnostics
Reimplemented from Diagnostics.
|
overrideprivatevirtual |
whether to compute and pack cell-centered data in m_mf_output
| [in] | step | current time step |
| [in] | force_flush | if true, return true for any step since output must be computed in this case |
Implements Diagnostics.
|
overrideprivatevirtual |
whether to flush at this time step
| [in] | step | current time step |
| [in] | i_buffer | index of a back-transformed snapshot |
| [in] | force_flush | if true, return true for any step |
Implements Diagnostics.
|
overrideprivatevirtual |
Flush m_mf_output or m_sum_mf_output and particles to file for the i^th buffer
Implements Diagnostics.
|
private |
Flush raw data
|
overrideprivatevirtual |
Define the cell-centered multifab m_mf_output depending on user-defined lo and hi and coarsening ratio. This MultiFab may have a different BoxArray and DistributionMap than field MultiFabs in the simulation.
| [in] | i_buffer | index of a back-transformed snapshot |
| [in] | lev | level on which source multifabs are defined |
| [in] | restart | whether this is called upon restarting a previous simulation |
Implements Diagnostics.
|
overrideprivatevirtual |
Initialize functors that store pointers to the fields requested by the user.
| [in] | lev | level on which the vector of unique_ptrs to field functors is initialized. |
Implements Diagnostics.
|
overrideprivatevirtual |
Initialize functors that store pointers to the RZ fields requested by the user.
| [in] | lev | level on which the vector of unique_ptrs to field functors is initialized. |
Reimplemented from Diagnostics.
|
overrideprivatevirtual |
This function initialized particle buffers (not implemented in diagnostics, yet)
| [in] | mpc | a constant reference to the multi-particle container. |
Implements Diagnostics.
|
overrideprivatevirtual |
Update the physical extent of the diagnostic domain for moving window and galilean shift simulations
| [in] | step | current time step |
Reimplemented from Diagnostics.
|
overrideprivatevirtual |
Prepare field data to be used for diagnostics
Reimplemented from Diagnostics.
|
inlineoverrideprivatevirtual |
Prepare particle data to be used for diagnostics.
Reimplemented from Diagnostics.
|
private |
Read user-requested parameters for full diagnostics
Whether the diagnostics are averaging data over time or not Valid options are "fixed_start" and "dynamic_start".
|
private |
Period to average fields over: in steps
|
private |
Period to average fields over: in seconds
|
private |
Time step to start averaging
|
private |
Whether to dump the RZ modes
|
private |
Determines timesteps at which full diagnostics are written to file
|
private |
Whether to plot raw (i.e., NOT cell-centered) fields
|
private |
Whether to plot guard cells of raw fields
|
private |
Whether the field solver deposits current density, if not it will be done before writing the diagnostic.
|
private |
Whether the diagnostics are averaging data over time or not