Geant4  10.02.p02
F04GlobalField Class Reference

#include <F04GlobalField.hh>

+ Inheritance diagram for F04GlobalField:
+ Collaboration diagram for F04GlobalField:

Public Member Functions

virtual ~F04GlobalField ()
 
virtual void GetFieldValue (const G4double *point, G4double *field) const
 GetFieldValue() returns the field value at a given point[]. field is really field[6]: Bx,By,Bz,Ex,Ey,Ez. point[] is in global coordinates: x,y,z,t. More...
 
virtual G4bool DoesFieldChangeEnergy () const
 DoesFieldChangeEnergy() returns true. More...
 
void AddElementField (F04ElementField *f)
 AddElementField() adds the ElementField object for a single element to the global field. More...
 
void Clear ()
 Clear() removes all ElementField-s from the global object, and destroys them. Used before the geometry is completely re-created. More...
 
void ConstructField ()
 constructs all field tracking objects More...
 
void SetStepperType (G4int i)
 Set the Stepper types. More...
 
void SetStepper ()
 Set the Stepper. More...
 
void SetMinStep (G4double stp)
 Set the minimum step length. More...
 
void SetDeltaChord (G4double dcr)
 Set the delta chord length. More...
 
void SetDeltaOneStep (G4double stp)
 Set the delta one step length. More...
 
void SetDeltaIntersection (G4double its)
 Set the delta intersection length. More...
 
void SetEpsMin (G4double eps)
 Set the minimum eps length. More...
 
void SetEpsMax (G4double eps)
 Set the maximum eps length. More...
 
FieldListGetFields ()
 Return the list of Element Fields. More...
 
- Public Member Functions inherited from G4ElectroMagneticField
 G4ElectroMagneticField ()
 
virtual ~G4ElectroMagneticField ()
 
 G4ElectroMagneticField (const G4ElectroMagneticField &r)
 
G4ElectroMagneticFieldoperator= (const G4ElectroMagneticField &p)
 
virtual void GetFieldValue (const G4double Point[4], G4double *Bfield) const =0
 
- Public Member Functions inherited from G4Field
 G4Field (G4bool gravityOn=false)
 
 G4Field (const G4Field &)
 
virtual ~G4Field ()
 
G4Fieldoperator= (const G4Field &p)
 
G4bool IsGravityActive () const
 
void SetGravityActive (G4bool OnOffFlag)
 
virtual G4FieldClone () const
 

Static Public Member Functions

static F04GlobalFieldGetObject (F04DetectorConstruction *const)
 GetObject() returns the single F04GlobalField object. It is constructed, if necessary. More...
 
static F04GlobalFieldGetObject ()
 

Protected Member Functions

G4FieldManagerGetGlobalFieldManager ()
 Get the global field manager. More...
 

Private Member Functions

 F04GlobalField (F04DetectorConstruction *const)
 
 F04GlobalField (const F04GlobalField &)
 
F04GlobalFieldoperator= (const F04GlobalField &)
 
void SetupArray ()
 

Private Attributes

G4int fNfp
 
G4bool fFirst
 
FieldListfFields
 
const F04ElementField ** fFp
 
G4int fStepperType
 
G4double fMinStep
 
G4double fDeltaChord
 
G4double fDeltaOneStep
 
G4double fDeltaIntersection
 
G4double fEpsMin
 
G4double fEpsMax
 
G4EqEMFieldWithSpinfEquation
 
G4FieldManagerfFieldManager
 
G4PropagatorInFieldfFieldPropagator
 
G4MagIntegratorStepperfStepper
 
G4ChordFinderfChordFinder
 
F04FieldMessengerfFieldMessenger
 
F04DetectorConstructionfDetectorConstruction
 

Static Private Attributes

static G4ThreadLocal
F04GlobalField
fObject = 0
 

Detailed Description

Definition at line 68 of file F04GlobalField.hh.

Constructor & Destructor Documentation

F04GlobalField::F04GlobalField ( F04DetectorConstruction * const  det)
private

Definition at line 55 of file F04GlobalField.cc.

References ConstructField(), fFieldMessenger, fFields, fFirst, fFp, fNfp, fObject, and fStepperType.

Referenced by GetObject().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

