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

#include <DistributionMoments.h>

Collaboration diagram for DistributionMoments:
Collaboration graph

Public Member Functions

 DistributionMoments ()
 
void setContainerState (std::weak_ptr< BunchStateHandler::ContainerState > containerState)
 
void setEnergyReferenceMass (double referenceMassGeV, bool rescaleToReference=true)
 
bool getRescaleEnergyToReference () const
 
double getEnergyReferenceMassGeV () const
 
void compute (const std::vector< OpalParticle >::const_iterator &, const std::vector< OpalParticle >::const_iterator &)
 
void computeMoments (ippl::ParticleAttrib< Vector_t< double, 3 > >::view_type Rview, ippl::ParticleAttrib< Vector_t< double, 3 > >::view_type Pview, ippl::ParticleAttrib< double >::view_type Mview, size_t Np, size_t Nlocal)
 
void computeMinMaxPosition (ippl::ParticleAttrib< Vector_t< double, 3 > >::view_type Rview, size_t Nlcoal)
 
void computeMeanKineticEnergy ()
 
void computeDebyeLength (ippl::ParticleAttrib< Vector_t< double, 3 > >::view_type Pview, size_t Np, size_t Nlocal, double density)
 
void computePlasmaParameter (double)
 
Vector_t< double, 3 > getMeanPosition () const
 
Vector_t< double, 3 > getStandardDeviationPosition () const
 
Vector_t< double, 3 > getMeanMomentum () const
 
Vector_t< double, 3 > getStandardDeviationMomentum () const
 
Vector_t< double, 3 > getNormalizedEmittance () const
 
Vector_t< double, 3 > getGeometricEmittance () const
 
Vector_t< double, 3 > getStandardDeviationRP () const
 
Vector_t< double, 3 > getHalo () const
 
Vector_t< double, 3 > getMinPosition () const
 
Vector_t< double, 3 > getMaxPosition () const
 
Vector_t< double, 3 > getMaxR () const
 
Vector_t< double, 3 > get68Percentile () const
 
Vector_t< double, 3 > get95Percentile () const
 
Vector_t< double, 3 > get99Percentile () const
 
Vector_t< double, 3 > get99_99Percentile () const
 
Vector_t< double, 3 > getNormalizedEmittance68Percentile () const
 
Vector_t< double, 3 > getNormalizedEmittance95Percentile () const
 
Vector_t< double, 3 > getNormalizedEmittance99Percentile () const
 
Vector_t< double, 3 > getNormalizedEmittance99_99Percentile () const
 
double getMeanTime () const
 
double getStdTime () const
 
double getMeanGamma () const
 
double getMeanGammaZ () const
 
double getMeanKineticEnergy () const
 
double getTemperature () const
 
double getDebyeLength () const
 
double getPlasmaParameter () const
 
double getStdKineticEnergy () const
 
double getDx () const
 
double getDDx () const
 
double getDy () const
 
double getDDy () const
 
Vector_t< double, 6 > getMeans () const
 
Vector_t< double, 6 > getCentroid () const
 
matrix6x6_t getMoments6x6 () const
 
double getTotalCharge () const
 
double getTotalMass () const
 
double getTotalNumParticles () const
 
void computeMeans (ippl::ParticleAttrib< Vector_t< double, 3 > >::view_type Rview, ippl::ParticleAttrib< Vector_t< double, 3 > >::view_type Pview, ippl::ParticleAttrib< double >::view_type Mview, size_t Np, size_t Nlocal)
 

Private Types

using iterator_t = std::vector< Vector_t< double, 2 > >::const_iterator
 

Private Member Functions

bool isParticleExcluded (const OpalParticle &) const
 
template<class InputIt >
void computePercentiles (const InputIt &, const InputIt &)
 
std::pair< double, iterator_tdeterminePercentilesDetail (const iterator_t &begin, const iterator_t &end, const std::vector< int > &globalAccumulatedHistogram, const std::vector< int > &localAccumulatedHistogram, unsigned int dimension, int numRequiredParticles) const
 
double computeNormalizedEmittance (const iterator_t &begin, const iterator_t &end) const
 
void fillMembers (std::vector< double > &)
 
void reset ()
 
void resetPlasmaParameters ()
 

Private Attributes

