ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4FieldManager Class Reference

#include <geant4/tree/geant4-10.6-release/source/geometry/magneticfield/include/G4FieldManager.hh>

+ Collaboration diagram for G4FieldManager:

Public Member Functions

 G4FieldManager (G4Field *detectorField=nullptr, G4ChordFinder *pChordFinder=nullptr, G4bool b=true)
 
 G4FieldManager (G4MagneticField *detectorMagneticField)
 
virtual ~G4FieldManager ()
 
 G4FieldManager (const G4FieldManager &)=delete
 
G4FieldManageroperator= (const G4FieldManager &)=delete
 
G4bool SetDetectorField (G4Field *detectorField, G4int failMode=0)
 
void ProposeDetectorField (G4Field *detectorField)
 
void ChangeDetectorField (G4Field *detectorField)
 
const G4FieldGetDetectorField () const
 
G4bool DoesFieldExist () const
 
void CreateChordFinder (G4MagneticField *detectorMagField)
 
void SetChordFinder (G4ChordFinder *aChordFinder)
 
G4ChordFinderGetChordFinder ()
 
const G4ChordFinderGetChordFinder () const
 
virtual void ConfigureForTrack (const G4Track *)
 
G4double GetDeltaIntersection () const
 
G4double GetDeltaOneStep () const
 
void SetAccuraciesWithDeltaOneStep (G4double valDeltaOneStep)
 
void SetDeltaOneStep (G4double valueD1step)
 
void SetDeltaIntersection (G4double valueDintersection)
 
G4double GetMinimumEpsilonStep () const
 
void SetMinimumEpsilonStep (G4double newEpsMin)
 
G4double GetMaximumEpsilonStep () const
 
void SetMaximumEpsilonStep (G4double newEpsMax)
 
G4bool DoesFieldChangeEnergy () const
 
void SetFieldChangesEnergy (G4bool value)
 
virtual G4FieldManagerClone () const
 

Private Member Functions

void InitialiseFieldChangesEnergy ()
 

Private Attributes

G4FieldfDetectorField = nullptr
 
G4ChordFinderfChordFinder = nullptr
 
G4bool fAllocatedChordFinder = false
 
const G4double fEpsilonMinDefault = 5.0e-5
 
const G4double fEpsilonMaxDefault = 1.0e-3
 
G4bool fFieldChangesEnergy = false
 
G4double fDelta_One_Step_Value
 
G4double fDelta_Intersection_Val
 
G4double fEpsilonMin
 
G4double fEpsilonMax
 

Static Private Attributes

static G4double fDefault_Delta_One_Step_Value = 0.01 * millimeter
 
static G4double fDefault_Delta_Intersection_Val = 0.001 * millimeter
 

Detailed Description

Definition at line 84 of file G4FieldManager.hh.

View newest version in sPHENIX GitHub at line 84 of file G4FieldManager.hh

Constructor & Destructor Documentation

G4FieldManager::G4FieldManager ( G4Field detectorField = nullptr,
G4ChordFinder pChordFinder = nullptr,
G4bool  b = true 
)

Definition at line 41 of file G4FieldManager.cc.

View newest version in sPHENIX GitHub at line 41 of file G4FieldManager.cc

References G4Field::DoesFieldChangeEnergy(), fFieldChangesEnergy, and G4FieldManagerStore::Register().

Referenced by Clone().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4FieldManager::G4FieldManager ( G4MagneticField detectorMagneticField)

Definition at line 65 of file G4FieldManager.cc.

View newest version in sPHENIX GitHub at line 65 of file G4FieldManager.cc

References fChordFinder, and G4FieldManagerStore::Register().

+ Here is the call graph for this function:

G4FieldManager::~G4FieldManager ( )
virtual

Definition at line 139 of file G4FieldManager.cc.

View newest version in sPHENIX GitHub at line 139 of file G4FieldManager.cc

References G4FieldManagerStore::DeRegister(), fAllocatedChordFinder, and fChordFinder.

+ Here is the call graph for this function:

G4FieldManager::G4FieldManager ( const G4FieldManager )
delete

Member Function Documentation

void G4FieldManager::ChangeDetectorField ( G4Field detectorField)
inline
G4FieldManager * G4FieldManager::Clone ( ) const
virtual

Definition at line 79 of file G4FieldManager.cc.

View newest version in sPHENIX GitHub at line 79 of file G4FieldManager.cc

References G4Field::Clone(), CreateChordFinder(), fAllocatedChordFinder, fChordFinder, fDelta_Intersection_Val, fDelta_One_Step_Value, fDetectorField, fEpsilonMax, fEpsilonMin, fFieldChangesEnergy, and G4FieldManager().

Referenced by G4VUserDetectorConstruction::CloneF().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4FieldManager::ConfigureForTrack ( const G4Track )
virtual

Definition at line 134 of file G4FieldManager.cc.

View newest version in sPHENIX GitHub at line 134 of file G4FieldManager.cc