F04GlobalField::F04GlobalField ( const F04GlobalField )
private
F04GlobalField::~F04GlobalField ( )
virtual

Definition at line 91 of file F04GlobalField.cc.

References Clear(), fChordFinder, fEquation, fFieldMessenger, fFields, and fStepper.

+ Here is the call graph for this function:

Member Function Documentation

void F04GlobalField::AddElementField ( F04ElementField f)
inline

AddElementField() adds the ElementField object for a single element to the global field.

Definition at line 99 of file F04GlobalField.hh.

References fFields.

Referenced by F04ElementField::F04ElementField().

+ Here is the caller graph for this function:

void F04GlobalField::Clear ( )

Clear() removes all ElementField-s from the global object, and destroys them. Used before the geometry is completely re-created.

Definition at line 292 of file F04GlobalField.cc.

References fFields, fFirst, fFp, and fNfp.

Referenced by ConstructField(), and ~F04GlobalField().

+ Here is the caller graph for this function:

void F04GlobalField::ConstructField ( )
virtual G4bool F04GlobalField::DoesFieldChangeEnergy ( ) const
inlinevirtual

DoesFieldChangeEnergy() returns true.

Implements G4ElectroMagneticField.

Definition at line 95 of file F04GlobalField.hh.

FieldList* F04GlobalField::GetFields ( )
inline

Return the list of Element Fields.

Definition at line 137 of file F04GlobalField.hh.

References fFields.

void F04GlobalField::GetFieldValue ( const G4double point,
G4double field 
) const
virtual

GetFieldValue() returns the field value at a given point[]. field is really field[6]: Bx,By,Bz,Ex,Ey,Ez. point[] is in global coordinates: x,y,z,t.

Definition at line 267 of file F04GlobalField.cc.

References F04ElementField::AddFieldValue(), fFirst, fFp, fNfp, and F04ElementField::IsInBoundingBox().

+ Here is the call graph for this function:

G4FieldManager * F04GlobalField::GetGlobalFieldManager ( )
protected

Get the global field manager.

Definition at line 259 of file F04GlobalField.cc.

References G4TransportationManager::GetFieldManager(), and G4TransportationManager::GetTransportationManager().

Referenced by ConstructField().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

F04GlobalField * F04GlobalField::GetObject ( F04DetectorConstruction * const  det)
static

GetObject() returns the single F04GlobalField object. It is constructed, if necessary.

Definition at line 201 of file F04GlobalField.cc.

References F04GlobalField(), and fObject.

+ Here is the call graph for this function:

F04GlobalField * F04GlobalField::GetObject ( )
static

Definition at line 209 of file F04GlobalField.cc.

References fObject.

Referenced by F04DetectorConstruction::ConstructSDandField(), and F04ElementField::F04ElementField().

+ Here is the caller graph for this function:

F04GlobalField& F04GlobalField::operator= ( const F04GlobalField )
private
void F04GlobalField::SetDeltaChord ( G4double  dcr)
inline

Set the delta chord length.

Definition at line 122 of file F04GlobalField.hh.

References fDeltaChord.

Referenced by F04FieldMessenger::SetNewValue().

+ Here is the caller graph for this function:

void F04GlobalField::SetDeltaIntersection ( G4double  its)
inline

Set the delta intersection length.

Definition at line 128 of file F04GlobalField.hh.

References fDeltaIntersection.

void F04GlobalField::SetDeltaOneStep ( G4double  stp)
inline

Set the delta one step length.

Definition at line 125 of file F04GlobalField.hh.

References fDeltaOneStep.

void F04GlobalField::SetEpsMax ( G4double  eps)
inline

Set the maximum eps length.

Definition at line 134 of file F04GlobalField.hh.

References eps, and fEpsMax.

Referenced by F04FieldMessenger::SetNewValue().

+ Here is the caller graph for this function:

void F04GlobalField::SetEpsMin ( G4double  eps)
inline

Set the minimum eps length.

Definition at line 131 of file F04GlobalField.hh.

References eps, and fEpsMin.

Referenced by F04FieldMessenger::SetNewValue().

+ Here is the caller graph for this function:

void F04GlobalField::SetMinStep ( G4double  stp)
inline

