|
BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
|
Parameters - Element class with booleans. More...
#include <parameters.h>


Public Member Functions | |
| void | flush () |
| Reset the parameters to defaults and setMap. | |
| void | inherit_properties (const Element &e) |
| template<typename T > | |
| void | set_value (std::string property, T value, bool bExit=true) |
| Set method by property name and value. | |
| Parameters () | |
| Constructor. | |
Public Member Functions inherited from GMAD::Element | |
| void | print (int ident=0) const |
| print method | |
| void | flush () |
| flush method | |
| bool | isSpecial () const |
| check if element is of a special type | |
| double | property_lookup (std::string property_name) const |
| void | setSamplerInfo (std::string samplerType, std::string samplerName, double samplerRadius, int samplerParticleSetIDIn=-1) |
| set sampler info | |
| template<typename T > | |
| void | set_value (std::string property, T value, bool exceptionSafe=false) |
| Element () | |
| constructor | |
| void | set (const Parameters ¶ms) |
| set method from Parameters structure | |
| void | set (const Parameters ¶ms, std::string nameIn, ElementType typeIn) |
| set method from Parameters structure | |
Public Member Functions inherited from GMAD::Published< Element > | |
| bool | NameExists (const std::string &name) const |
| Published< Element >::template AttributeMap< T > & | attribute_map () const |
Data Fields | |
| std::map< std::string, bool > | setMap |
| Map that holds booleans for every member of element. | |
Data Fields inherited from GMAD::Element | |
| ElementType | type |
| element enum | |
| std::string | name |
| std::string | userTypeName |
| User component element type name. | |
| std::string | userParameters |
| String for passing user parameters through. | |
| double | l |
| length in metres | |
| double | scaling |
| Overall scaling of field strength. | |
| double | scalingFieldOuter |
| Extra arbitrary scaling for outer field - compounded with 'scaling'. | |
| double | ks |
| solenoid | |
| double | k1 |
| quadrupole | |
| double | k2 |
| sextupole | |
| double | k3 |
| octupole | |
| double | k4 |
| decapole | |
| double | angle |
| bending angle | |
| double | B |
| magnetic field | |
| double | e1 |
| input pole face rotation for bends | |
| double | e2 |
| output pole face rotation for bends | |
| double | fint |
| fringe field integral at the dipole entrance | |
| double | fintx |
| fringe field integral at the dipole exit | |
| double | fintK2 |
| second fringe field integral at the dipole entrance - for TRANSPORT matching | |
| double | fintxK2 |
| second fringe field integral at the dipole exit - for TRANSPORT matching | |
| double | hgap |
| half distance of pole separation for purposes of fringe fields - 'half gap' | |
| double | h1 |
| input pole face curvature for bends | |
| double | h2 |
| output pole face curvature for bends | |
| double | kick |
| fractional delta p for either h or v kicker | |
| double | hkick |
| fractional delta px for hkicker | |
| double | vkick |
| fractional delta py for vkicker | |
| std::list< double > | knl |
| multipole expansion coefficients | |
| std::list< double > | ksl |
| skew multipole expansion | |
| double | gradient |
| for rf cavities in V / m | |
| double | E |
| voltage for rf cavities in V that will be assumed over length l | |
| double | frequency |
| frequency for rf cavity in Hz | |
| double | phase |
| phase of rf cavity (rad) | |
| double | tOffset |
| time offset used for phase calculation (ns) | |
| std::string | fieldModulator |
| double | kg |
| gabor lens | |
| std::string | magnetGeometryType |
| double | horizontalWidth |
| bool | yokeOnInside |
| int | hStyle |
| -1 = unset; 0 = false (ie c style); 1 = true, use hstyle | |
| double | vhRatio |
| ratio of vertial to horizontal for some magnets | |
| double | coilWidthFraction |
| Fraction of available h space the coil will take up. | |
| double | coilHeightFraction |
| Fraction of availalbe v space the coil will take up. | |
| double | tilt |
| tilt | |
| double | xsize |
| double | ysize |
| collimator aperture or laser spotsize for laser | |
| double | xsizeOut |
| double | ysizeOut |
| collimator aperture or laser spotsize for laser | |
| double | xsizeLeft |
| double | xsizeRight |
| individual collimator jaw half widths | |
| double | jawTiltLeft |
| double | jawTiltRight |
| jaw collimator jaw tilts (angle in x-z plane) | |
| double | offsetX |
| offset X | |
| double | offsetY |
| offset Y | |
| double | xsize2 |
| double | ysize2 |
| size of the beam mask second aperture | |
| double | offsetX2 |
| double | offsetY2 |
| offset of the beam mask second aperture | |
| double | tilt2 |
| tilt of the beam mask second aperture | |
| std::string | outerShape |
| 'rectangular' or 'circular'. used in gascap and bmcol | |
| double | tscint |
| thickness of scintillating part of screen | |
| double | twindow |
| thickness of window | |
| double | tmount |
| thickness of the screen mount | |
| double | windowScreenGap |
| air gap between window and screen | |
| double | screenXSize |
| double | screenYSize |
| double | waveLength |
| for laser wire and 3d transforms | |
| double | phi |
| double | theta |
| double | psi |
| for 3d transforms | |
| double | axisX |
| double | axisY |
| double | axisZ |
| bool | axisAngle |
| double | wireDiameter |
| @[ for wirescanner | |
| double | wireLength |
| double | wireOffsetX |
| double | wireOffsetY |
| double | wireOffsetZ |
| double | wireAngle |
| std::list< std::string > | biasMaterialList |
| std::list< std::string > | biasVacuumList |
| physics biasing list for the vacuum | |
| std::list< std::string > | biasMaterialLVList |
| physics biasing list for specific LVs | |
| double | minimumKineticEnergy |
| minimum kinetic energy for user limits - respected on element by element basis | |
| std::string | samplerName |
| name of sampler (default empty) | |
| std::string | samplerType |
| element has a sampler of this type (default "none") | |
| double | samplerRadius |
| int | samplerParticleSetID |
| std::string | region |
| region with range cuts | |
| std::string | fieldOuter |
| Outer field. | |
| std::string | fieldVacuum |
| Vacuum field. | |
| std::string | fieldAll |
| Field for everything. | |
| std::string | geometryFile |
| For Element. File for external geometry. | |
| bool | stripOuterVolume |
| For Element. Make it an assembly. | |
| bool | autoColour |
| Automagically colour the external geometry. | |
| bool | elementLengthIsArcLength |
| For Element. Treat the length as arc length, if not chord. | |
| std::string | material |
| std::string | namedVacuumVolumes |
| For imported geometry - identify vacuum volumes. | |
| bool | markAsCollimator |
| std::string | spec |
| Arbitrary specification to pass to beamline builder. | |
| std::string | cavityModel |
| Name of geometry model object for rfconstantinz cavities. | |
| std::string | cavityFieldType |
| Name for type of field to use in a cavity. | |
| std::string | dicomDataPath |
| for CT, file for DICOM construction data | |
| std::string | dicomDataFile |
| for CT, file for DICOM construction data | |
| std::string | colour |
| Override colour for certain items. | |
| std::string | crystalLeft |
| std::string | crystalRight |
| std::string | crystalBoth |
| double | crystalAngleYAxisLeft |
| double | crystalAngleYAxisRight |
| std::string | coolingDefinition |
| For muon cooler. | |
| bool | angleSet |
| bool | scalingFieldOuterSet |
| std::list< Element > * | lst |
| in case the element is a list itself (line) | |
| double | kick1 |
| rmatrix elements, only 4x4 | |
| double | kick2 |
| rmatrix elements, only 4x4 | |
| double | kick3 |
| rmatrix elements, only 4x4 | |
| double | kick4 |
| rmatrix elements, only 4x4 | |
| double | rmat11 |
| rmatrix elements, only 4x4 | |
| double | rmat12 |
| rmatrix elements, only 4x4 | |
| double | rmat13 |
| rmatrix elements, only 4x4 | |
| double | rmat14 |
| rmatrix elements, only 4x4 | |
| double | rmat21 |
| rmatrix elements, only 4x4 | |
| double | rmat22 |
| rmatrix elements, only 4x4 | |
| double | rmat23 |
| rmatrix elements, only 4x4 | |
| double | rmat24 |
| rmatrix elements, only 4x4 | |
| double | rmat31 |
| rmatrix elements, only 4x4 | |
| double | rmat32 |
| rmatrix elements, only 4x4 | |
| double | rmat33 |
| rmatrix elements, only 4x4 | |
| double | rmat34 |
| rmatrix elements, only 4x4 | |
| double | rmat41 |
| rmatrix elements, only 4x4 | |
| double | rmat42 |
| rmatrix elements, only 4x4 | |
| double | rmat43 |
| rmatrix elements, only 4x4 | |
| double | rmat44 |
| rmatrix elements, only 4x4 | |
| double | beampipeThickness |
| beampipe information, new aperture model | |
| double | aper1 |
| beampipe information, new aperture model | |
| double | aper2 |
| beampipe information, new aperture model | |
| double | aper3 |
| beampipe information, new aperture model | |
| double | aper4 |
| beampipe information, new aperture model | |
| std::string | apertureType |
| beampipe information, new aperture model | |
| std::string | beampipeMaterial |
| beampipe information, new aperture model | |
| std::string | vacuumMaterial |
| beampipe information, new aperture model | |
| std::list< double > | layerThicknesses |
| for screen | |
| std::list< std::string > | layerMaterials |
| for screen | |
| std::list< int > | layerIsSampler |
| for screen | |
| double | screenPSize |
| for AWAKE spectrometer | |
| double | screenEndZ |
| for AWAKE spectrometer | |
| double | poleStartZ |
| for AWAKE spectrometer | |
| double | screenWidth |
| for AWAKE spectrometer | |
| double | awakeMagnetOffsetX |
| for AWAKE spectrometer | |
| std::string | windowmaterial |
| for AWAKE spectrometer | |
| std::string | scintmaterial |
| for AWAKE spectrometer | |
| std::string | mountmaterial |
| for AWAKE spectrometer | |
| double | xdir |
| for 3d transform and laser | |
| double | ydir |
| for 3d transform and laser | |
| double | zdir |
| for 3d transform and laser | |
| int | numberWedges |
| for degrader | |
| double | wedgeLength |
| for degrader | |
| double | degraderHeight |
| for degrader | |
| double | materialThickness |
| for degrader | |
| double | degraderOffset |
| for degrader | |
| std::string | laserBeam |
| for laserwire | |
| double | laserOffsetTheta |
| for laserwire | |
| double | laserOffsetPhi |
| for laserwire | |
| double | laserOffsetX |
| for laserwire | |
| double | laserOffsetY |
| for laserwire | |
| double | laserOffsetZ |
| for laserwire | |
| double | undulatorPeriod |
| for undulator | |
| double | undulatorGap |
| for undulator | |
| double | undulatorMagnetHeight |
| for undulator | |
| double | anodeLength |
| for gabor lens | |
| double | anodeRadius |
| for gabor lens | |
| double | anodeThickness |
| for gabor lens | |
| double | electrodeLength |
| for gabor lens | |
| double | electrodeRadius |
| for gabor lens | |
| double | electrodeThickness |
| for gabor lens | |
| double | tipThickness |
| for jaw collimator with tip | |
| std::string | tipMaterial |
| tip material | |
| std::string | bias |
| temporary string for bias setting | |
| std::string | biasMaterial |
| temporary string for bias setting | |
| std::string | biasVacuum |
| temporary string for bias setting | |
| std::string | biasMaterialLV |
| temporary string for bias setting | |
Additional Inherited Members | |
Protected Types inherited from GMAD::Published< Element > | |
| using | AttributeMap = typename std::unordered_map< std::string, T C::* > |
| Define AttributeMap of string and class member pointer. | |
Protected Member Functions inherited from GMAD::Element | |
| std::string | getPublishedName (const std::string &name) const |
| returns 'official' member name for property | |
Protected Member Functions inherited from GMAD::Published< Element > | |
| void | publish (const std::string &name, T C::*mp) |
| Make pointer to member from class C and type T with accessible with a name. | |
| void | set (Element *instance, const Element *instance2, const std::string &name) |
| Set member with name of class instance to value of second instance. | |
| AttributeMap< T > & | attribute_map () const |
| Access method to static map for type T and class C. | |
| T | get (const Element *instance, const std::string &name) const |
| Get method for class C. | |
| void | set (Element *instance, const std::string &name, double value) |
| void | set (Element *instance, const std::string &name, GMAD::Array *const &value) |
| void | set (Element *instance, const std::string &name, const T &value) |
Parameters - Element class with booleans.
This is a temporary storage class of the parameters before the actual Element is created. The booleans are needed for inheritance and extension of already created Elements. The class is a singleton.
Definition at line 44 of file parameters.h.
| Parameters::Parameters | ( | ) |
| void Parameters::flush | ( | ) |
Reset the parameters to defaults and setMap.
Definition at line 233 of file parameters.cc.
References GMAD::Element::flush(), and setMap.
Referenced by GMAD::Parser::ClearParams(), and GMAD::Parser::Initialise().


| void Parameters::inherit_properties | ( | const Element & | e | ) |
Copy parameters into temporary buffer params from element e Parameters already set in params have priority and are not overridden
Definition at line 241 of file parameters.cc.
References GMAD::Published< C >::set(), and setMap.
Referenced by GMAD::Parser::copy_element_to_params().


| void GMAD::Parameters::set_value | ( | std::string | property, |
| T | value, | ||
| bool | bExit = true |
||
| ) |
Set method by property name and value.
Definition at line 65 of file parameters.h.
References GMAD::Element::getPublishedName(), GMAD::Published< C >::set(), and setMap.

| std::map<std::string,bool> GMAD::Parameters::setMap |
Map that holds booleans for every member of element.
Definition at line 47 of file parameters.h.
Referenced by flush(), inherit_properties(), Parameters(), GMAD::Element::set(), GMAD::Element::set(), and set_value().