std::weak_ptr< BunchStateHandler::ContainerStatecontainerState_m
 
Vector_t< double, 3 > meanR_m
 
Vector_t< double, 3 > meanP_m
 
Vector_t< double, 3 > stdR_m
 
Vector_t< double, 3 > stdP_m
 
Vector_t< double, 3 > stdRP_m
 
Vector_t< double, 3 > normalizedEps_m
 
Vector_t< double, 3 > geometricEps_m
 
Vector_t< double, 3 > halo_m
 
Vector_t< double, 3 > maxR_m
 
Vector_t< double, 3 > minR_m
 
Vector_t< double, 3 > sixtyEightPercentile_m
 
Vector_t< double, 3 > normalizedEps68Percentile_m
 
Vector_t< double, 3 > ninetyFivePercentile_m
 
Vector_t< double, 3 > normalizedEps95Percentile_m
 
Vector_t< double, 3 > ninetyNinePercentile_m
 
Vector_t< double, 3 > normalizedEps99Percentile_m
 
Vector_t< double, 3 > ninetyNine_NinetyNinePercentile_m
 
Vector_t< double, 3 > normalizedEps99_99Percentile_m
 
double meanTime_m
 
double stdTime_m
 
double meanKineticEnergy_m
 
double temperature_m
 
double debyeLength_m
 
double plasmaParameter_m
 
double stdKineticEnergy_m
 
double meanGamma_m
 
double meanGammaZ_m
 
bool rescaleToReference_m = false
 
double referenceMassGeV_m = 0.0
 
Vector_t< double, 6 > centroid_m
 
Vector_t< double, 6 > means_m
 
matrix6x6_t moments_m
 
matrix6x6_t notCentMoments_m
 
double totalCharge_m
 
double totalMass_m
 
unsigned int totalNumParticles_m
 

Static Private Attributes

static const double percentileOneSigmaNormalDist_m = std::erf(1 / sqrt(2))
 
static const double percentileTwoSigmasNormalDist_m = std::erf(2 / sqrt(2))
 
static const double percentileThreeSigmasNormalDist_m = std::erf(3 / sqrt(2))
 
static const double percentileFourSigmasNormalDist_m = std::erf(4 / sqrt(2))
 

Detailed Description

Definition at line 39 of file DistributionMoments.h.

Member Typedef Documentation

◆ iterator_t

using DistributionMoments::iterator_t = std::vector<Vector_t<double, 2> >::const_iterator
private

Definition at line 132 of file DistributionMoments.h.

Constructor & Destructor Documentation

◆ DistributionMoments()

DistributionMoments::DistributionMoments ( )

Definition at line 33 of file DistributionMoments.cpp.

References moments_m, notCentMoments_m, reset(), and resetPlasmaParameters().

Here is the call graph for this function:

Member Function Documentation

◆ compute()

void DistributionMoments::compute ( const std::vector< OpalParticle >::const_iterator &  ,
const std::vector< OpalParticle >::const_iterator &   
)

Definition at line 301 of file DistributionMoments.cpp.

◆ computeDebyeLength()

void DistributionMoments::computeDebyeLength ( ippl::ParticleAttrib< Vector_t< double, 3 > >::view_type  Pview,
size_t  Np,
size_t  Nlocal,
double  density 
)

◆ computeMeanKineticEnergy()

void DistributionMoments::computeMeanKineticEnergy ( )

Definition at line 538 of file DistributionMoments.cpp.

◆ computeMeans()

void DistributionMoments::computeMeans ( ippl::ParticleAttrib< Vector_t< double, 3 > >::view_type  Rview,
ippl::ParticleAttrib< Vector_t< double, 3 > >::view_type  Pview,
ippl::ParticleAttrib< double >::view_type  Mview,
size_t  Np,
size_t  Nlocal 
)

Definition at line 43 of file DistributionMoments.cpp.

References centroid_m, SumArray< N >::data, Dim, dot(), Units::GeV2MeV, meanGamma_m, meanGammaZ_m, meanKineticEnergy_m, meanP_m, meanR_m, means_m, referenceMassGeV_m, and rescaleToReference_m.

Referenced by computeMoments().

Here is the call graph for this function:

◆ computeMinMaxPosition()