Set the minimum step length.

Definition at line 119 of file F04GlobalField.hh.

References fMinStep.

Referenced by F04FieldMessenger::SetNewValue().

+ Here is the caller graph for this function:

void F04GlobalField::SetStepper ( )

Set the Stepper.

Definition at line 217 of file F04GlobalField.cc.

References fEquation, fStepper, fStepperType, G4cout, and G4endl.

Referenced by ConstructField().

+ Here is the caller graph for this function:

void F04GlobalField::SetStepperType ( G4int  i)
inline

Set the Stepper types.

Definition at line 113 of file F04GlobalField.hh.

References fStepperType.

Referenced by F04FieldMessenger::SetNewValue().

+ Here is the caller graph for this function:

void F04GlobalField::SetupArray ( )
private

Definition at line 310 of file F04GlobalField.cc.

References fFields, fFirst, fFp, and fNfp.

Member Data Documentation

G4ChordFinder* F04GlobalField::fChordFinder
private

Definition at line 175 of file F04GlobalField.hh.

Referenced by ConstructField(), and ~F04GlobalField().

G4double F04GlobalField::fDeltaChord
private

Definition at line 160 of file F04GlobalField.hh.

Referenced by ConstructField(), and SetDeltaChord().

G4double F04GlobalField::fDeltaIntersection
private

Definition at line 162 of file F04GlobalField.hh.

Referenced by ConstructField(), and SetDeltaIntersection().

G4double F04GlobalField::fDeltaOneStep
private

Definition at line 161 of file F04GlobalField.hh.

Referenced by ConstructField(), and SetDeltaOneStep().

F04DetectorConstruction* F04GlobalField::fDetectorConstruction
private

Definition at line 179 of file F04GlobalField.hh.

Referenced by ConstructField().

G4double F04GlobalField::fEpsMax
private

Definition at line 164 of file F04GlobalField.hh.

Referenced by ConstructField(), and SetEpsMax().

G4double F04GlobalField::fEpsMin
private

Definition at line 163 of file F04GlobalField.hh.

Referenced by ConstructField(), and SetEpsMin().

G4EqEMFieldWithSpin* F04GlobalField::fEquation
private

Definition at line 170 of file F04GlobalField.hh.

Referenced by ConstructField(), SetStepper(), and ~F04GlobalField().

G4FieldManager* F04GlobalField::fFieldManager
private

Definition at line 172 of file F04GlobalField.hh.

Referenced by ConstructField().

F04FieldMessenger* F04GlobalField::fFieldMessenger
private

Definition at line 177 of file F04GlobalField.hh.

Referenced by F04GlobalField(), and ~F04GlobalField().

G4PropagatorInField* F04GlobalField::fFieldPropagator
private

Definition at line 173 of file F04GlobalField.hh.

Referenced by ConstructField().

FieldList* F04GlobalField::fFields
private
G4bool F04GlobalField::fFirst
private

Definition at line 149 of file F04GlobalField.hh.

Referenced by Clear(), F04GlobalField(), GetFieldValue(), and SetupArray().

const F04ElementField** F04GlobalField::fFp
private

Definition at line 153 of file F04GlobalField.hh.

Referenced by Clear(), F04GlobalField(), GetFieldValue(), and SetupArray().

G4double F04GlobalField::fMinStep
private

Definition at line 159 of file F04GlobalField.hh.

Referenced by ConstructField(), and SetMinStep().

G4int F04GlobalField::fNfp
private

Definition at line 148 of file F04GlobalField.hh.

Referenced by Clear(), F04GlobalField(), GetFieldValue(), and SetupArray().

G4ThreadLocal F04GlobalField * F04GlobalField::fObject = 0
staticprivate

Definition at line 146 of file F04GlobalField.hh.

Referenced by F04GlobalField(), and GetObject().

G4MagIntegratorStepper* F04GlobalField::fStepper
private

Definition at line 174 of file F04GlobalField.hh.

Referenced by ConstructField(), SetStepper(), and ~F04GlobalField().

G4int F04GlobalField::fStepperType
private

Definition at line 157 of file F04GlobalField.hh.

Referenced by F04GlobalField(), SetStepper(), and SetStepperType().


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