Referenced by G4Transportation::AlongStepGetPhysicalInteractionLength(), G4CoupledTransportation::AlongStepGetPhysicalInteractionLength(), G4MonopoleTransportation::AlongStepGetPhysicalInteractionLength(), G4ITTransportation::AlongStepGetPhysicalInteractionLength(), and export_G4FieldManager().

+ Here is the caller graph for this function:

G4bool G4FieldManager::DoesFieldChangeEnergy ( ) const
inline

Referenced by G4Transportation::AlongStepGetPhysicalInteractionLength(), G4CoupledTransportation::AlongStepGetPhysicalInteractionLength(), and export_G4FieldManager().

+ Here is the caller graph for this function:

G4bool G4FieldManager::DoesFieldExist ( ) const
inline

Referenced by G4VFieldModel::DescribeYourselfTo(), G4ITTransportation::DoesGlobalFieldExist(), and export_G4FieldManager().

+ Here is the caller graph for this function:

G4ChordFinder* G4FieldManager::GetChordFinder ( )
inline

Referenced by G4ErrorPropagatorManager::InitFieldForBackwards().

+ Here is the caller graph for this function:

const G4ChordFinder* G4FieldManager::GetChordFinder ( ) const
inline
G4double G4FieldManager::GetDeltaIntersection ( ) const
inline

Referenced by export_G4FieldManager(), and G4PropagatorInField::RefreshIntersectionLocator().

+ Here is the caller graph for this function:

G4double G4FieldManager::GetDeltaOneStep ( ) const
inline

Referenced by G4PropagatorInField::ComputeStep(), PurgMagDetectorConstruction::ConstructSDandField(), and export_G4FieldManager().

+ Here is the caller graph for this function:

G4double G4FieldManager::GetMaximumEpsilonStep ( ) const
inline

Referenced by G4PropagatorInField::ComputeStep(), export_G4FieldManager(), and G4PropagatorInField::G4PropagatorInField().

+ Here is the caller graph for this function:

G4double G4FieldManager::GetMinimumEpsilonStep ( ) const
inline

Referenced by G4PropagatorInField::ComputeStep(), and export_G4FieldManager().

+ Here is the caller graph for this function:

void G4FieldManager::InitialiseFieldChangesEnergy ( )
private

Definition at line 168 of file G4FieldManager.cc.

View newest version in sPHENIX GitHub at line 168 of file G4FieldManager.cc

References G4Field::DoesFieldChangeEnergy(), fDetectorField, and fFieldChangesEnergy.

Referenced by SetDetectorField().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4FieldManager& G4FieldManager::operator= ( const G4FieldManager )
delete
void G4FieldManager::ProposeDetectorField ( G4Field detectorField)
inline
void G4FieldManager::SetAccuraciesWithDeltaOneStep ( G4double  valDeltaOneStep)
inline

Referenced by F04GlobalField::ConstructField(), ExUCNDetectorConstruction::ConstructSDandField(), F05DetectorConstruction::ConstructSDandField(), F06DetectorConstruction::ConstructSDandField(), and export_G4FieldManager().

+ Here is the caller graph for this function:

void G4FieldManager::SetDeltaIntersection ( G4double  valueDintersection)
inline

Referenced by CCalDetectorConstruction::Construct(), F04GlobalField::ConstructField(), ExUCNDetectorConstruction::ConstructSDandField(), F05DetectorConstruction::ConstructSDandField(), F06DetectorConstruction::ConstructSDandField(), and export_G4FieldManager().

+ Here is the caller graph for this function:

void G4FieldManager::SetDeltaOneStep ( G4double  valueD1step)
inline

Referenced by CCalDetectorConstruction::Construct(), LaserDrivenBeamLine::ConstructSDandField(), and export_G4FieldManager().

+ Here is the caller graph for this function:

G4bool G4FieldManager::SetDetectorField ( G4Field detectorField,
G4int  failMode = 0 
)

Definition at line 180 of file G4FieldManager.cc.

View newest version in sPHENIX GitHub at line 180 of file G4FieldManager.cc

References FatalException, fChordFinder, fDetectorField, G4endl, G4Exception(), G4VIntegrationDriver::GetEquationOfMotion(), G4ChordFinder::GetIntegrationDriver(), InitialiseFieldChangesEnergy(), JustWarning, max, and G4EquationOfMotion::SetFieldObj().