void DistributionMoments::computeMinMaxPosition ( ippl::ParticleAttrib< Vector_t< double, 3 > >::view_type  Rview,
size_t  Nlcoal 
)

◆ computeMoments()

void DistributionMoments::computeMoments ( ippl::ParticleAttrib< Vector_t< double, 3 > >::view_type  Rview,
ippl::ParticleAttrib< Vector_t< double, 3 > >::view_type  Pview,
ippl::ParticleAttrib< double >::view_type  Mview,
size_t  Np,
size_t  Nlocal 
)

◆ computeNormalizedEmittance()

double DistributionMoments::computeNormalizedEmittance ( const iterator_t begin,
const iterator_t end 
) const
private

Definition at line 494 of file DistributionMoments.cpp.

Referenced by computePercentiles().

◆ computePercentiles()

◆ computePlasmaParameter()

void DistributionMoments::computePlasmaParameter ( double  density)

Definition at line 600 of file DistributionMoments.cpp.

References debyeLength_m, Physics::pi, and plasmaParameter_m.

Referenced by computeDebyeLength().

◆ determinePercentilesDetail()

std::pair< double, DistributionMoments::iterator_t > DistributionMoments::determinePercentilesDetail ( const iterator_t begin,
const iterator_t end,
const std::vector< int > &  globalAccumulatedHistogram,
const std::vector< int > &  localAccumulatedHistogram,
unsigned int  dimension,
int  numRequiredParticles 
) const
private

Computes the percentile and the range of all local particles that are contained therein. In a first step the container globalAccumulatedHistogram is looped through until accumulated histogram value exceeds the required number of particles. The percentile then is between the boundaries of the last histogram bin before the loop stopped. Then all particle coordinates that are between the boundaries of this bin are communicated acros all nodes and sorted. The exact percentile is then determined by counting the n smallest coordinates such that the total number of partiles results is equal to 'numRequiredParticles'. In accordance with matlab (?) the percentile is the midpoint between the last particle within the percentile and tje first particle outside. Finally each node determines which of its particles are contained in the percentile.

To determine the histogram, the coordinates should not be used directly. Instead, the absolute value of the difference between a coordinate and the mean, |x - <x>|, should be used so that the percentile values are similar to the standard deviation.

Parameters
beginbegin of a container containing the one dimensional phase space of all local particles.
endend of the container.
globalAccumulatedHistogramcontainer with partial sum of histogram values of position coordinates summed up across all nodes. The first value should be 0.
localAccumulatedHistogramcontainer with partial sum of histogram values of position coordinates of all local particles. The first value should be 0.
dimensiondimension of the one dimensional phase space.
numRequiredParticlesnumber of particles that are contained in the requested percentile. Is determined by the total number of particles and the percentile.
Returns
: pair of percentile and iterator pointing to the element after the range contained in the percentile.

Definition at line 438 of file DistributionMoments.cpp.

References meanR_m.

Referenced by computePercentiles().

◆ fillMembers()

void DistributionMoments::fillMembers ( std::vector< double > &  )
private

Definition at line 533 of file DistributionMoments.cpp.

◆ get68Percentile()

Vector_t< double, 3 > DistributionMoments::get68Percentile ( ) const
inline

Definition at line 263 of file DistributionMoments.h.

References sixtyEightPercentile_m.

◆ get95Percentile()

Vector_t< double, 3 > DistributionMoments::get95Percentile ( ) const
inline

Definition at line 271 of file DistributionMoments.h.

References ninetyFivePercentile_m.

◆ get99_99Percentile()

Vector_t< double, 3 > DistributionMoments::get99_99Percentile ( ) const
inline

Definition at line 287 of file DistributionMoments.h.

References ninetyNine_NinetyNinePercentile_m.

◆ get99Percentile()

Vector_t< double, 3 > DistributionMoments::get99Percentile ( ) const
inline

Definition at line 279 of file DistributionMoments.h.

References ninetyNinePercentile_m.

◆ getCentroid()

Vector_t< double, 6 > DistributionMoments::getCentroid ( ) const
inline

Definition at line 251 of file DistributionMoments.h.

References centroid_m.

Referenced by ParticleContainer< T, Dim >::getCentroid().

◆ getDDx()

