OPALX (Object Oriented Parallel Accelerator Library for Exascal) MINIorX
OPALX
H5Writer Class Reference

#include <H5Writer.h>

Collaboration diagram for H5Writer:

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[])
 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)
 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(), H5call_m, H5PartTimer_m, h5wrapper_m, and H5PartWrapper::writeHeader().

Here is the call graph for this function:

Member Function Documentation

◆ changeH5Wrapper()

void H5Writer::changeH5Wrapper ( H5PartWrapper * h5wrapper)
inline

Definition at line 84 of file H5Writer.h.

References h5wrapper_m.

◆ close()

void H5Writer::close ( )
inline

Definition at line 80 of file H5Writer.h.

References h5wrapper_m.

◆ getLastPosition()

double H5Writer::getLastPosition ( )
inline

Definition at line 92 of file H5Writer.h.

References h5wrapper_m.

◆ storeCavityInformation()

void H5Writer::storeCavityInformation ( )
inline

Definition at line 88 of file H5Writer.h.

References h5wrapper_m.

◆ writePhaseSpace() [1/2]

void H5Writer::writePhaseSpace ( PartBunch_t * beam,
Vector_t< double, 3 > FDext[] )

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 32 of file H5Writer.cpp.

References H5PartTimer_m, and h5wrapper_m.

◆ writePhaseSpace() [2/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 )

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 47 of file H5Writer.cpp.

References PartBunch< PLayout, T, Dim >::getTotalNum(), H5call_m, H5PartTimer_m, and h5wrapper_m.

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 77 of file H5Writer.h.

Referenced by H5Writer(), and writePhaseSpace().

◆ H5PartTimer_m

IpplTimings::TimerRef H5Writer::H5PartTimer_m
private

Timer to track particle data/H5 file write time.

Definition at line 72 of file H5Writer.h.

Referenced by H5Writer(), writePhaseSpace(), and writePhaseSpace().

◆ h5wrapper_m

H5PartWrapper* H5Writer::h5wrapper_m
private

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