TEAPOT_MATRIX_Lattice#

class orbit.teapot.TEAPOT_MATRIX_Lattice(teapot_lattice, bunch, name=None)[source]#

Bases: MATRIX_Lattice

Subclass of the MATRIX_Lattice class. Shell class for the BaseMATRIX nodes collection.

A TEAPOT_Lattice and Bunch instance are needed to construct the transfer matrices for specified beam parameters.

Methods Summary

getChromaticitiesXY()

Calculates chromaticities for x and y planes.

getKinEnergy()

getRingDispersionDataX()

Returns tuple ([(s, disp_x), ...], [(s, disp_prime_x), ...]).

getRingDispersionDataY()

Returns tuple ([(s, disp_y), ...], [(s, disp_prime_y), ...]).

getRingMatrix()

Returns one-turn matrix.

getRingOrbit(z0)

Returns tuple ([(s, x),...],[(s, y),...] ).

getRingParametersDict()

Returns dictionary of ring parameters from one-turn matrix.

getRingTwissDataX()

Returns tuple ([(s, tune_x), ...], [(s, alpha_x),...], [(s, beta_x),...]).

getRingTwissDataY()

Returns tuple ([(s, tune_y), ...], [(s, alpha_y),...], [(s, beta_y),...]).

getTransferDispersionDataX(disp, disp_p)

Propagates x dispersion and dispersion prime (x) through lattice.

getTransferDispersionDataY(disp, disp_p)

Propagates y dispersion and dispersion prime through lattice.

getTransferTwissDataX(alpha_x, beta_x)

Propagates Twiss parameters (alpha_x, beta) through the lattice.

getTransferTwissDataY(alpha_y, beta_y)

Propagates Twiss parameters (alpha_y, beta_y) through lattice.

getTunes()

Return total phase advance / 2pi (not fractional tunes)

rebuild([kin_energy])

Methods Documentation

Parameters:
getChromaticitiesXY()[source]#

Calculates chromaticities for x and y planes.

Return type:

tuple[float, float]

getKinEnergy()[source]#
Return type:

float

getRingDispersionDataX()[source]#

Returns tuple ([(s, disp_x), …], [(s, disp_prime_x), …]).

Overloads getRingDispersionDataX(p,m) method from MATRIX_Lattice.

Return type:

tuple[list[tuple[float, float]], list[tuple[float, float]]]

getRingDispersionDataY()[source]#

Returns tuple ([(s, disp_y), …], [(s, disp_prime_y), …]).

Overloads getRingDispersionDataX(p,m) method from MATRIX_Lattice.

Return type:

tuple[list[tuple[float, float]], list[tuple[float, float]]]

getRingMatrix()[source]#

Returns one-turn matrix.

Return type:

BaseMATRIX

getRingOrbit(z0)[source]#

Returns tuple ([(s, x),…],[(s, y),…] ).

Return type:

tuple[list[tuple[float, float]], list[tuple[float, float]]]

Parameters:

z0 (list[float])

getRingParametersDict()[source]#

Returns dictionary of ring parameters from one-turn matrix.

Overloads getRingParametersDict(p,m) method from MATRIX_Lattice.

Return type:

dict[str, float]

getRingTwissDataX()[source]#

Returns tuple ([(s, tune_x), …], [(s, alpha_x),…], [(s, beta_x),…]).

Overloads the getRingTwissDataX(p,m) method from MATRIX_Lattice.

Return type:

tuple[list[tuple[float, float]], list[tuple[float, float]], list[tuple[float, float]]]

getRingTwissDataY()[source]#

Returns tuple ([(s, tune_y), …], [(s, alpha_y),…], [(s, beta_y),…]).

Overloads the getRingTwissDataY(p,m) method from MATRIX_Lattice.

Return type:

tuple[list[tuple[float, float]], list[tuple[float, float]], list[tuple[float, float]]]

getTransferDispersionDataX(disp, disp_p)[source]#

Propagates x dispersion and dispersion prime (x) through lattice.

Return type:

tuple[list[tuple[float, float]], list[tuple[float, float]]]

Parameters:
  • disp (float)

  • disp_p (float)

getTransferDispersionDataY(disp, disp_p)[source]#

Propagates y dispersion and dispersion prime through lattice.

Return type:

tuple[list[tuple[float, float]], list[tuple[float, float]]]

Parameters:
  • disp (float)

  • disp_p (float)

getTransferTwissDataX(alpha_x, beta_x)[source]#

Propagates Twiss parameters (alpha_x, beta) through the lattice.

Return type:

tuple[list[tuple[float, float]], list[tuple[float, float]], list[tuple[float, float]]]

Parameters:
  • alpha_x (float)

  • beta_x (float)

getTransferTwissDataY(alpha_y, beta_y)[source]#

Propagates Twiss parameters (alpha_y, beta_y) through lattice.

Return type:

tuple[list[tuple[float, float]], list[tuple[float, float]], list[tuple[float, float]]]

Parameters:
  • alpha_y (float)

  • beta_y (float)

getTunes()[source]#

Return total phase advance / 2pi (not fractional tunes)

Return type:

tuple[float, float]

rebuild(kin_energy=-1.0)[source]#