double DistributionMoments::getDDx ( ) const
inline

Definition at line 245 of file DistributionMoments.h.

References moments_m.

Referenced by ParticleContainer< T, Dim >::getDDx(), and TEST_F().

◆ getDDy()

double DistributionMoments::getDDy ( ) const
inline

Definition at line 249 of file DistributionMoments.h.

References moments_m.

Referenced by ParticleContainer< T, Dim >::getDDy(), and TEST_F().

◆ getDebyeLength()

double DistributionMoments::getDebyeLength ( ) const
inline

◆ getDx()

double DistributionMoments::getDx ( ) const
inline

Definition at line 243 of file DistributionMoments.h.

References moments_m.

Referenced by ParticleContainer< T, Dim >::getDx(), and TEST_F().

◆ getDy()

double DistributionMoments::getDy ( ) const
inline

Definition at line 247 of file DistributionMoments.h.

References moments_m.

Referenced by ParticleContainer< T, Dim >::getDy(), and TEST_F().

◆ getEnergyReferenceMassGeV()

double DistributionMoments::getEnergyReferenceMassGeV ( ) const
inline

Definition at line 61 of file DistributionMoments.h.

References referenceMassGeV_m.

◆ getGeometricEmittance()

Vector_t< double, 3 > DistributionMoments::getGeometricEmittance ( ) const
inline

Definition at line 212 of file DistributionMoments.h.

References geometricEps_m.

Referenced by ParticleContainer< T, Dim >::getGeometricEmit(), and TEST_F().

◆ getHalo()

Vector_t< double, 3 > DistributionMoments::getHalo ( ) const
inline

Definition at line 218 of file DistributionMoments.h.

References halo_m.

◆ getMaxPosition()

Vector_t< double, 3 > DistributionMoments::getMaxPosition ( ) const
inline

Definition at line 222 of file DistributionMoments.h.

References maxR_m.

Referenced by ParticleContainer< T, Dim >::getMaxR().

◆ getMaxR()

Vector_t< double, 3 > DistributionMoments::getMaxR ( ) const
inline

Definition at line 295 of file DistributionMoments.h.

References maxR_m, and minR_m.

◆ getMeanGamma()

double DistributionMoments::getMeanGamma ( ) const
inline

Definition at line 228 of file DistributionMoments.h.

References meanGamma_m.

Referenced by TEST_F().

◆ getMeanGammaZ()

double DistributionMoments::getMeanGammaZ ( ) const
inline

Definition at line 230 of file DistributionMoments.h.

References meanGammaZ_m.

Referenced by ParticleContainer< T, Dim >::getMeanGammaZ(), and TEST_F().

◆ getMeanKineticEnergy()

double DistributionMoments::getMeanKineticEnergy ( ) const
inline

◆ getMeanMomentum()

Vector_t< double, 3 > DistributionMoments::getMeanMomentum ( ) const
inline

Definition at line 202 of file DistributionMoments.h.

References meanP_m.

Referenced by ParticleContainer< T, Dim >::getMeanP(), and TEST_F().

◆ getMeanPosition()

Vector_t< double, 3 > DistributionMoments::getMeanPosition ( ) const
inline

Definition at line 196 of file DistributionMoments.h.

References meanR_m.

Referenced by ParticleContainer< T, Dim >::getMeanR(), and TEST_F().

◆ getMeans()

Vector_t< double, 6 > DistributionMoments::getMeans ( ) const
inline

Definition at line 253 of file DistributionMoments.h.

References means_m.

Referenced by ParticleContainer< T, Dim >::getMeans().

◆ getMeanTime()

double DistributionMoments::getMeanTime ( ) const
inline

Definition at line 224 of file DistributionMoments.h.

References meanTime_m.

◆ getMinPosition()

Vector_t< double, 3 > DistributionMoments::getMinPosition ( ) const
inline

Definition at line 220 of file DistributionMoments.h.

References minR_m.

Referenced by ParticleContainer< T, Dim >::getMinR().

◆ getMoments6x6()

matrix6x6_t DistributionMoments::getMoments6x6 ( ) const
inline

Definition at line 255 of file DistributionMoments.h.

References moments_m.

Referenced by ParticleContainer< T, Dim >::getCovMatrix().

◆ getNormalizedEmittance()

