|
WarpX
|
LabFrameSnapShot stores the back-transformed lab-frame metadata corresponding to a single time snapshot of the full domain. The snapshot data is written to disk in the directory lab_frame_data/snapshots/. zmin_lab, zmax_lab, and t_lab are all constant for a given snapshot. current_z_lab and current_z_boost for each snapshot are updated as the simulation time in the boosted frame advances. More...
#include <BackTransformedDiagnostic.H>
Public Member Functions | |
| LabFrameSnapShot (amrex::Real t_lab_in, amrex::Real t_boost, amrex::Real inv_gamma_boost_in, amrex::Real inv_beta_boost_in, amrex::Real dz_lab_in, amrex::RealBox prob_domain_lab, amrex::IntVect prob_ncells_lab, int ncomp_to_dump, std::vector< std::string > mesh_field_names, amrex::RealBox diag_domain_lab, amrex::Box diag_box, int file_num_in) | |
| void | AddDataToBuffer (amrex::MultiFab &tmp_slice, int k_lab, amrex::Vector< int > const &map_actual_fields_to_dump) override |
| void | AddPartDataToParticleBuffer (amrex::Vector< WarpXParticleContainer::DiagnosticParticleData > const &tmp_particle_buffer, int nSpeciesBoostedFrame) override |
Public Member Functions inherited from LabFrameDiag | |
| void | updateCurrentZPositions (amrex::Real t_boost, amrex::Real inv_gamma, amrex::Real inv_beta) |
| void | createLabFrameDirectories () |
| void | writeLabFrameHeader () |
| virtual | ~LabFrameDiag ()=default |
Additional Inherited Members | |
Public Attributes inherited from LabFrameDiag | |
| std::string | m_file_name |
| amrex::Real | m_t_lab |
| amrex::RealBox | m_prob_domain_lab_ |
| amrex::IntVect | m_prob_ncells_lab_ |
| amrex::RealBox | m_diag_domain_lab_ |
| amrex::Box | m_buff_box_ |
| amrex::Real | m_current_z_lab |
| amrex::Real | m_current_z_boost |
| amrex::Real | m_inv_gamma_boost_ |
| amrex::Real | m_inv_beta_boost_ |
| amrex::Real | m_dz_lab_ |
| amrex::Real | m_particle_slice_dx_lab_ |
| int | m_ncomp_to_dump_ |
| std::vector< std::string > | m_mesh_field_names_ |
| int | m_file_num |
| int | m_initial_i |
| std::unique_ptr< amrex::MultiFab > | m_data_buffer_ |
| amrex::Vector< WarpXParticleContainer::DiagnosticParticleData > | m_particles_buffer_ |
| int | m_buff_counter_ |
| int | m_num_buffer_ = 256 |
| int | m_max_box_size = 256 |
LabFrameSnapShot stores the back-transformed lab-frame metadata corresponding to a single time snapshot of the full domain. The snapshot data is written to disk in the directory lab_frame_data/snapshots/. zmin_lab, zmax_lab, and t_lab are all constant for a given snapshot. current_z_lab and current_z_boost for each snapshot are updated as the simulation time in the boosted frame advances.
| LabFrameSnapShot::LabFrameSnapShot | ( | amrex::Real | t_lab_in, |
| amrex::Real | t_boost, | ||
| amrex::Real | inv_gamma_boost_in, | ||
| amrex::Real | inv_beta_boost_in, | ||
| amrex::Real | dz_lab_in, | ||
| amrex::RealBox | prob_domain_lab, | ||
| amrex::IntVect | prob_ncells_lab, | ||
| int | ncomp_to_dump, | ||
| std::vector< std::string > | mesh_field_names, | ||
| amrex::RealBox | diag_domain_lab, | ||
| amrex::Box | diag_box, | ||
| int | file_num_in | ||
| ) |
|
overridevirtual |
Back-transformed lab-frame field data is copied from tmp_slice to data_buffer where it is stored. For the full diagnostic, all the data in the MultiFab is copied. For the reduced diagnostic, the data is selectively copied if the extent of the z_lab multifab intersects with the user-defined sub-domain for the reduced diagnostic (i.e., a 1D, 2D, or 3D region of the domain).
Reimplemented from LabFrameDiag.
|
overridevirtual |
Back-transformed lab-frame particles is copied from tmp_particle_buffer to particles_buffer. For the full diagnostic, all the particles are copied, while for the reduced diagnostic, particles are selectively copied if their position in within the user-defined sub-domain +/- 1 cell size width for the reduced slice diagnostic.
Reimplemented from LabFrameDiag.
1.8.13