Class BunchTwissAnalysis#

Inheritance Relationships#

Base Type#

Class Documentation#

class BunchTwissAnalysis : public OrbitUtils::CppPyWrapper#

The BunchTwissAnalysis class calculates the average of 6D coordinates and they correlations. As results it returns the Twiss parameters for each plane.

Public Functions

BunchTwissAnalysis()#

Constructor

virtual ~BunchTwissAnalysis()#

Destructor

void analyzeBunch(Bunch *bunch)#

Performs the Twiss analysis of the bunch

double getCorrelation(int ic, int jc)#

Returns the centered correlation between two components.

\(\langle (x-\langle x\rangle)(y-\langle y\rangle)\rangle = \langle x y\rangle - \langle x\rangle\langle y\rangle\)

Parameters
  • ic – Index of the first component (x).

  • jc – Index of the second component (y).

Returns

The centered correlation value as a double.

double getAverage(int ic)#

Returns the average value for coordinate with index ic

int getGlobalCount()#

Returns the total number of analysed macroparticles

double getGlobalMacrosize()#

Returns the total macrosize

double getEffectiveEmittance(int ic)#

Returns the emittance for index 0,1,2 - x,y,z planes.

Returns the effective emittance for index 0,1 - x,y planes.

double getEffectiveAlpha(int ic)#

Returns Twiss alpha for index 0,1,2 - x,y,z planes.

Returns effective Twiss alpha for index 0,1 - x,y planes.

double getEffectiveBeta(int ic)#

Returns Twiss beta for index 0,1,2 - x,y,z planes.

Returns effective Twiss beta for index 0,1 - x,y planes.

double getEffectiveGamma(int ic)#

Returns Twiss gamma for index 0,1,2 - x,y,z planes.

Returns effective Twiss gamma for index 0,1 - x,y planes.

double getEmittance(int ic)#

Returns the pure betatron emittance for index 0,1 - x,y planes.

Returns the emittance for index 0,1,2 - x,y,z planes.

double getEmittanceNormalized(int ic)#

Returns the normalized pure betatron emittance for index 0,1 - x,y planes.

Returns the normalized betatron emittance for index 0,1 - x,y planes.

double getAlpha(int ic)#

Returns Twiss alpha without dispersive part for index 0,1 - x,y planes.

Returns Twiss alpha (without dispersive part for x,y) for index 0,1,2 - x,y,z planes.

double getBeta(int ic)#

Returns Twiss beta without dispersive part for index 0,1 - x,y planes.

Returns Twiss beta (without dispersive part for x,y) for index 0,1,2 - x,y,z planes.

double getGamma(int ic)#

Returns Twiss gamma without dispersive part for index 0,1 - x,y planes.

Returns Twiss gamma (without dispersive part for x,y) for index 0,1,2 - x,y,z planes.

double getDispersion(int ic)#

Returns Twiss dispersion function for index 0,1 - x,y planes.

double getDispersionDerivative(int ic)#

Returns Twiss dispersion_prime function for index 0,1 - x,y planes.

void computeBunchMoments(Bunch *bunch, int order, int dispersionflag, int emitnormflag)#

Computes the XY moments of the bunch up to a prescribed order

Performs the bunch moments computations

double getBunchMoment(int i, int j)#

Returns the XY moment of the beam