Belle II Software development
|
The GeoMagneticField class. More...
#include <GeoMagneticField.h>
Public Member Functions | |
GeoMagneticField () | |
Constructor of the GeoMagneticField class. | |
virtual | ~GeoMagneticField () |
The destructor of the GeoMagneticField class. | |
virtual void | create (const GearDir &content, G4LogicalVolume &topVolume, geometry::GeometryTypes type) override |
Creates the global ROOT objects and prepares everything for other creators. | |
virtual void | createFromDB (const std::string &, G4LogicalVolume &, geometry::GeometryTypes) override |
Nothing to be done when creating from DB, the payload should be found automatically. | |
virtual void | createPayloads (const GearDir &content, const IntervalOfValidity &iov) override |
Function to create the geometry database. | |
MagneticField | createConfiguration (const GearDir &content) |
Create a Database configuration from Gearbox parameters. | |
BELLE2_DEFINE_EXCEPTION (DBNotImplemented, "Cannot create geometry from Database.") | |
Exception that will be thrown in createFromDB if member is not yet implemented by creator. | |
Protected Types | |
typedef std::map< std::string, boost::function< void(const GearDir &) > > | CompTypeMap |
Typedef for the map connecting the name of the component to the method reading the parameters. | |
Protected Member Functions | |
void | readConstantBField (const GearDir &component) |
Reads the parameters for a homogeneous magnetic field and adds the component to the global magnetic field. | |
void | readRadialBField (const GearDir &component) |
Reads the parameters for a radial magnetic field and adds the component to the global magnetic field. | |
void | readQuadBField (const GearDir &component) |
Reads the parameters for a quadrupole magnetic field inside beam pipes and adds the component to the global magnetic field. | |
void | readBeamlineBField (const GearDir &component) |
Reads the 3D Bfield map and parameters near beam pipes and adds the component to the global magnetic field. | |
void | readKlm1BField (const GearDir &component) |
Reads the 2D Bfield map and parameters outside of solenoid and adds the component to the global magnetic field. | |
void | read3dBField (const GearDir &component) |
Reads the parameters for 3d magnetic field (r,phi,z). | |
void | addConstantBField (const GearDir &component, MagneticField &fieldmap) |
Add a constant field component to a magnetic field configuration for the DB. | |
void | add3dBField (const GearDir &component, MagneticField &fielmap) |
Add a 3D field component to a magnetic field configuration for the DB. | |
Protected Attributes | |
CompTypeMap | m_componentTypeMap |
Maps the name of the component to the function reading the parameters. | |
The GeoMagneticField class.
The global creator for the magnetic field of the Belle II detector. It supports homogeneous and radial fields. Special field implementations for subdetectors should be added to the Belle II magnetic field inside the subdetectors' creators.
Definition at line 35 of file GeoMagneticField.h.
|
protected |
Typedef for the map connecting the name of the component to the method reading the parameters.
Definition at line 69 of file GeoMagneticField.h.
GeoMagneticField | ( | ) |
Constructor of the GeoMagneticField class.
Definition at line 47 of file GeoMagneticField.cc.
|
protected |
Add a 3D field component to a magnetic field configuration for the DB.
Definition at line 90 of file GeoMagneticField.cc.
|
protected |
Add a constant field component to a magnetic field configuration for the DB.
Definition at line 76 of file GeoMagneticField.cc.
|
overridevirtual |
Creates the global ROOT objects and prepares everything for other creators.
content | A reference to the content part of the parameter description, which should to be used to create the ROOT objects. |
topVolume | Geant4 logical top volume. |
type | Geometry type. |
Implements CreatorBase.
Definition at line 146 of file GeoMagneticField.cc.
MagneticField createConfiguration | ( | const GearDir & | content | ) |
Create a Database configuration from Gearbox parameters.
Definition at line 61 of file GeoMagneticField.cc.
|
inlineoverridevirtual |
Nothing to be done when creating from DB, the payload should be found automatically.
Reimplemented from CreatorBase.
Definition at line 59 of file GeoMagneticField.h.
|
overridevirtual |
Function to create the geometry database.
This function should be implemented to convert Gearbox parameters to one ore more database payloads
content | GearDir pointing to the parameters which should be used for construction |
iov | interval of validity to use when generating payloads |
Reimplemented from CreatorBase.
Definition at line 139 of file GeoMagneticField.cc.
|
protected |
Reads the parameters for 3d magnetic field (r,phi,z).
component | The GearDir pointing to the component parameter block from which the parameters should be read. |
Definition at line 290 of file GeoMagneticField.cc.
|
protected |
Reads the 3D Bfield map and parameters near beam pipes and adds the component to the global magnetic field.
Definition at line 239 of file GeoMagneticField.cc.
|
protected |
Reads the parameters for a homogeneous magnetic field and adds the component to the global magnetic field.
component | The GearDir pointing to the component parameter block from which the parameters should be read. |
Definition at line 174 of file GeoMagneticField.cc.
|
protected |
Reads the 2D Bfield map and parameters outside of solenoid and adds the component to the global magnetic field.
Magnetic field map in Belle I are used.
Definition at line 262 of file GeoMagneticField.cc.
|
protected |
Reads the parameters for a quadrupole magnetic field inside beam pipes and adds the component to the global magnetic field.
component | The GearDir pointing to the component parameter block from which the parameters should be read. |
Definition at line 218 of file GeoMagneticField.cc.
|
protected |
Reads the parameters for a radial magnetic field and adds the component to the global magnetic field.
component | The GearDir pointing to the component parameter block from which the parameters should be read. |
Definition at line 188 of file GeoMagneticField.cc.
|
protected |
Maps the name of the component to the function reading the parameters.
Definition at line 70 of file GeoMagneticField.h.