initial_phase_space_beam_parameters module

Handle the initial beam parameters of 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 deg, not in rad!

class InitialPhaseSpaceBeamParameters(phase_space_name: Literal['zdelta', 'z', 'phiw', 'x', 'y', 't', 'phiw99', 'x99', 'y99'], eps_no_normalization: float, eps_normalized: float, envelopes: ndarray | None = None, twiss: ndarray | None = None, sigma: ndarray | None = None, tm_cumul: ndarray | None = None, mismatch_factor: float | None = None)

Bases: IPhaseSpaceBeamParameters

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

eps_no_normalization: float
eps_normalized: float
mismatch_factor: float | None = None
__post_init__() None

Ensure that the phase space exists.

classmethod from_sigma(phase_space_name: Literal['zdelta', 'z', 'phiw', 'x', 'y', 't', 'phiw99', 'x99', 'y99'], sigma: ndarray, gamma_kin: float, beta_kin: float, beam_kwargs: dict[str, Any], **kwargs: ndarray) Self

Compute Twiss, eps, envelopes just from sigma matrix.

classmethod from_other_phase_space(other_phase_space: Self, phase_space_name: Literal['zdelta', 'z', 'phiw', 'x', 'y', 't', 'phiw99', 'x99', 'y99'], gamma_kin: float, beta_kin: float, beam_kwargs: dict[str, Any], **kwargs: ndarray) Self

Fully initialize from another phase space.

property alpha: float | None

Get first element of self.twiss.

property beta: float | None

Get second element of self.twiss.

property gamma: float | None

Get third element of self.twiss.

__init__(phase_space_name: Literal['zdelta', 'z', 'phiw', 'x', 'y', 't', 'phiw99', 'x99', 'y99'], eps_no_normalization: float, eps_normalized: float, envelopes: ndarray | None = None, twiss: ndarray | None = None, sigma: ndarray | None = None, tm_cumul: ndarray | None = None, mismatch_factor: float | None = None) None
_abc_impl = <_abc._abc_data object at 0x7f36f97db700>
property envelope_pos: float | None

Get first element of self.envelopes.

property envelope_energy: float | None

Get second element of self.envelopes.

property eps: float

Return the normalized emittance.

property non_norm_eps: float

Return the normalized emittance.