Vector_t< double, 3 > DistributionMoments::getNormalizedEmittance ( ) const
inline

Definition at line 208 of file DistributionMoments.h.

References normalizedEps_m.

Referenced by ParticleContainer< T, Dim >::getNormEmit(), and TEST_F().

◆ getNormalizedEmittance68Percentile()

Vector_t< double, 3 > DistributionMoments::getNormalizedEmittance68Percentile ( ) const
inline

Definition at line 267 of file DistributionMoments.h.

References normalizedEps68Percentile_m.

◆ getNormalizedEmittance95Percentile()

Vector_t< double, 3 > DistributionMoments::getNormalizedEmittance95Percentile ( ) const
inline

Definition at line 275 of file DistributionMoments.h.

References normalizedEps95Percentile_m.

◆ getNormalizedEmittance99_99Percentile()

Vector_t< double, 3 > DistributionMoments::getNormalizedEmittance99_99Percentile ( ) const
inline

Definition at line 291 of file DistributionMoments.h.

References normalizedEps99_99Percentile_m.

◆ getNormalizedEmittance99Percentile()

Vector_t< double, 3 > DistributionMoments::getNormalizedEmittance99Percentile ( ) const
inline

Definition at line 283 of file DistributionMoments.h.

References normalizedEps99Percentile_m.

◆ getPlasmaParameter()

double DistributionMoments::getPlasmaParameter ( ) const
inline

Definition at line 239 of file DistributionMoments.h.

References plasmaParameter_m.

Referenced by ParticleContainer< T, Dim >::getPlasmaParameter().

◆ getRescaleEnergyToReference()

bool DistributionMoments::getRescaleEnergyToReference ( ) const
inline

Definition at line 60 of file DistributionMoments.h.

References rescaleToReference_m.

◆ getStandardDeviationMomentum()

Vector_t< double, 3 > DistributionMoments::getStandardDeviationMomentum ( ) const
inline

Definition at line 204 of file DistributionMoments.h.

References stdP_m.

Referenced by ParticleContainer< T, Dim >::getRmsP(), and TEST_F().

◆ getStandardDeviationPosition()

Vector_t< double, 3 > DistributionMoments::getStandardDeviationPosition ( ) const
inline

Definition at line 198 of file DistributionMoments.h.

References stdR_m.

Referenced by ParticleContainer< T, Dim >::getRmsR(), and TEST_F().

◆ getStandardDeviationRP()

Vector_t< double, 3 > DistributionMoments::getStandardDeviationRP ( ) const
inline

Definition at line 216 of file DistributionMoments.h.

References stdRP_m.

Referenced by ParticleContainer< T, Dim >::getRmsRP().

◆ getStdKineticEnergy()

double DistributionMoments::getStdKineticEnergy ( ) const
inline

◆ getStdTime()

double DistributionMoments::getStdTime ( ) const
inline

Definition at line 226 of file DistributionMoments.h.

References stdTime_m.

◆ getTemperature()

double DistributionMoments::getTemperature ( ) const
inline

◆ getTotalCharge()

double DistributionMoments::getTotalCharge ( ) const
inline

Definition at line 257 of file DistributionMoments.h.

References totalCharge_m.

◆ getTotalMass()

double DistributionMoments::getTotalMass ( ) const
inline

Definition at line 259 of file DistributionMoments.h.

References totalMass_m.

◆ getTotalNumParticles()

double DistributionMoments::getTotalNumParticles ( ) const
inline

Definition at line 261 of file DistributionMoments.h.

References totalNumParticles_m.

◆ isParticleExcluded()

bool DistributionMoments::isParticleExcluded ( const OpalParticle ) const
private

Definition at line 640 of file DistributionMoments.cpp.

◆ reset()

◆ resetPlasmaParameters()

void DistributionMoments::resetPlasmaParameters ( )
private

Definition at line 634 of file DistributionMoments.cpp.

References debyeLength_m, plasmaParameter_m, and temperature_m.

Referenced by computeDebyeLength(), and DistributionMoments().

◆ setContainerState()

void DistributionMoments::setContainerState ( std::weak_ptr< BunchStateHandler::ContainerState containerState)
inline