Referenced by EICG4LumiDetector::AddLumiMag_MagCore(), CCalDetectorConstruction::Construct(), F04GlobalField::ConstructField(), G4MonopoleFieldSetup::ConstructMagField(), PHG4BeamlineMagnetDetector::ConstructMe(), G4JLeicBeamLineMagnetDetector::ConstructMe(), RE01DetectorConstruction::ConstructSDandField(), RE05DetectorConstruction::ConstructSDandField(), ExUCNDetectorConstruction::ConstructSDandField(), B5DetectorConstruction::ConstructSDandField(), F05DetectorConstruction::ConstructSDandField(), F06DetectorConstruction::ConstructSDandField(), PurgMagDetectorConstruction::ConstructSDandField(), F01FieldSetup::CreateStepperAndChordFinder(), ExErrorMagneticField::ExErrorMagneticField(), ExN02MagneticField::ExN02MagneticField(), ExP01MagneticField::ExP01MagneticField(), export_G4FieldManager(), F01FieldSetup::InitialiseAll(), PHG4OuterHcalFieldSetup::PHG4OuterHcalFieldSetup(), BeamLineMagnetDetector::PostConstruction(), G4GlobalMagFieldMessenger::SetField(), ExErrorMagneticField::SetFieldValue(), ExP01MagneticField::SetFieldValue(), F03FieldSetup::SetFieldValue(), F02ElectricFieldSetup::SetFieldValue(), G4TBMagneticFieldSetup::SetFieldValue(), F01FieldSetup::SetFieldValue(), F03FieldSetup::SetLocalFieldValue(), ExN03DetectorConstruction::SetMagField(), DetectorConstruction::SetMagField(), ExN02MagneticField::SetMagFieldValue(), G4MonopoleFieldSetup::SetStepperAndChordFinder(), G4TBMagneticFieldSetup::UpdateField(), F03FieldSetup::UpdateField(), and F02ElectricFieldSetup::UpdateIntegrator().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4FieldManager::SetFieldChangesEnergy ( G4bool  value)
inline

Referenced by F04GlobalField::ConstructField(), and export_G4FieldManager().

+ Here is the caller graph for this function:

void G4FieldManager::SetMaximumEpsilonStep ( G4double  newEpsMax)
inline

Referenced by F06DetectorConstruction::ConstructSDandField(), LaserDrivenBeamLine::ConstructSDandField(), and export_G4FieldManager().

+ Here is the caller graph for this function:

void G4FieldManager::SetMinimumEpsilonStep ( G4double  newEpsMin)
inline

Referenced by F06DetectorConstruction::ConstructSDandField(), LaserDrivenBeamLine::ConstructSDandField(), and export_G4FieldManager().

+ Here is the caller graph for this function:

Member Data Documentation

G4bool G4FieldManager::fAllocatedChordFinder = false
private

Definition at line 188 of file G4FieldManager.hh.

View newest version in sPHENIX GitHub at line 188 of file G4FieldManager.hh

Referenced by Clone(), CreateChordFinder(), and ~G4FieldManager().

G4ChordFinder* G4FieldManager::fChordFinder = nullptr
private

Definition at line 185 of file G4FieldManager.hh.

View newest version in sPHENIX GitHub at line 185 of file G4FieldManager.hh

Referenced by Clone(), CreateChordFinder(), G4FieldManager(), SetDetectorField(), and ~G4FieldManager().

G4double G4FieldManager::fDefault_Delta_Intersection_Val = 0.001 * millimeter
staticprivate

Definition at line 198 of file G4FieldManager.hh.

View newest version in sPHENIX GitHub at line 198 of file G4FieldManager.hh

G4double G4FieldManager::fDefault_Delta_One_Step_Value = 0.01 * millimeter
staticprivate

Definition at line 197 of file G4FieldManager.hh.

View newest version in sPHENIX GitHub at line 197 of file G4FieldManager.hh

G4double G4FieldManager::fDelta_Intersection_Val
private

Definition at line 208 of file G4FieldManager.hh.

View newest version in sPHENIX GitHub at line 208 of file G4FieldManager.hh

Referenced by Clone().

G4double G4FieldManager::fDelta_One_Step_Value
private

Definition at line 207 of file G4FieldManager.hh.

View newest version in sPHENIX GitHub at line 207 of file G4FieldManager.hh

Referenced by Clone().

G4Field* G4FieldManager::fDetectorField = nullptr
private

Definition at line 184 of file G4FieldManager.hh.

View newest version in sPHENIX GitHub at line 184 of file G4FieldManager.hh

Referenced by Clone(), InitialiseFieldChangesEnergy(), and SetDetectorField().

G4double G4FieldManager::fEpsilonMax
private

Definition at line 212 of file G4FieldManager.hh.

View newest version in sPHENIX GitHub at line 212 of file G4FieldManager.hh

Referenced by Clone().

const G4double G4FieldManager::fEpsilonMaxDefault = 1.0e-3
private

Definition at line 195 of file G4FieldManager.hh.

View newest version in sPHENIX GitHub at line 195 of file G4FieldManager.hh

G4double G4FieldManager::fEpsilonMin
private

Definition at line 211 of file G4FieldManager.hh.

View newest version in sPHENIX GitHub at line 211 of file G4FieldManager.hh

Referenced by Clone().

const G4double G4FieldManager::fEpsilonMinDefault = 5.0e-5
private

Definition at line 194 of file G4FieldManager.hh.

View newest version in sPHENIX GitHub at line 194 of file G4FieldManager.hh

G4bool G4FieldManager::fFieldChangesEnergy = false
private

Definition at line 203 of file G4FieldManager.hh.

View newest version in sPHENIX GitHub at line 203 of file G4FieldManager.hh

Referenced by Clone(), G4FieldManager(), and InitialiseFieldChangesEnergy().


The documentation for this class was generated from the following files: