beam_calculation.envelope_3d.simulation_output_factory module
Define a class to easily generate the SimulationOutput
.
- class SimulationOutputFactoryEnvelope3D(_is_3d: bool, _is_multipart: bool, _solver_id: str, out_folder: Path)
Bases:
SimulationOutputFactory
A class for creating simulation outputs for
Envelope3D
.- __init__(_is_3d: bool, _is_multipart: bool, _solver_id: str, out_folder: Path) None
- __post_init__() None
Create the factories.
The created factories are
TransferMatrixFactory
andBeamParametersFactory
. The sub-class that is used is declared in_transfer_matrix_factory_class()
and_beam_parameters_factory_class()
.
- _abc_impl = <_abc._abc_data object>
- property _beam_parameters_factory_class: ABCMeta
Give the class of the beam parameters factory.
- property _transfer_matrix_factory_class: ABCMeta
Give the class of the transfer matrix factory.
- out_folder: Path
- run(elts: ListOfElements, single_elts_results: list[dict], set_of_cavity_settings: SetOfCavitySettings) SimulationOutput
Transform the outputs of BeamCalculator to a SimulationOutput.
Todo
Patch in transfer matrix to get proper input transfer matrix. In future, input beam will not hold transf mat in anymore.