Bind this instance to the per-container slot it should query and update. Stored as a weak_ptr: ParticleContainer is the sole strong owner of the slot, so DistributionMoments observes but never extends its lifetime. Implicitly converts from the caller's shared_ptr.

Definition at line 47 of file DistributionMoments.h.

References containerState_m.

Referenced by ParticleContainer< T, Dim >::setBunchStateHandler(), and TEST_F().

◆ setEnergyReferenceMass()

void DistributionMoments::setEnergyReferenceMass ( double  referenceMassGeV,
bool  rescaleToReference = true 
)
inline

Configure whether kinetic-energy moments use a reference particle mass (instead of per-particle M).

Parameters
referenceMassGeVReference particle mass in GeV.
rescaleToReferenceIf true, mean/std kinetic energy are computed using referenceMassGeV.

Definition at line 56 of file DistributionMoments.h.

References referenceMassGeV_m, and rescaleToReference_m.

Referenced by ParticleContainer< T, Dim >::setEnergyReferenceMass().

Member Data Documentation

◆ centroid_m

Vector_t<double, 6> DistributionMoments::centroid_m
private

Definition at line 181 of file DistributionMoments.h.

Referenced by computeMeans(), computeMoments(), getCentroid(), and reset().

◆ containerState_m

std::weak_ptr<BunchStateHandler::ContainerState> DistributionMoments::containerState_m
private

Definition at line 146 of file DistributionMoments.h.

Referenced by computeMoments(), and setContainerState().

◆ debyeLength_m

double DistributionMoments::debyeLength_m
private

◆ geometricEps_m

Vector_t<double, 3> DistributionMoments::geometricEps_m
private

Definition at line 154 of file DistributionMoments.h.

Referenced by computeMoments(), getGeometricEmittance(), and reset().

◆ halo_m

Vector_t<double, 3> DistributionMoments::halo_m
private

Definition at line 155 of file DistributionMoments.h.

Referenced by computeMoments(), getHalo(), and reset().

◆ maxR_m

Vector_t<double, 3> DistributionMoments::maxR_m
private

◆ meanGamma_m

double DistributionMoments::meanGamma_m
private

Definition at line 174 of file DistributionMoments.h.

Referenced by computeMeans(), computeMoments(), and getMeanGamma().

◆ meanGammaZ_m

double DistributionMoments::meanGammaZ_m
private

Definition at line 175 of file DistributionMoments.h.

Referenced by computeMeans(), and getMeanGammaZ().

◆ meanKineticEnergy_m

double DistributionMoments::meanKineticEnergy_m
private

Definition at line 169 of file DistributionMoments.h.

Referenced by computeMeans(), computeMoments(), getMeanKineticEnergy(), and reset().

◆ meanP_m

Vector_t<double, 3> DistributionMoments::meanP_m
private

Definition at line 149 of file DistributionMoments.h.

Referenced by computeMeans(), computeMoments(), getMeanMomentum(), and reset().

◆ meanR_m

Vector_t<double, 3> DistributionMoments::meanR_m
private

◆ means_m

Vector_t<double, 6> DistributionMoments::means_m
private

Definition at line 182 of file DistributionMoments.h.

Referenced by computeMeans(), and getMeans().

◆ meanTime_m

double DistributionMoments::meanTime_m
private

Definition at line 167 of file DistributionMoments.h.

Referenced by getMeanTime().

◆ minR_m

Vector_t<double, 3> DistributionMoments::minR_m
private

◆ moments_m

matrix6x6_t DistributionMoments::moments_m
private

◆ ninetyFivePercentile_m

Vector_t<double, 3> DistributionMoments::ninetyFivePercentile_m
private

Definition at line 160 of file DistributionMoments.h.

Referenced by computePercentiles(), get95Percentile(), and reset().

◆ ninetyNine_NinetyNinePercentile_m

Vector_t<double, 3> DistributionMoments::ninetyNine_NinetyNinePercentile_m
private

Definition at line 164 of file DistributionMoments.h.

Referenced by computePercentiles(), get99_99Percentile(), and reset().

◆ ninetyNinePercentile_m

Vector_t<double, 3> DistributionMoments::ninetyNinePercentile_m
private

Definition at line 162 of file DistributionMoments.h.

Referenced by computePercentiles(), get99Percentile(), and reset().

