i_phase_space_beam_parameters module

Hold the beam parameters in a single phase space.

For a list of the units associated with every parameter, see Units and conventions.

Note

In this module, angles are stored in \(\mathrm{deg}\), not in \(\mathrm{rad}\)!

class IPhaseSpaceBeamParameters(phase_space_name, eps_no_normalization, eps_normalized, envelopes=None, twiss=None, sigma=None, tm_cumul=None, mismatch_factor=None)[source]

Bases: ABC

Hold Twiss, emittance, envelopes of single phase-space @ single pos.

Parameters:
phase_space_name: Literal['phiw', 'phiw99', 't', 'x', 'x99', 'y', 'y99', 'z', 'zdelta']
eps_no_normalization: ndarray[tuple[Any, ...], dtype[float64]] | float
eps_normalized: ndarray[tuple[Any, ...], dtype[float64]] | float
envelopes: ndarray[tuple[Any, ...], dtype[float64]] | None = None
twiss: ndarray[tuple[Any, ...], dtype[float64]] | None = None
sigma: ndarray[tuple[Any, ...], dtype[float64]] | None = None
tm_cumul: ndarray[tuple[Any, ...], dtype[float64]] | None = None
mismatch_factor: ndarray[tuple[Any, ...], dtype[float64]] | float | None = None
__post_init__()[source]

Ensure that the phase space exists.

Return type:

None

classmethod from_sigma(phase_space_name, sigma, gamma_kin, beta_kin, beam_kwargs, **kwargs)[source]

Compute Twiss, eps, envelopes just from sigma matrix.

Parameters:
Return type:

Self

classmethod from_other_phase_space(other_phase_space, phase_space_name, gamma_kin, beta_kin, beam_kwargs, **kwargs)[source]

Fully initialize from another phase space.

Parameters:
Return type:

Self

__str__()[source]

Show amplitude of some of the attributes.

Return type:

str

abstract property alpha: ndarray[tuple[Any, ...], dtype[float64]] | float | None

Get first element/column of self.twiss.

abstract property beta: ndarray[tuple[Any, ...], dtype[float64]] | float | None

Get second element/column of self.twiss.

abstract property gamma: ndarray[tuple[Any, ...], dtype[float64]] | float | None

Get third element/column of self.twiss.

__init__(phase_space_name, eps_no_normalization, eps_normalized, envelopes=None, twiss=None, sigma=None, tm_cumul=None, mismatch_factor=None)
Parameters:
Return type:

None

_abc_impl = <_abc._abc_data object at 0x7318fb680700>
abstract property envelope_pos: ndarray[tuple[Any, ...], dtype[float64]] | float | None

Get first element/column of self.envelopes.

abstract property envelope_energy: ndarray[tuple[Any, ...], dtype[float64]] | float | None

Get second element/column of self.envelopes.

abstract property eps: ndarray[tuple[Any, ...], dtype[float64]] | float

Return the normalized emittance.

abstract property non_norm_eps: ndarray[tuple[Any, ...], dtype[float64]] | float

Return the non-normalized emittance.