10 #ifndef IMPACTX_ELEMENTS_DIAGS_OPENPMD_H
11 #define IMPACTX_ELEMENTS_DIAGS_OPENPMD_H
47 unsigned long long &offset,
48 unsigned long long &sum)
const;
67 static constexpr
auto name =
"BeamMonitor";
98 std::vector<std::string>
const & real_soa_names,
99 std::vector<std::string>
const & int_soa_names,
124 PinnedContainer::ParIterType & pti,
125 std::vector<std::string>
const & real_soa_names,
126 std::vector<std::string>
const & int_soa_names,
131 using Thin::operator();
T_ParticleType ParticleType
Definition: ImpactXParticleContainer.H:131
void GetParticleOffsetOfProcessor(const long &numParticles, unsigned long long &offset, unsigned long long &sum) const
Definition: openPMD.cpp:81
std::vector< unsigned long long > m_ParticleSizeAtRank
Definition: openPMD.H:38
unsigned long long m_Total
Definition: openPMD.H:53
ImpactXParticleCounter(ParticleContainer &pc)
Definition: openPMD.cpp:34
int m_MPISize
Definition: openPMD.H:51
int m_MPIRank
Definition: openPMD.H:50
unsigned long GetTotalNumParticles()
Definition: openPMD.H:35
typename ImpactXParticleContainer::ContainerLike< amrex::PinnedArenaAllocator > ParticleContainer
Definition: openPMD.H:30
typename ParticleContainer::ParIterType ParticleIter
Definition: openPMD.H:31
std::vector< unsigned long long > m_ParticleCounterByLevel
Definition: openPMD.H:55
std::vector< unsigned long long > m_ParticleOffsetAtRank
Definition: openPMD.H:37
Definition: DiagnosticOutput.cpp:26
Definition: ReferenceParticle.H:30
std::vector< uint64_t > m_offset
minimum number of digits to iteration number in file name
Definition: openPMD.H:162
typename ImpactXParticleContainer::ParticleType PType
Definition: openPMD.H:68
std::string m_series_name
Definition: openPMD.H:151
int m_step
openPMD::Series; ...
Definition: openPMD.H:154
BeamMonitor(BeamMonitor const &other)=default
void prepare(PinnedContainer &pc, std::vector< std::string > const &real_soa_names, std::vector< std::string > const &int_soa_names, RefPart const &ref_part, int step)
Definition: openPMD.cpp:219
typename ImpactXParticleContainer::ContainerLike< amrex::PinnedArenaAllocator > PinnedContainer
Definition: openPMD.H:69
BeamMonitor(BeamMonitor &&other)=default
std::any m_series
...
Definition: openPMD.H:153
BeamMonitor & operator=(BeamMonitor const &other)=default
int m_file_min_digits
...
Definition: openPMD.H:156
std::string series_name() const
Definition: openPMD.H:137
static std::map< std::string, std::any > m_unique_series
Definition: openPMD.H:143
void finalize()
Definition: openPMD.cpp:139
void operator()(ImpactXParticleContainer &pc, int step)
Definition: openPMD.cpp:302
static constexpr auto name
Definition: openPMD.H:67
BeamMonitor(std::string series_name, std::string backend="default", std::string encoding="g")
Definition: openPMD.cpp:154
std::string m_OpenPMDFileType
...
Definition: openPMD.H:152