◆ normalizedEps68Percentile_m

Vector_t<double, 3> DistributionMoments::normalizedEps68Percentile_m
private

◆ normalizedEps95Percentile_m

Vector_t<double, 3> DistributionMoments::normalizedEps95Percentile_m
private

◆ normalizedEps99_99Percentile_m

Vector_t<double, 3> DistributionMoments::normalizedEps99_99Percentile_m
private

◆ normalizedEps99Percentile_m

Vector_t<double, 3> DistributionMoments::normalizedEps99Percentile_m
private

◆ normalizedEps_m

Vector_t<double, 3> DistributionMoments::normalizedEps_m
private

Definition at line 153 of file DistributionMoments.h.

Referenced by computeMoments(), getNormalizedEmittance(), and reset().

◆ notCentMoments_m

matrix6x6_t DistributionMoments::notCentMoments_m
private

Definition at line 184 of file DistributionMoments.h.

Referenced by computeMoments(), and DistributionMoments().

◆ percentileFourSigmasNormalDist_m

const double DistributionMoments::percentileFourSigmasNormalDist_m = std::erf(4 / sqrt(2))
staticprivate

Definition at line 193 of file DistributionMoments.h.

Referenced by computePercentiles().

◆ percentileOneSigmaNormalDist_m

const double DistributionMoments::percentileOneSigmaNormalDist_m = std::erf(1 / sqrt(2))
staticprivate

Definition at line 190 of file DistributionMoments.h.

Referenced by computePercentiles().

◆ percentileThreeSigmasNormalDist_m

const double DistributionMoments::percentileThreeSigmasNormalDist_m = std::erf(3 / sqrt(2))
staticprivate

Definition at line 192 of file DistributionMoments.h.

Referenced by computePercentiles().

◆ percentileTwoSigmasNormalDist_m

const double DistributionMoments::percentileTwoSigmasNormalDist_m = std::erf(2 / sqrt(2))
staticprivate

Definition at line 191 of file DistributionMoments.h.

Referenced by computePercentiles().

◆ plasmaParameter_m

double DistributionMoments::plasmaParameter_m
private

◆ referenceMassGeV_m

double DistributionMoments::referenceMassGeV_m = 0.0
private

◆ rescaleToReference_m

bool DistributionMoments::rescaleToReference_m = false
private

◆ sixtyEightPercentile_m

Vector_t<double, 3> DistributionMoments::sixtyEightPercentile_m
private

Definition at line 158 of file DistributionMoments.h.

Referenced by computePercentiles(), get68Percentile(), and reset().

◆ stdKineticEnergy_m

double DistributionMoments::stdKineticEnergy_m
private

Definition at line 173 of file DistributionMoments.h.

Referenced by computeMoments(), getStdKineticEnergy(), and reset().

◆ stdP_m

Vector_t<double, 3> DistributionMoments::stdP_m
private

Definition at line 151 of file DistributionMoments.h.

Referenced by computeMoments(), getStandardDeviationMomentum(), and reset().

◆ stdR_m

Vector_t<double, 3> DistributionMoments::stdR_m
private

Definition at line 150 of file DistributionMoments.h.

Referenced by computeMoments(), getStandardDeviationPosition(), and reset().

◆ stdRP_m

Vector_t<double, 3> DistributionMoments::stdRP_m
private

Definition at line 152 of file DistributionMoments.h.

Referenced by computeMoments(), getStandardDeviationRP(), and reset().

◆ stdTime_m

double DistributionMoments::stdTime_m
private

Definition at line 168 of file DistributionMoments.h.

Referenced by getStdTime().

◆ temperature_m

double DistributionMoments::temperature_m
private

◆ totalCharge_m

double DistributionMoments::totalCharge_m
private

Definition at line 186 of file DistributionMoments.h.

Referenced by getTotalCharge(), and reset().

◆ totalMass_m

double DistributionMoments::totalMass_m
private

Definition at line 187 of file DistributionMoments.h.

Referenced by getTotalMass(), and reset().

◆ totalNumParticles_m

unsigned int DistributionMoments::totalNumParticles_m
private

Definition at line 188 of file DistributionMoments.h.

Referenced by computePercentiles(), getTotalNumParticles(), and reset().


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