OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
AmrYtWriter Class Reference

#include <AmrYtWriter.h>

Inheritance diagram for AmrYtWriter:
Collaboration diagram for AmrYtWriter:

Public Member Functions

 AmrYtWriter (int step, int bin=0)
void writeFields (const amr::AmrScalarFieldContainer_t &rho, const amr::AmrScalarFieldContainer_t &phi, const amr::AmrVectorFieldContainer_t &efield, const amr::AmrIntArray_t &refRatio, const amr::AmrGeomContainer_t &geom, const int &nLevel, const double &time, const double &scale)
void writeBunch (const AmrPartBunch *bunch_p, const double &time, const double &gamma)

Private Member Functions

void writeParticles_m (int level, std::ofstream &ofs, int fnum, amrex::Vector< int > &which, amrex::Vector< int > &count, amrex::Vector< long > &where, const AmrPartBunch *bunch_p, const double gamma) const

Private Attributes

std::string dir_m
 directory where to write files
std::vector< std::string > intData_m
 integer bunch data
std::vector< std::string > realData_m
 real bunch data

Detailed Description

Definition at line 32 of file AmrYtWriter.h.

Constructor & Destructor Documentation

◆ AmrYtWriter()

AmrYtWriter::AmrYtWriter ( int step,
int bin = 0 )
explicit
Parameters
stepwe write
binenergy bin we write (multi-bunch simulation)

Definition at line 40 of file AmrYtWriter.cpp.

References IpplInfo::Comm, dir_m, OpalData::getAuxiliaryOutputDirectory(), OpalData::getInputBasename(), OpalData::getInstance(), intData_m, IpplInfo::myNode(), and realData_m.

Here is the call graph for this function:

Member Function Documentation

◆ writeBunch()

void AmrYtWriter::writeBunch ( const AmrPartBunch * bunch_p,
const double & time,
const double & scale )
virtual
Parameters
bunch_p
time
scaleused for mapping

Implements AbstractAmrWriter.

Definition at line 297 of file AmrYtWriter.cpp.

References allreduce(), IpplInfo::Comm, dir_m, BoxLibLayout< T, Dim >::finestLevel(), AmrParticleBase< PLayout >::getAmrLayout(), AmrPartBunch::getAmrParticleBase(), PartBunchBase< T, Dim >::getLayout(), AmrParticleBase< PLayout >::getLocalNumPerLevel(), PartBunchBase< T, Dim >::getTotalNum(), intData_m, IpplInfo::myNode(), realData_m, where(), and writeParticles_m().

Referenced by AmrBoxLib::computeSelfFields_cycl(), and AmrBoxLib::computeSelfFields_cycl().

Here is the call graph for this function:

◆ writeFields()

void AmrYtWriter::writeFields ( const amr::AmrScalarFieldContainer_t & rho,
const amr::AmrScalarFieldContainer_t & phi,
const amr::AmrVectorFieldContainer_t & efield,
const amr::AmrIntArray_t & refRatio,
const amr::AmrGeomContainer_t & geom,
const int & nLevel,
const double & time,
const double & scale )
virtual

Write yt files to the simulation subdirectory data/amr/yt. The data can be visualized using the python script pyOPALTools/amrPlots/visualize.py. Use the help to find out how to call the script.

Implements AbstractAmrWriter.

Definition at line 93 of file AmrYtWriter.cpp.

References IpplInfo::Comm, dir_m, and IpplInfo::myNode().

Referenced by AmrBoxLib::computeSelfFields_cycl(), and AmrBoxLib::computeSelfFields_cycl().

Here is the call graph for this function:

◆ writeParticles_m()

void AmrYtWriter::writeParticles_m ( int level,
std::ofstream & ofs,
int fnum,
amrex::Vector< int > & which,
amrex::Vector< int > & count,
amrex::Vector< long > & where,
const AmrPartBunch * bunch_p,
const double gamma ) const
private

Member Data Documentation

◆ dir_m

std::string AmrYtWriter::dir_m
private

directory where to write files

Definition at line 84 of file AmrYtWriter.h.

Referenced by AmrYtWriter(), writeBunch(), and writeFields().

◆ intData_m

std::vector<std::string> AmrYtWriter::intData_m
private

integer bunch data

Definition at line 85 of file AmrYtWriter.h.

Referenced by AmrYtWriter(), writeBunch(), and writeParticles_m().

◆ realData_m

std::vector<std::string> AmrYtWriter::realData_m
private

real bunch data

Definition at line 86 of file AmrYtWriter.h.

Referenced by AmrYtWriter(), writeBunch(), and writeParticles_m().


The documentation for this class was generated from the following files: