OPALX (Object Oriented Parallel Accelerator Library for Exascal) master (dc2a29eed580)
OPALX
Loading...
Searching...
No Matches
H5Writer Class Reference

#include <H5Writer.h>

Collaboration diagram for H5Writer:
Collaboration graph

Public Member Functions

 H5Writer (H5PartWrapper *h5wrapper, bool restart)
 
void close ()
 
void changeH5Wrapper (H5PartWrapper *h5wrapper)
 
void storeCavityInformation ()
 
double getLastPosition ()
 
void writePhaseSpace (PartBunch_t &beam, Vector_t< double, 3 > FDext[], size_t particleContainerIndex=0)
 Dumps Phase Space to H5 file.
 
int writePhaseSpace (PartBunch_t &beam, Vector_t< double, 3 > FDext[], double E, double refPr, double refPt, double refPz, double refR, double refTheta, double refZ, double azimuth, double elevation, bool local, size_t particleContainerIndex=0)
 Dumps phase space to H5 file in OPAL cyclotron calculation.
 

Private Attributes

IpplTimings::TimerRef H5PartTimer_m
 Timer to track particle data/H5 file write time.
 
H5PartWrapperh5wrapper_m
 
int H5call_m
 Current record, or time step, of H5 file.
 

Detailed Description

Definition at line 25 of file H5Writer.h.

Constructor & Destructor Documentation

◆ H5Writer()

H5Writer::H5Writer ( H5PartWrapper h5wrapper,
bool  restart 
)

Definition at line 20 of file H5Writer.cpp.

References H5PartWrapper::close(), and H5PartWrapper::writeHeader().

Here is the call graph for this function:

Member Function Documentation

◆ changeH5Wrapper()

void H5Writer::changeH5Wrapper ( H5PartWrapper h5wrapper)
inline

Definition at line 83 of file H5Writer.h.

References h5wrapper_m.

◆ close()

void H5Writer::close ( )
inline

Definition at line 81 of file H5Writer.h.

References H5PartWrapper::close(), and h5wrapper_m.

Here is the call graph for this function:

◆ getLastPosition()

double H5Writer::getLastPosition ( )
inline

Definition at line 87 of file H5Writer.h.

References H5PartWrapper::getLastPosition(), and h5wrapper_m.

Here is the call graph for this function:

◆ storeCavityInformation()

void H5Writer::storeCavityInformation ( )
inline

Definition at line 85 of file H5Writer.h.

References h5wrapper_m, and H5PartWrapper::storeCavityInformation().

Here is the call graph for this function:

◆ writePhaseSpace() [1/2]

int H5Writer::writePhaseSpace ( PartBunch_t beam,
Vector_t< double, 3 >  FDext[],
double  E,
double  refPr,
double  refPt,
double  refPz,
double  refR,
double  refTheta,
double  refZ,
double  azimuth,
double  elevation,
bool  local,
size_t  particleContainerIndex = 0 
)

Dumps phase space to H5 file in OPAL cyclotron calculation.

Parameters
beamThe beam.
FDextThe external E and B field for the head, reference and tail particles. The vector array has the following layout:
  • FDext[0] = B at head particle location (in x, y and z).
  • FDext[1] = E at head particle location (in x, y and z).
  • FDext[2] = B at reference particle location (in x, y and z).
  • FDext[3] = E at reference particle location (in x, y and z).
  • FDext[4] = B at tail particle location (in x, y, and z).
  • FDext[5] = E at tail particle location (in x, y, and z).
Eaverage energy (MeB)
Returns
Returns the number of the time step just written.

Definition at line 40 of file H5Writer.cpp.

References H5call_m, H5PartTimer_m, h5wrapper_m, and H5PartWrapper::writeStep().

Here is the call graph for this function:

◆ writePhaseSpace() [2/2]

void H5Writer::writePhaseSpace ( PartBunch_t beam,
Vector_t< double, 3 >  FDext[],
size_t  particleContainerIndex = 0 
)

Dumps Phase Space to H5 file.

Parameters
beamThe beam.
FDextThe external E and B field for the head, reference and tail particles. The vector array has the following layout:
  • FDext[0] = B at head particle location (in x, y and z).
  • FDext[1] = E at head particle location (in x, y and z).
  • FDext[2] = B at reference particle location (in x, y and z).
  • FDext[3] = E at reference particle location (in x, y and z).
  • FDext[4] = B at tail particle location (in x, y, and z).
  • FDext[5] = E at tail particle location (in x, y, and z).

Definition at line 28 of file H5Writer.cpp.

References H5PartTimer_m, h5wrapper_m, and H5PartWrapper::writeStep().

Here is the call graph for this function:

Member Data Documentation

◆ H5call_m

int H5Writer::H5call_m
private

Current record, or time step, of H5 file.

Definition at line 78 of file H5Writer.h.

Referenced by writePhaseSpace().

◆ H5PartTimer_m

IpplTimings::TimerRef H5Writer::H5PartTimer_m
private

Timer to track particle data/H5 file write time.

Definition at line 73 of file H5Writer.h.

Referenced by writePhaseSpace(), and writePhaseSpace().

◆ h5wrapper_m

H5PartWrapper* H5Writer::h5wrapper_m
private

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