core.beam_parameters.phase_space.phase_space_beam_parameters module
Handle the 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 PhaseSpaceBeamParameters(phase_space_name: str, eps_no_normalisation: ndarray, eps_normalized: ndarray, envelopes: ndarray | None = None, twiss: ndarray | None = None, sigma: ndarray | None = None, tm_cumul: ndarray | None = None, mismatch_factor: ndarray | None = None)
Bases:
IPhaseSpaceBeamParameters
Hold Twiss, emittance, envelopes of a single phase-space.
- __init__(phase_space_name: str, eps_no_normalisation: ndarray, eps_normalized: ndarray, envelopes: ndarray | None = None, twiss: ndarray | None = None, sigma: ndarray | None = None, tm_cumul: ndarray | None = None, mismatch_factor: ndarray | None = None) None
- _abc_impl = <_abc._abc_data object>
- property alpha: ndarray | None
Get first column of
self.twiss
.
- property beta: ndarray | None
Get second column of
self.twiss
.
- property envelope_energy: ndarray | None
Get second column of
self.envelopes
.
- property envelope_pos: ndarray | None
Get first column of
self.envelopes
.
- property eps: ndarray
Return the normalized emittance.
- eps_no_normalisation: ndarray
- eps_normalized: ndarray
- classmethod from_averaging_x_and_y(phase_space_name: str, x_space: Self, y_space: Self) Self
Create average transverse phase space from [xx’] and [yy’].
eps
is always initialized.mismatch_factor
is calculated if it was already calculated inx_space
andy_space
.
- classmethod from_cumulated_transfer_matrices(phase_space_name: str, sigma_in: ndarray, tm_cumul: ndarray, gamma_kin: ndarray, beta_kin: ndarray) Self
Compute \(\sigma\) matrix, and everything from it.
- classmethod from_other_phase_space(other_phase_space: Self, phase_space_name: str, gamma_kin: ndarray, beta_kin: ndarray, **kwargs: ndarray) Self
Fully initialize from another phase space.
- classmethod from_sigma(phase_space_name: str, sigma: ndarray, gamma_kin: ndarray, beta_kin: ndarray, **kwargs: ndarray) Self
Compute Twiss, eps, envelopes just from sigma matrix.
- property gamma: ndarray | None
Get third column of
self.twiss
.
- mismatch_factor: ndarray | None = None
- set_mismatch(reference_phase_space: Self, reference_z_abs: ndarray, z_abs: ndarray, raise_missing_twiss_error: bool = True, **mismatch_kw: bool) None
Compute and set the mismatch with
reference_phase_space
.
- property sigma_in: ndarray
Return the first \(\sigma\) beam matrix.