Belle II Software  release-08-01-10
G4MonopoleFieldSetup.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 // modified from GEANT4 exoticphysics/monopole/*
10 
11 #pragma once
12 
13 #include <G4MagneticField.hh>
14 
15 class G4FieldManager;
16 class G4ChordFinder;
17 class G4MagIntegratorStepper;
18 
19 namespace Belle2 {
25  namespace Monopoles {
26 
27  class G4MonopoleEquation;
28 
34  public:
35 
44  void SwitchChordFinder(G4int val);
45 
52 
53  private:
54 
69 
70  G4FieldManager* fFieldManager ;
71  G4ChordFinder* fMonopoleChordFinder ;
72  G4ChordFinder* fbasf2ChordFinder ;
74  G4MagneticField* fMagneticField ;
75  G4MagIntegratorStepper* fMonopoleStepper ;
76  G4double fMinStep ;
80  };
81 
82  } //end Monopoles namespace
83 
85 } //end Belle2 namespace
Monopole equation of motion class.
Monopole field setup singleton class, that takes care of switching between conventional particle tran...
void SwitchChordFinder(G4int val)
Switches chord finder between 1 - basf2 FullSim chord finder 2 - monopole chord finder Since monopole...
G4FieldManager * fFieldManager
Field manager that holds current chord finder.
G4ChordFinder * fMonopoleChordFinder
Chord finder for monopoles.
G4MagneticField * fMagneticField
Magnetic field of basf2.
static G4MonopoleFieldSetup * fMonopoleFieldSetup
The instance of this class.
G4MagIntegratorStepper * fMonopoleStepper
Stepper for monopoles.
G4MonopoleEquation * fMonopoleEquation
Monopole equation of motion.
G4ChordFinder * fbasf2ChordFinder
Chord finder taken from FullSim of basf2.
static G4MonopoleFieldSetup * GetMonopoleFieldSetup()
Returns G4MonopoleFieldSetup instance.
G4MonopoleFieldSetup & operator=(const G4MonopoleFieldSetup &copy)
Assignment operator should be hidden.
G4MonopoleFieldSetup(const G4MonopoleFieldSetup &copy)
Copy constructor should be hidden.
Abstract base class for different kinds of events.