georges.manzoni.elements package#
Submodules#
georges.manzoni.elements.cavities module#
TODO
georges.manzoni.elements.collimators module#
TODO
- class georges.manzoni.elements.collimators.Collimator(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Drift
Define a Collimator.
- PARAMETERS#
Dictionary containing the parameters of the Collimator with their default values.
- Type:
dict
Examples
>>> c1 = Collimator('C1', L=10*_ureg.cm, APERTYPE='ELIPTICAL', APERTURE=[2*_ureg.cm, 3*_ureg.cm]) >>> c1 Collimator: {'NAME': 'C1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'L': <Quantity(10, 'centimeter')>, 'APERTYPE': 'ELIPTICAL', 'APERTURE': [<Quantity(2, 'centimeter')>, <Quantity(3, 'centimeter')>]}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- L='0.0 meter'
Drift length.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[None, None, None, None]'
- Type:
list
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([None, None, None, None], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'L': (<Quantity(0.0, 'meter')>, 'Drift length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their descriptions.
- class georges.manzoni.elements.collimators.CircularCollimator(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Collimator
Define a CircularCollimator.
- PARAMETERS#
Dictionary containing the parameters of the CircularCollimator with their default values.
- Type:
dict
Examples
>>> c2 = CircularCollimator('C2', L=10*_ureg.cm, APERTURE=[2*_ureg.cm]) >>> c2 CircularCollimator: {'NAME': 'C2', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'L': <Quantity(10, 'centimeter')>, 'APERTYPE': 'CIRCULAR', 'APERTURE': [<Quantity(2, 'centimeter')>]}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- L='0.0 meter'
Drift length.
- Type:
Quantity
- APERTYPE='CIRCULAR'
Aperture type
- Type:
str
- APERTURE='[None, None, None, None]'
- Type:
list
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([None, None, None, None], ''), 'APERTYPE': ('CIRCULAR', 'Aperture type'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'L': (<Quantity(0.0, 'meter')>, 'Drift length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their descriptions.
- class georges.manzoni.elements.collimators.EllipticalCollimator(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Collimator
Define an EllipticalCollimator.
- PARAMETERS#
Dictionary containing the parameters of the EllipticalCollimator with their default values.
- Type:
dict
Examples
>>> c2 = EllipticalCollimator('C2', L=10*_ureg.cm, APERTURE=[2*_ureg.cm, 3*_ureg.cm]) >>> c2 EllipticalCollimator: {'NAME': 'C2', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'L': <Quantity(10, 'centimeter')>, 'APERTYPE': 'ELLIPTICAL', 'APERTURE': [<Quantity(2, 'centimeter')>, <Quantity(3, 'centimeter')>]}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- L='0.0 meter'
Drift length.
- Type:
Quantity
- APERTYPE='ELLIPTICAL'
Aperture type
- Type:
str
- APERTURE='[None, None, None, None]'
- Type:
list
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([None, None, None, None], ''), 'APERTYPE': ('ELLIPTICAL', 'Aperture type'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'L': (<Quantity(0.0, 'meter')>, 'Drift length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their descriptions.
- class georges.manzoni.elements.collimators.RectangularCollimator(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Collimator
Define a RectangularCollimator.
- PARAMETERS#
Dictionary containing the parameters of the RectangularCollimator with their default values.
- Type:
dict
Examples
>>> c3 = RectangularCollimator('C3', L=10*_ureg.cm, APERTURE=[2*_ureg.cm, 3*_ureg.cm]) >>> c3 RectangularCollimator: {'NAME': 'C3', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'L': <Quantity(10, 'centimeter')>, 'APERTYPE': 'RECTANGULAR', 'APERTURE': [<Quantity(2, 'centimeter')>, <Quantity(3, 'centimeter')>]}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- L='0.0 meter'
Drift length.
- Type:
Quantity
- APERTYPE='RECTANGULAR'
Aperture type
- Type:
str
- APERTURE='[None, None, None, None]'
- Type:
list
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([None, None, None, None], ''), 'APERTYPE': ('RECTANGULAR', 'Aperture type'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'L': (<Quantity(0.0, 'meter')>, 'Drift length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their descriptions.
- class georges.manzoni.elements.collimators.Dump(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
RectangularCollimator
Define a Dump.
- PARAMETERS#
Dictionary containing the parameters of the Dump with their default values.
- Type:
dict
Examples
>>> d1 = Dump('D1', L=10*_ureg.cm) >>> d1 Dump: {'NAME': 'D1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'L': <Quantity(10, 'centimeter')>, 'APERTYPE': 'RECTANGULAR', 'APERTURE': <Quantity(0.0, 'centimeter')>}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- L='0.0 meter'
Drift length.
- Type:
Quantity
- APERTYPE='RECTANGULAR'
Aperture type
- Type:
str
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': [<Quantity(0.0, 'centimeter')>, <Quantity(0.0, 'centimeter')>], 'APERTYPE': ('RECTANGULAR', 'Aperture type'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'L': (<Quantity(0.0, 'meter')>, 'Drift length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their descriptions.
georges.manzoni.elements.electrostatic module#
TODO
- class georges.manzoni.elements.electrostatic.ELSeparator(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
ManzoniElement
Default initializer for all Commands.
- PARAMETERS: dict = {'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
georges.manzoni.elements.elements module#
TODO
- exception georges.manzoni.elements.elements.ManzoniException(m)[source]#
Bases:
Exception
Exception raised for errors in the Manzoni elements module.
- exception georges.manzoni.elements.elements.ManzoniAttributeException(m)[source]#
Bases:
ManzoniException
Exception raised for errors in the Manzoni elements module.
- class georges.manzoni.elements.elements.ElementType(name: str, bases: Tuple[ElementType, type, ...], dct: Dict[str, Any])[source]#
Bases:
type
Dark magic. Be careful.
TODO
- class georges.manzoni.elements.elements.Element(name: str = '', *params, **kwargs)[source]#
Bases:
object
Test test test.
More info on this wonderful class. TODO
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
TODO :param name: :param *params: :param **kwargs:
- PARAMETERS: dict = {'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- post_init(**kwargs)[source]#
TODO
- Parameters:
**kwargs – all arguments from the initializer (constructor) are passed to
post_init
as keyword arguments.
- __setattr__(k: str, v: Any)[source]#
Custom attribute setter; all non-protected (starting with a ‘_’) attributes in upper-case are considered parameters of the Command. As such, the method will verify that they are indeed part of the command definition, if not an exception is raised. For valid attributes, their dimensionality is verified against the command definition (the dimension of the parameter’s default value).
It is also possible to use unit inference by appending an underscore to the attributes’ name. In that case the unit of the default value is implicitely used. This is useful in case it is known that the parameter’s numerical value is expressed in Manzoni’s default units set.
Examples
>>> c = Element() >>> c.NAME = 'FOOBAR'
- Parameters:
k – a string representing the attribute
v – the attribute’s value to be set
- Raises:
A ManzoniException is raised in case the parameter is not part of the class definition or if it has –
invalid dimension. –
- __str__() str [source]#
Provides the string representation of the command in the Manzoni input file format.
- Returns:
The string representation.
Examples
>>> c = Element('my_label_1') >>> str(c) "Element: {'NAME': 'my_label_1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>}"
- property attributes: Dict[str, Quantity]#
All attributes.
Provides a dictionary with all attributes for the command.
Returns: dictionnary with all attributes.
- property defaults: Dict[str, Quantity]#
Default attributes.
Provides a dictionary with all attributes that have been assigned a default value.
Returns: dictionary with all default attributes.
- property nondefaults: Dict[str, Quantity]#
Non default attributes.
Provides a dictionary with all attributes that have been assigned a non default value.
Returns: dictionary with all non default attributes.
- class georges.manzoni.elements.elements.ManzoniElement(name: str = '', integrator: IntegratorType | None = None, *params, **kwargs)[source]#
Bases:
Element
,Patchable
- Parameters:
name –
integrator –
*params –
**kwargs –
- INTEGRATOR#
alias of
MadXIntegrator
- propagate(beam: ndarray, out: ndarray | None = None, global_parameters: list | None = None) Tuple[ndarray, ndarray] [source]#
- Parameters:
beam –
out –
global_parameters –
Returns:
- property frozen#
Returns:
- property unfrozen#
Returns:
- property integrator: IntegratorType#
Returns:
- property parameters: list#
- PARAMETERS: dict = {'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- property aperture: Tuple[Callable, ndarray] | None#
- property cache: List#
georges.manzoni.elements.magnets module#
TODO
- class georges.manzoni.elements.magnets.Marker(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
ManzoniElement
Define a Marker
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
Default initializer for all Commands.
- INTEGRATOR: IntegratorType | None = None#
- propagate(beam_in: ndarray, beam_out: ndarray | None = None, parameters: list | None = None)[source]#
- Parameters:
beam –
out –
global_parameters –
Returns:
- PARAMETERS: dict = {'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- class georges.manzoni.elements.magnets.Matrix(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
ManzoniElement
Define a Matrix element.
- Attributes:
PARAMETERS (dict): Dictionary containing the parameters of the Matrix with their default values.
- Examples:
>>> m1 = Matrix('M1', MATRIX=_np.eye(6)) >>> m1 Matrix: {'NAME': 'M1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'MATRIX': array([[1., 0., 0., 0., 0., 0.], [0., 1., 0., 0., 0., 0.], [0., 0., 1., 0., 0., 0.], [0., 0., 0., 1., 0., 0.], [0., 0., 0., 0., 1., 0.], [0., 0., 0., 0., 0., 1.]])}
Command attributes
Attributes:
NAME=’’ (str): Primary label for the Manzoni command (default: auto-generated hash).
AT_ENTRY=’0 meter’ (Quantity): Entrance position of the element.
AT_CENTER=’0 meter’ (Quantity): Entrance position of the element.
AT_EXIT=’0 meter’ (Quantity): Exit position of the element.
MATRIX=’[[1. 0. 0. 0. 0. 0.]
[0. 1. 0. 0. 0. 0.] [0. 0. 1. 0. 0. 0.] [0. 0. 0. 1. 0. 0.] [0. 0. 0. 0. 1. 0.] [0. 0. 0. 0. 0. 1.]]’ (ndarray): Transfer matrix.
Default initializer for all Commands.
- INTEGRATOR: IntegratorType | None = None#
- PARAMETERS: dict = {'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'MATRIX': (array([[1., 0., 0., 0., 0., 0.], [0., 1., 0., 0., 0., 0.], [0., 0., 1., 0., 0., 0.], [0., 0., 0., 1., 0., 0.], [0., 0., 0., 0., 1., 0.], [0., 0., 0., 0., 0., 1.]]), 'Transfer matrix.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- propagate(beam_in: ndarray, beam_out: ndarray | None = None, global_parameters: list | None = None) Tuple[ndarray, ndarray] [source]#
- Parameters:
beam –
out –
global_parameters –
Returns:
- property parameters: list#
- class georges.manzoni.elements.magnets.Gap(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
ManzoniElement
Define a gap where no physical geometry is placed
- PARAMETERS#
Dictionary containing the parameters of the Gap with their default values.
- Type:
dict
Examples
>>> g1 = Gap('G1', L=1*_ureg.m) >>> g1 Gap: {'NAME': 'G1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'L': <Quantity(1, 'meter')>, 'APERTYPE': None, 'APERTURE': []}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- L='0.0 meter'
Drift length.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'L': (<Quantity(0.0, 'meter')>, 'Drift length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their descriptions.
- propagate(beam_in: ndarray, beam_out: ndarray | None = None, global_parameters: list | None = None) Tuple[ndarray, ndarray] [source]#
- Parameters:
beam –
out –
global_parameters –
Returns:
- property parameters: list#
- class georges.manzoni.elements.magnets.Drift(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Gap
Definition of a Drift.
- PARAMETERS#
Dictionary containing the parameters of the Drift with their default values.
- Type:
dict
Examples
>>> d1 = Drift('D1', L=1*_ureg.m, APERTYPE='CIRCULAR', APERTURE=[5*_ureg.cm]) >>> d1 Drift: {'NAME': 'D1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'L': <Quantity(1, 'meter')>, 'APERTYPE': 'CIRCULAR', 'APERTURE': [<Quantity(5, 'centimeter')>]}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- L='0.0 meter'
Drift length.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'L': (<Quantity(0.0, 'meter')>, 'Drift length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their descriptions.
- class georges.manzoni.elements.magnets.SRotation(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
ManzoniElement
Definition of a SRotation.
- PARAMETERS#
Dictionary containing the parameters of the SRotation with their default values.
- Type:
dict
Examples
>>> s1 = SRotation('S1', ANGLE=10*_ureg.degrees) >>> s1 SRotation: {'NAME': 'S1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'ANGLE': <Quantity(10, 'degree')>}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- ANGLE='0.0 radian'
Angle of rotation along the s-axis.
- Type:
Quantity
Default initializer for all Commands.
- PARAMETERS: dict = {'ANGLE': (<Quantity(0.0, 'radian')>, 'Angle of rotation along the s-axis.'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- property parameters: list#
- class georges.manzoni.elements.magnets.Magnet(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
ManzoniElement
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'KINEMATICS': (None, 'Reference kinematics'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- class georges.manzoni.elements.magnets.Quadrupole(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Magnet
Define a Quadrupole magnet.
- PARAMETERS#
Dictionary containing the parameters of the Quadrupole with their default values.
- Type:
dict
Examples
>>> q1 = Quadrupole('Q1', L=1*_ureg.m, K1=3*_ureg.m**-2) >>> q1 Quadrupole: {'NAME': 'Q1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'APERTYPE': None, 'APERTURE': [], 'KINEMATICS': None, 'L': <Quantity(1, 'meter')>, 'K1': <Quantity(3, '1 / meter ** 2')>, 'K1S': <Quantity(0.0, '1 / meter ** 2')>, 'TILT': <Quantity(0.0, 'radian')>}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
- KINEMATICS='None'
Reference kinematics
- Type:
NoneType
- L='0.0 meter'
Quadrupole length.
- Type:
Quantity
- K1='0.0 / meter ** 2'
Normalized gradient.
- Type:
Quantity
- K1S='0.0 / meter ** 2'
Normalized skew gradient.
- Type:
Quantity
- TILT='0.0 radian'
Magnet tilt angle.
- Type:
Quantity
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'K1': (<Quantity(0.0, '1 / meter ** 2')>, 'Normalized gradient.'), 'K1S': (<Quantity(0.0, '1 / meter ** 2')>, 'Normalized skew gradient.'), 'KINEMATICS': (None, 'Reference kinematics'), 'L': (<Quantity(0.0, 'meter')>, 'Quadrupole length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).'), 'TILT': (<Quantity(0.0, 'radian')>, 'Magnet tilt angle.')}#
Parameters of the element, with their default value and their description .
- property parameters: list#
- class georges.manzoni.elements.magnets.Bend(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Magnet
Define a Bend magnet.
- PARAMETERS#
Dictionary containing the parameters of the Bend with their default values.
- Type:
dict
Examples
>>> b1 = Bend('B1', L=1*_ureg.m, ANGLE=30*_ureg.degrees, E1=5*_ureg.degrees, HGAP=2*_ureg.cm, K1=3*_ureg.m**-2) >>> b1 Bend: {'NAME': 'B1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'APERTYPE': None, 'APERTURE': [], 'KINEMATICS': None, 'ANGLE': <Quantity(30, 'degree')>, 'K0': <Quantity(0.0, '1 / meter')>, 'K1': <Quantity(3, '1 / meter ** 2')>, 'K2': <Quantity(0.0, '1 / meter ** 3')>, 'L': <Quantity(1, 'meter')>, 'E1': <Quantity(5, 'degree')>, 'E2': <Quantity(0.0, 'radian')>, 'TILT': <Quantity(0.0, 'radian')>, 'HGAP': <Quantity(2, 'centimeter')>, 'FINT': 0.0, 'FINTX': 0.0}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
- KINEMATICS='None'
Reference kinematics
- Type:
NoneType
- ANGLE='0.0 radian'
Bending angle.
- Type:
Quantity
- K0='0.0 / meter'
Dipolar normalized gradient
- Type:
Quantity
- K1='0.0 / meter ** 2'
Quadrupolar normalized gradient.
- Type:
Quantity
- K2='0.0 / meter ** 3'
Sextupolar normalized gradient.
- Type:
Quantity
- L='0.0 meter'
Magnet length.
- Type:
Quantity
- E1='0.0 radian'
Entrance face angle.
- Type:
Quantity
- E2='0.0 radian'
Exit face angle.
- Type:
Quantity
- TILT='0.0 radian'
Magnet tilt angle.
- Type:
Quantity
- HGAP='0.0 meter'
Magnet gap.
- Type:
Quantity
- FINT='0.0'
Fringe field integral.
- Type:
float
- FINTX='0.0'
Exit fringe field integral.
- Type:
float
Default initializer for all Commands.
- PARAMETERS: dict = {'ANGLE': (<Quantity(0.0, 'radian')>, 'Bending angle.'), 'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'E1': (<Quantity(0.0, 'radian')>, 'Entrance face angle.'), 'E2': (<Quantity(0.0, 'radian')>, 'Exit face angle.'), 'FINT': (0.0, 'Fringe field integral.'), 'FINTX': (0.0, 'Exit fringe field integral.'), 'HGAP': (<Quantity(0.0, 'meter')>, 'Magnet gap.'), 'K0': (<Quantity(0.0, '1 / meter')>, 'Dipolar normalized gradient'), 'K1': (<Quantity(0.0, '1 / meter ** 2')>, 'Quadrupolar normalized gradient.'), 'K2': (<Quantity(0.0, '1 / meter ** 3')>, 'Sextupolar normalized gradient.'), 'KINEMATICS': (None, 'Reference kinematics'), 'L': (<Quantity(0.0, 'meter')>, 'Magnet length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).'), 'TILT': (<Quantity(0.0, 'radian')>, 'Magnet tilt angle.')}#
Parameters of the element, with their default value and their description .
- property length: float#
Length of the element.
- Returns:
the length of the element with units.
- property edges: Tuple[float, float]#
- property fringe_field_integrals: Tuple[float, float]#
- property parameters: list#
- class georges.manzoni.elements.magnets.SBend(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Bend
Definition of a SBend
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
- KINEMATICS='None'
Reference kinematics
- Type:
NoneType
- ANGLE='0.0 radian'
Bending angle.
- Type:
Quantity
- K0='0.0 / meter'
Dipolar normalized gradient
- Type:
Quantity
- K1='0.0 / meter ** 2'
Quadrupolar normalized gradient.
- Type:
Quantity
- K2='0.0 / meter ** 3'
Sextupolar normalized gradient.
- Type:
Quantity
- L='0.0 meter'
Magnet length.
- Type:
Quantity
- E1='0.0 radian'
Entrance face angle.
- Type:
Quantity
- E2='0.0 radian'
Exit face angle.
- Type:
Quantity
- TILT='0.0 radian'
Magnet tilt angle.
- Type:
Quantity
- HGAP='0.0 meter'
Magnet gap.
- Type:
Quantity
- FINT='0.0'
Fringe field integral.
- Type:
float
- FINTX='0.0'
Exit fringe field integral.
- Type:
float
Default initializer for all Commands.
- PARAMETERS: dict = {'ANGLE': (<Quantity(0.0, 'radian')>, 'Bending angle.'), 'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'E1': (<Quantity(0.0, 'radian')>, 'Entrance face angle.'), 'E2': (<Quantity(0.0, 'radian')>, 'Exit face angle.'), 'FINT': (0.0, 'Fringe field integral.'), 'FINTX': (0.0, 'Exit fringe field integral.'), 'HGAP': (<Quantity(0.0, 'meter')>, 'Magnet gap.'), 'K0': (<Quantity(0.0, '1 / meter')>, 'Dipolar normalized gradient'), 'K1': (<Quantity(0.0, '1 / meter ** 2')>, 'Quadrupolar normalized gradient.'), 'K2': (<Quantity(0.0, '1 / meter ** 3')>, 'Sextupolar normalized gradient.'), 'KINEMATICS': (None, 'Reference kinematics'), 'L': (<Quantity(0.0, 'meter')>, 'Magnet length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).'), 'TILT': (<Quantity(0.0, 'radian')>, 'Magnet tilt angle.')}#
Parameters of the element, with their default value and their description .
- class georges.manzoni.elements.magnets.RBend(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Bend
Definition of a RBend
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
- KINEMATICS='None'
Reference kinematics
- Type:
NoneType
- ANGLE='0.0 radian'
Bending angle.
- Type:
Quantity
- K0='0.0 / meter'
Dipolar normalized gradient
- Type:
Quantity
- K1='0.0 / meter ** 2'
Quadrupolar normalized gradient.
- Type:
Quantity
- K2='0.0 / meter ** 3'
Sextupolar normalized gradient.
- Type:
Quantity
- L='0.0 meter'
Magnet length.
- Type:
Quantity
- E1='0.0 radian'
Entrance face angle.
- Type:
Quantity
- E2='0.0 radian'
Exit face angle.
- Type:
Quantity
- TILT='0.0 radian'
Magnet tilt angle.
- Type:
Quantity
- HGAP='0.0 meter'
Magnet gap.
- Type:
Quantity
- FINT='0.0'
Fringe field integral.
- Type:
float
- FINTX='0.0'
Exit fringe field integral.
- Type:
float
Default initializer for all Commands.
- property length: float#
Length of the element.
- Returns:
the length of the element with units.
- property edges: Tuple[float, float]#
- PARAMETERS: dict = {'ANGLE': (<Quantity(0.0, 'radian')>, 'Bending angle.'), 'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'E1': (<Quantity(0.0, 'radian')>, 'Entrance face angle.'), 'E2': (<Quantity(0.0, 'radian')>, 'Exit face angle.'), 'FINT': (0.0, 'Fringe field integral.'), 'FINTX': (0.0, 'Exit fringe field integral.'), 'HGAP': (<Quantity(0.0, 'meter')>, 'Magnet gap.'), 'K0': (<Quantity(0.0, '1 / meter')>, 'Dipolar normalized gradient'), 'K1': (<Quantity(0.0, '1 / meter ** 2')>, 'Quadrupolar normalized gradient.'), 'K2': (<Quantity(0.0, '1 / meter ** 3')>, 'Sextupolar normalized gradient.'), 'KINEMATICS': (None, 'Reference kinematics'), 'L': (<Quantity(0.0, 'meter')>, 'Magnet length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).'), 'TILT': (<Quantity(0.0, 'radian')>, 'Magnet tilt angle.')}#
Parameters of the element, with their default value and their description .
- class georges.manzoni.elements.magnets.Fringein(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Bend
Define a Fringe field at the entrance of a bending magnet.
- PARAMETERS#
Dictionary containing the parameters of the Fringein with their default values.
- Type:
dict
Examples
>>> f1 = Fringein('F1', L=1*_ureg.mm, ANGLE=30*_ureg.degrees, E1=5*_ureg.degrees, ... HGAP=2*_ureg.cm, K1=3*_ureg.m**-2, R1=1*_ureg.cm) >>> f1 Fringein: {'NAME': 'F1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'APERTYPE': None, 'APERTURE': [], 'KINEMATICS': None, 'ANGLE': <Quantity(30, 'degree')>, 'K0': <Quantity(0.0, '1 / meter')>, 'K1': <Quantity(3, '1 / meter ** 2')>, 'K2': <Quantity(0.0, '1 / meter ** 3')>, 'L': <Quantity(1, 'millimeter')>, 'E1': <Quantity(5, 'degree')>, 'E2': <Quantity(0.0, 'radian')>, 'TILT': <Quantity(0.0, 'radian')>, 'HGAP': <Quantity(2, 'centimeter')>, 'FINT': 0.0, 'FINTX': 0.0, 'R1': <Quantity(1, 'centimeter')>}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
- KINEMATICS='None'
Reference kinematics
- Type:
NoneType
- ANGLE='0.0 radian'
Bending angle.
- Type:
Quantity
- K0='0.0 / meter'
Dipolar normalized gradient
- Type:
Quantity
- K1='0.0 / meter ** 2'
Quadrupolar normalized gradient.
- Type:
Quantity
- K2='0.0 / meter ** 3'
Sextupolar normalized gradient.
- Type:
Quantity
- L='0.0 meter'
Magnet length.
- Type:
Quantity
- E1='0.0 radian'
Entrance face angle.
- Type:
Quantity
- E2='0.0 radian'
Exit face angle.
- Type:
Quantity
- TILT='0.0 radian'
Magnet tilt angle.
- Type:
Quantity
- HGAP='0.0 meter'
Magnet gap.
- Type:
Quantity
- FINT='0.0'
Fringe field integral.
- Type:
float
- FINTX='0.0'
Exit fringe field integral.
- Type:
float
- R1='inf meter'
Entrance face curvature radius
- Type:
Quantity
Default initializer for all Commands.
- PARAMETERS: dict = {'ANGLE': (<Quantity(0.0, 'radian')>, 'Bending angle.'), 'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'E1': (<Quantity(0.0, 'radian')>, 'Entrance face angle.'), 'E2': (<Quantity(0.0, 'radian')>, 'Exit face angle.'), 'FINT': (0.0, 'Fringe field integral.'), 'FINTX': (0.0, 'Exit fringe field integral.'), 'HGAP': (<Quantity(0.0, 'meter')>, 'Magnet gap.'), 'K0': (<Quantity(0.0, '1 / meter')>, 'Dipolar normalized gradient'), 'K1': (<Quantity(0.0, '1 / meter ** 2')>, 'Quadrupolar normalized gradient.'), 'K2': (<Quantity(0.0, '1 / meter ** 3')>, 'Sextupolar normalized gradient.'), 'KINEMATICS': (None, 'Reference kinematics'), 'L': (<Quantity(0.0, 'meter')>, 'Magnet length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).'), 'R1': (<Quantity(inf, 'meter')>, 'Entrance face curvature radius'), 'TILT': (<Quantity(0.0, 'radian')>, 'Magnet tilt angle.')}#
Parameters of the element, with their default value and their description .
- property parameters: list#
- class georges.manzoni.elements.magnets.Fringeout(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Bend
Define a Fringe field at the exit of a bending magnet.
- PARAMETERS#
Dictionary containing the parameters of the Fringeout with their default values.
- Type:
dict
Examples
>>> f2 = Fringeout('F2', L=1*_ureg.mm, ANGLE=30*_ureg.degrees, E2=5*_ureg.degrees, ... HGAP=2*_ureg.cm, K1=3*_ureg.m**-2, R2=1*_ureg.cm) >>> f2 Fringeout: {'NAME': 'F2', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'APERTYPE': None, 'APERTURE': [], 'KINEMATICS': None, 'ANGLE': <Quantity(30, 'degree')>, 'K0': <Quantity(0.0, '1 / meter')>, 'K1': <Quantity(3, '1 / meter ** 2')>, 'K2': <Quantity(0.0, '1 / meter ** 3')>, 'L': <Quantity(1, 'millimeter')>, 'E1': <Quantity(0.0, 'radian')>, 'E2': <Quantity(5, 'degree')>, 'TILT': <Quantity(0.0, 'radian')>, 'HGAP': <Quantity(2, 'centimeter')>, 'FINT': 0.0, 'FINTX': 0.0, 'R2': <Quantity(1, 'centimeter')>}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
- KINEMATICS='None'
Reference kinematics
- Type:
NoneType
- ANGLE='0.0 radian'
Bending angle.
- Type:
Quantity
- K0='0.0 / meter'
Dipolar normalized gradient
- Type:
Quantity
- K1='0.0 / meter ** 2'
Quadrupolar normalized gradient.
- Type:
Quantity
- K2='0.0 / meter ** 3'
Sextupolar normalized gradient.
- Type:
Quantity
- L='0.0 meter'
Magnet length.
- Type:
Quantity
- E1='0.0 radian'
Entrance face angle.
- Type:
Quantity
- E2='0.0 radian'
Exit face angle.
- Type:
Quantity
- TILT='0.0 radian'
Magnet tilt angle.
- Type:
Quantity
- HGAP='0.0 meter'
Magnet gap.
- Type:
Quantity
- FINT='0.0'
Fringe field integral.
- Type:
float
- FINTX='0.0'
Exit fringe field integral.
- Type:
float
- R2='inf meter'
Entrance face curvature radius
- Type:
Quantity
Default initializer for all Commands.
- PARAMETERS: dict = {'ANGLE': (<Quantity(0.0, 'radian')>, 'Bending angle.'), 'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'E1': (<Quantity(0.0, 'radian')>, 'Entrance face angle.'), 'E2': (<Quantity(0.0, 'radian')>, 'Exit face angle.'), 'FINT': (0.0, 'Fringe field integral.'), 'FINTX': (0.0, 'Exit fringe field integral.'), 'HGAP': (<Quantity(0.0, 'meter')>, 'Magnet gap.'), 'K0': (<Quantity(0.0, '1 / meter')>, 'Dipolar normalized gradient'), 'K1': (<Quantity(0.0, '1 / meter ** 2')>, 'Quadrupolar normalized gradient.'), 'K2': (<Quantity(0.0, '1 / meter ** 3')>, 'Sextupolar normalized gradient.'), 'KINEMATICS': (None, 'Reference kinematics'), 'L': (<Quantity(0.0, 'meter')>, 'Magnet length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).'), 'R2': (<Quantity(inf, 'meter')>, 'Entrance face curvature radius'), 'TILT': (<Quantity(0.0, 'radian')>, 'Magnet tilt angle.')}#
Parameters of the element, with their default value and their description .
- property parameters: list#
- class georges.manzoni.elements.magnets.DipEdge(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Magnet
Define a DipEdge element.
- PARAMETERS#
Dictionary containing the parameters of the DipEdge with their default values.
- Type:
dict
Examples
>>> d1 = DipEdge('D1', H=1*_ureg.mm**-1) >>> d1 DipEdge: {'NAME': 'D1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'APERTYPE': None, 'APERTURE': [], 'KINEMATICS': None, 'H': <Quantity(1, '1 / millimeter')>, 'E1': <Quantity(0.0, 'radian')>, 'HGAP': <Quantity(0.0, 'meter')>, 'FINT': 0.0}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
- KINEMATICS='None'
Reference kinematics
- Type:
NoneType
- H='0.0 / meter'
Inverse of the curvature radius.
- Type:
Quantity
- E1='0.0 radian'
Entrance face angle.
- Type:
Quantity
- HGAP='0.0 meter'
Magnet gap.
- Type:
Quantity
- FINT='0.0'
Fringe field integral.
- Type:
float
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'E1': (<Quantity(0.0, 'radian')>, 'Entrance face angle.'), 'FINT': (0.0, 'Fringe field integral.'), 'H': (<Quantity(0.0, '1 / meter')>, 'Inverse of the curvature radius.'), 'HGAP': (<Quantity(0.0, 'meter')>, 'Magnet gap.'), 'KINEMATICS': (None, 'Reference kinematics'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- property parameters: list#
- class georges.manzoni.elements.magnets.Solenoid(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Magnet
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'KINEMATICS': (None, 'Reference kinematics'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- class georges.manzoni.elements.magnets.Multipole(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Magnet
Define a Multipole magnet.
- PARAMETERS#
Dictionary containing the parameters of the Multipole with their default values.
- Type:
dict
Examples
>>> m1 = Multipole('M1', L=10*_ureg.cm, K1=4*_ureg.m**-2, K2=0.1*_ureg.m**-3) >>> m1 Multipole: {'NAME': 'M1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'APERTYPE': None, 'APERTURE': [], 'KINEMATICS': None, 'L': <Quantity(10, 'centimeter')>, 'K1': <Quantity(4, '1 / meter ** 2')>, 'K2': <Quantity(0.1, '1 / meter ** 3')>}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
- KINEMATICS='None'
Reference kinematics
- Type:
NoneType
- L='0.0 meter'
Magnet length.
- Type:
Quantity
- K1='0.0 / meter ** 2'
Quadrupolar normalized gradient.
- Type:
Quantity
- K2='0.0 / meter ** 3'
Sextupolar normalized gradient.
- Type:
Quantity
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'K1': (<Quantity(0.0, '1 / meter ** 2')>, 'Quadrupolar normalized gradient.'), 'K2': (<Quantity(0.0, '1 / meter ** 3')>, 'Sextupolar normalized gradient.'), 'KINEMATICS': (None, 'Reference kinematics'), 'L': (<Quantity(0.0, 'meter')>, 'Magnet length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- property parameters: list#
- class georges.manzoni.elements.magnets.Sextupole(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Magnet
Define a Sextupole magnet.
- PARAMETERS#
Dictionary containing the parameters of the Sextupole with their default values.
- Type:
dict
Examples
>>> s1 = Sextupole('S1', L=1*_ureg.m, K2=3*_ureg.m**-3) >>> s1 Sextupole: {'NAME': 'S1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'APERTYPE': None, 'APERTURE': [], 'KINEMATICS': None, 'L': <Quantity(1, 'meter')>, 'K2': <Quantity(3, '1 / meter ** 3')>}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
- KINEMATICS='None'
Reference kinematics
- Type:
NoneType
- L='0.0 meter'
Magnet length.
- Type:
Quantity
- K2='0.0 / meter ** 3'
Sextupolar normalized gradient.
- Type:
Quantity
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'K2': (<Quantity(0.0, '1 / meter ** 3')>, 'Sextupolar normalized gradient.'), 'KINEMATICS': (None, 'Reference kinematics'), 'L': (<Quantity(0.0, 'meter')>, 'Magnet length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- property parameters: list#
- class georges.manzoni.elements.magnets.Octupole(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Magnet
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'KINEMATICS': (None, 'Reference kinematics'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- class georges.manzoni.elements.magnets.Decapole(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Magnet
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'KINEMATICS': (None, 'Reference kinematics'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- class georges.manzoni.elements.magnets.Dodecapole(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Magnet
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'KINEMATICS': (None, 'Reference kinematics'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- class georges.manzoni.elements.magnets.Kicker(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Magnet
Define a Kicker element.
- PARAMETERS#
Dictionary containing the parameters of the Kicker with their default values.
- Type:
dict
Examples
>>> k1 = Kicker('K1', L=10*_ureg.cm, HKICK=0.1, VKICK=-0.2) >>> k1 Kicker: {'NAME': 'K1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'APERTYPE': None, 'APERTURE': [], 'KINEMATICS': None, 'L': <Quantity(10, 'centimeter')>, 'HKICK': 0.1, 'VKICK': -0.2, 'TILT': <Quantity(0.0, 'radian')>}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
- KINEMATICS='None'
Reference kinematics
- Type:
NoneType
- L='0.0 meter'
Kicker length.
- Type:
Quantity
- HKICK='0.0'
The momentum change in the horizontal plane.
- Type:
float
- VKICK='0.0'
The momentum change in the vertical plane.
- Type:
float
- TILT='0.0 radian'
The roll angle about the longitudinal axis. A positive angle represents a clockwise rotation of the kicker
- Type:
Quantity
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'HKICK': (0.0, 'The momentum change in the horizontal plane.'), 'KINEMATICS': (None, 'Reference kinematics'), 'L': (<Quantity(0.0, 'meter')>, 'Kicker length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).'), 'TILT': (<Quantity(0.0, 'radian')>, 'The roll angle about the longitudinal axis. A positive angle represents a clockwise rotation of the kicker'), 'VKICK': (0.0, 'The momentum change in the vertical plane.')}#
Parameters of the element, with their default value and their descriptions.
- property parameters: list#
- class georges.manzoni.elements.magnets.TKicker(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Kicker
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'HKICK': (0.0, 'The momentum change in the horizontal plane.'), 'KINEMATICS': (None, 'Reference kinematics'), 'L': (<Quantity(0.0, 'meter')>, 'Kicker length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).'), 'TILT': (<Quantity(0.0, 'radian')>, 'The roll angle about the longitudinal axis. A positive angle represents a clockwise rotation of the kicker'), 'VKICK': (0.0, 'The momentum change in the vertical plane.')}#
Parameters of the element, with their default value and their descriptions.
- class georges.manzoni.elements.magnets.HKicker(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Magnet
Define a HKicker element.
- PARAMETERS#
Dictionary containing the parameters of the HKicker with their default values.
- Type:
dict
Examples
>>> h1 = HKicker('H1', L=10*_ureg.cm, KICK=0.1) >>> h1 HKicker: {'NAME': 'H1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'APERTYPE': None, 'APERTURE': [], 'KINEMATICS': None, 'L': <Quantity(10, 'centimeter')>, 'KICK': 0.1, 'TILT': <Quantity(0.0, 'radian')>}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
- KINEMATICS='None'
Reference kinematics
- Type:
NoneType
- L='0.0 meter'
Kicker length.
- Type:
Quantity
- KICK='0.0'
The momentum change.
- Type:
float
- TILT='0.0 radian'
The roll angle about the longitudinal axis. A positive angle represents a clockwise rotation of the kicker
- Type:
Quantity
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'KICK': (0.0, 'The momentum change.'), 'KINEMATICS': (None, 'Reference kinematics'), 'L': (<Quantity(0.0, 'meter')>, 'Kicker length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).'), 'TILT': (<Quantity(0.0, 'radian')>, 'The roll angle about the longitudinal axis. A positive angle represents a clockwise rotation of the kicker')}#
Parameters of the element, with their default value and their descriptions.
- property parameters: list#
- class georges.manzoni.elements.magnets.VKicker(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Magnet
Define a VKicker element.
- PARAMETERS#
Dictionary containing the parameters of the VKicker with their default values.
- Type:
dict
Examples
>>> v1 = VKicker('V1', L=10*_ureg.cm, KICK=-0.2) >>> v1 VKicker: {'NAME': 'V1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'APERTYPE': None, 'APERTURE': [], 'KINEMATICS': None, 'L': <Quantity(10, 'centimeter')>, 'KICK': -0.2, 'TILT': <Quantity(0.0, 'radian')>}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- APERTYPE='None'
Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)
- Type:
NoneType
- APERTURE='[]'
- Type:
list
- KINEMATICS='None'
Reference kinematics
- Type:
NoneType
- L='0.0 meter'
Kicker length.
- Type:
Quantity
- KICK='0.0 radian'
The momentum change.
- Type:
Quantity
- TILT='0.0 radian'
The roll angle about the longitudinal axis. A positive angle represents a clockwise rotation of the kicker
- Type:
Quantity
Default initializer for all Commands.
- PARAMETERS: dict = {'APERTURE': ([], ''), 'APERTYPE': (None, 'Aperture type (CIRCULAR, ELLIPTICAL, RECTANGULAR or PHASE_SPACE)'), 'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'KICK': (<Quantity(0.0, 'radian')>, 'The momentum change.'), 'KINEMATICS': (None, 'Reference kinematics'), 'L': (<Quantity(0.0, 'meter')>, 'Kicker length.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).'), 'TILT': (<Quantity(0.0, 'radian')>, 'The roll angle about the longitudinal axis. A positive angle represents a clockwise rotation of the kicker')}#
Parameters of the element, with their default value and their descriptions.
- property parameters: list#
georges.manzoni.elements.scatterers module#
TODO
- class georges.manzoni.elements.scatterers.MaterialElement(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
ManzoniElement
Default initializer for all Commands.
- INTEGRATOR: IntegratorType | None = None#
- property material#
- property degraded_energy#
- property cache: list#
- property beta#
- PARAMETERS: dict = {'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- class georges.manzoni.elements.scatterers.Scatterer(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
MaterialElement
Define a Scatterer.
- PARAMETERS#
Dictionary containing the parameters of the Scatterer with their default values.
- Type:
dict
Examples
>>> s1 = Scatterer('S1', MATERIAL=materials.Beryllium, KINETIC_ENERGY=230*_ureg.MeV) >>> s1 Scatterer: {'NAME': 'S1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'MATERIAL': <class 'georges.fermi.materials.Beryllium'>, 'KINETIC_ENERGY': <Quantity(230, 'megaelectronvolt')>, 'L': <Quantity(0.0, 'meter')>}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- MATERIAL='<class 'georges.fermi.materials.Vacuum'>'
Degrader material
- Type:
- KINETIC_ENERGY='0.0 megaelectronvolt'
Incoming beam energy
- Type:
Quantity
- L='0.0 meter'
Degrader length
- Type:
Quantity
Default initializer for all Commands.
- PARAMETERS: dict = {'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'KINETIC_ENERGY': (<Quantity(0.0, 'megaelectronvolt')>, 'Incoming beam energy'), 'L': (<Quantity(0.0, 'meter')>, 'Degrader length'), 'MATERIAL': (<class 'georges.fermi.materials.Vacuum'>, 'Degrader material'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).')}#
Parameters of the element, with their default value and their description .
- property parameters: List[float]#
- class georges.manzoni.elements.scatterers.Degrader(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
MaterialElement
Define a Degrader.
- PARAMETERS#
Dictionary containing the parameters of the Degrader with their default values.
- Type:
dict
Examples
>>> d1 = Degrader('D1', MATERIAL=materials.Beryllium, L=5*_ureg.cm, KINETIC_ENERGY=230*_ureg.MeV, ... WITH_LOSSES=True) >>> d1 Degrader: {'NAME': 'D1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'MATERIAL': <class 'georges.fermi.materials.Beryllium'>, 'KINETIC_ENERGY': <Quantity(230, 'megaelectronvolt')>, 'L': <Quantity(5, 'centimeter')>, 'WITH_LOSSES': True}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- MATERIAL='<class 'georges.fermi.materials.Vacuum'>'
Degrader material
- Type:
- KINETIC_ENERGY='0.0 megaelectronvolt'
Incoming beam energy
- Type:
Quantity
- L='0.0 meter'
Degrader length
- Type:
Quantity
- WITH_LOSSES='False'
Boolean to compute losses and dpp
- Type:
bool
Default initializer for all Commands.
- PARAMETERS: dict = {'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'KINETIC_ENERGY': (<Quantity(0.0, 'megaelectronvolt')>, 'Incoming beam energy'), 'L': (<Quantity(0.0, 'meter')>, 'Degrader length'), 'MATERIAL': (<class 'georges.fermi.materials.Vacuum'>, 'Degrader material'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).'), 'WITH_LOSSES': (False, 'Boolean to compute losses and dpp')}#
Parameters of the element, with their default value and their descriptions.
- property parameters: List[float]#
- class georges.manzoni.elements.scatterers.BeamStop(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
MaterialElement
Define a BeamStop.
- PARAMETERS#
Dictionary containing the parameters of the BeamStop with their default values.
- Type:
dict
Examples
>>> b1 = BeamStop('B1', MATERIAL=materials.Beryllium, L=5*_ureg.cm, KINETIC_ENERGY=230*_ureg.MeV, ... RADIUS=3*_ureg.cm) >>> b1 BeamStop: {'NAME': 'B1', 'AT_ENTRY': <Quantity(0, 'meter')>, 'AT_CENTER': <Quantity(0, 'meter')>, 'AT_EXIT': <Quantity(0, 'meter')>, 'MATERIAL': <class 'georges.fermi.materials.Beryllium'>, 'L': <Quantity(5, 'centimeter')>, 'RADIUS': <Quantity(3, 'centimeter')>, 'KINETIC_ENERGY': <Quantity(230, 'megaelectronvolt')>}
Command attributes
- NAME=''
Primary label for the Manzoni command (default: auto-generated hash).
- Type:
str
- AT_ENTRY='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_CENTER='0 meter'
Entrance position of the element.
- Type:
Quantity
- AT_EXIT='0 meter'
Exit position of the element.
- Type:
Quantity
- MATERIAL='<class 'georges.fermi.materials.Vacuum'>'
Beam Stop material
- Type:
- L='0.0 meter'
Beam Stop length
- Type:
Quantity
- RADIUS='0.0 meter'
Beam Stop radius
- Type:
Quantity
- KINETIC_ENERGY='0.0 megaelectronvolt'
Incoming beam energy
- Type:
Quantity
Default initializer for all Commands.
- PARAMETERS: dict = {'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'KINETIC_ENERGY': (<Quantity(0.0, 'megaelectronvolt')>, 'Incoming beam energy'), 'L': (<Quantity(0.0, 'meter')>, 'Beam Stop length'), 'MATERIAL': (<class 'georges.fermi.materials.Vacuum'>, 'Beam Stop material'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).'), 'RADIUS': (<Quantity(0.0, 'meter')>, 'Beam Stop radius')}#
Parameters of the element, with their default value and their description .
- property parameters: list#
- class georges.manzoni.elements.scatterers.Gap(name: str = '', integrator: ~georges.manzoni.integrators.IntegratorType = <class 'georges.manzoni.integrators.MadXIntegrator'>, *params, **kwargs)[source]#
Bases:
Degrader
Default initializer for all Commands.
- PARAMETERS: dict = {'AT_CENTER': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_ENTRY': (<Quantity(0, 'meter')>, 'Entrance position of the element.'), 'AT_EXIT': (<Quantity(0, 'meter')>, 'Exit position of the element.'), 'KINETIC_ENERGY': (<Quantity(0.0, 'megaelectronvolt')>, 'Incoming beam energy'), 'L': (<Quantity(0.0, 'meter')>, 'Degrader length'), 'MATERIAL': (<class 'georges.fermi.materials.Vacuum'>, 'Degrader material'), 'NAME': ('', 'Primary label for the Manzoni command (default: auto-generated hash).'), 'WITH_LOSSES': (False, 'Boolean to compute losses and dpp')}#
Parameters of the element, with their default value and their descriptions.
Module contents#
The elements submodule contains the physical implementation of the different beamline elements, namely:
Drifts
Dipoles
Quadrupoles
Sextupoles
Multipoles (magnets with a combined dipolar, quadrupolar and sextupolar function),
Collimators (rectangular, circular and elliptical);
- Scatterers
thin materials that interact with the particles and only modify the transverse angle along the two transverse axes
- Degraders
thick materials which combine particle interaction with a simple drift type propagation along the material