k4SimGeant4
|
SimG4ConstantMagneticFieldTool.h. More...
#include <SimG4Components/src/SimG4ConstantMagneticFieldTool.h>
Public Member Functions | |
SimG4ConstantMagneticFieldTool (const std::string &type, const std::string &name, const IInterface *parent) | |
Standard constructor. | |
virtual | ~SimG4ConstantMagneticFieldTool () |
Destructor. | |
virtual StatusCode | initialize () final |
Initialize method. | |
virtual StatusCode | finalize () final |
Finalize method. | |
virtual const G4MagneticField * | field () const final |
Get the magnetic field. | |
G4MagIntegratorStepper * | stepper (const std::string &, G4MagneticField *) const |
Get the stepper. | |
Public Member Functions inherited from ISimG4MagneticFieldTool | |
DeclareInterfaceID (ISimG4MagneticFieldTool, 1, 0) | |
Private Attributes | |
sim::ConstantField * | m_field |
Pointer to the actual Geant 4 magnetic field. | |
Gaudi::Property< bool > | m_fieldOn {this, "FieldOn", false, "Switch to turn field off"} |
Switch to turn field on or off (default is off). Set with property FieldOn. | |
Gaudi::Property< double > | m_minEps {this, "MinimumEpsilon", 0, "Minimum epsilon (see G4 documentation)"} |
Minimum epsilon (relative error of position / momentum, see G4 doc for more details). | |
Gaudi::Property< double > | m_maxEps {this, "MaximumEpsilon", 0, "Maximum epsilon (see G4 documentation)"} |
Maximum epsilon (relative error of position / momentum, see G4 doc for more details). | |
Gaudi::Property< double > | m_deltaChord {this, "DeltaChord", 0, "Missing distance for the chord finder"} |
This parameter governs accuracy of volume intersection, see G4 doc for more details. Set with property DeltaChord. | |
Gaudi::Property< double > | m_deltaOneStep {this, "DeltaOneStep", 0, "Delta(one-step)"} |
This parameter is roughly the position error which is acceptable in an integration step, see G4 doc for details. | |
Gaudi::Property< double > | m_maxStep {this, "MaximumStep", 1. * m, "Maximum step length in field (see G4 documentation)"} |
Upper limit of the step size, see G4 doc for more details. Set with property MaximumStep. | |
Gaudi::Property< double > | m_minStep {this, "MinimumStep", 0.01 * mm, "Minimum step length in field (see G4 documentation)"} |
Lower limit of the step size, see G4 doc for more details. Set with property MaximumStep. | |
Gaudi::Property< std::string > | m_integratorStepper {this, "IntegratorStepper", "NystromRK4", "Integrator stepper name"} |
Name of the integration stepper, defaults to NystromRK4. | |
Gaudi::Property< double > | m_fieldComponentX {this, "FieldComponentX", 0, "Field X component"} |
Field component in X direction. Set with property FieldComponentX. | |
Gaudi::Property< double > | m_fieldComponentY {this, "FieldComponentY", 0, "Field Y component"} |
Field component in Y direction. Set with property FieldComponentY. | |
Gaudi::Property< double > | m_fieldComponentZ {this, "FieldComponentZ", -4 * tesla, "Field Z component"} |
Field component in Z direction. Set with property FieldComponentZ. | |
Gaudi::Property< double > | m_fieldRadMax {this, "FieldRMax", 6 * m, "Field max radius"} |
Size of the field in radial direction. Set with property FieldRMax. | |
Gaudi::Property< double > | m_fieldZMax {this, "FieldZMax", 20. * m, "Field max Z"} |
Size of the field along the beam line. Set with property FieldZMax. | |
SimG4ConstantMagneticFieldTool.h.
Implementation of ISimG4MagneticFieldTool that generates a constant field
SimG4ConstantMagneticFieldTool::SimG4ConstantMagneticFieldTool | ( | const std::string & | type, |
const std::string & | name, | ||
const IInterface * | parent ) |
Standard constructor.
|
virtual |
Destructor.
|
finalvirtual |
|
finalvirtual |
Finalize method.
|
finalvirtual |
Initialize method.
G4MagIntegratorStepper * SimG4ConstantMagneticFieldTool::stepper | ( | const std::string & | name, |
G4MagneticField * | field ) const |
Get the stepper.
|
private |
This parameter governs accuracy of volume intersection, see G4 doc for more details. Set with property DeltaChord.
|
private |
This parameter is roughly the position error which is acceptable in an integration step, see G4 doc for details.
Set with property DeltaOneStep
|
private |
Pointer to the actual Geant 4 magnetic field.
|
private |
Field component in X direction. Set with property FieldComponentX.
|
private |
Field component in Y direction. Set with property FieldComponentY.
|
private |
Field component in Z direction. Set with property FieldComponentZ.
|
private |
Switch to turn field on or off (default is off). Set with property FieldOn.
|
private |
Size of the field in radial direction. Set with property FieldRMax.
|
private |
Size of the field along the beam line. Set with property FieldZMax.
|
private |
Name of the integration stepper, defaults to NystromRK4.
|
private |
Maximum epsilon (relative error of position / momentum, see G4 doc for more details).
Set with property MaximumEpsilon
|
private |
Upper limit of the step size, see G4 doc for more details. Set with property MaximumStep.
|
private |
Minimum epsilon (relative error of position / momentum, see G4 doc for more details).
Set with property MinimumEpsilon
|
private |
Lower limit of the step size, see G4 doc for more details. Set with property MaximumStep.