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

#include <geant4/tree/geant4-10.6-release/examples/extended/field/field04/include/F04ElementField.hh>

+ Inheritance diagram for F04ElementField:
+ Collaboration diagram for F04ElementField:

Public Member Functions

 F04ElementField (const G4ThreeVector, G4LogicalVolume *)
 Constructor.
 
void Construct ()
 the actual implementation constructs the F04ElementField
 
virtual ~F04ElementField ()
 Destructor.
 
void SetMaxStep (G4double stp)
 SetMaxStep(G4double) sets the max. step size.
 
G4double GetMaxStep ()
 GetMaxStep() returns the max. step size.
 
void SetColor (G4String c)
 SetColor(G4String) sets the color.
 
G4String GetColor ()
 GetColor() returns the color.
 
void SetGlobalPoint (const G4double point[4])
 
bool IsInBoundingBox (const G4double point[4]) const
 
virtual void AddFieldValue (const G4double point[4], G4double field[6]) const =0
 
virtual G4double GetLength ()=0
 
virtual G4double GetWidth ()=0
 
virtual G4double GetHeight ()=0
 

Static Public Member Functions

static G4VisAttributesGetVisAttribute (G4String color)
 GetVisAttribute() returns the appropriate G4VisAttributes.
 

Protected Attributes

G4LogicalVolumefVolume
 
G4AffineTransform fGlobal2local
 

Private Member Functions

F04ElementFieldoperator= (const F04ElementField &)
 

Private Attributes

G4String fColor
 
G4ThreeVector fCenter
 
G4double fMinX
 
G4double fMinY
 
G4double fMinZ
 
G4double fMaxX
 
G4double fMaxY
 
G4double fMaxZ
 
G4double fMaxStep
 
G4UserLimitsfUserLimits
 

Static Private Attributes

static G4ThreadLocal G4NavigatorfNavigator = 0
 

Detailed Description

Definition at line 52 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 52 of file F04ElementField.hh

Constructor & Destructor Documentation

F04ElementField::F04ElementField ( const G4ThreeVector  c,
G4LogicalVolume lv 
)

Constructor.

Definition at line 43 of file F04ElementField.cc.

View newest version in sPHENIX GitHub at line 43 of file F04ElementField.cc

References F04GlobalField::AddElementField(), c, DBL_MAX, fCenter, fColor, fMaxStep, fMaxX, fMaxY, fMaxZ, fMinX, fMinY, fMinZ, fUserLimits, fVolume, F04GlobalField::GetObject(), GetVisAttribute(), m, MeV, mm, ms, G4UserLimits::SetMaxAllowedStep(), G4LogicalVolume::SetUserLimits(), G4UserLimits::SetUserMaxTime(), G4UserLimits::SetUserMaxTrackLength(), G4UserLimits::SetUserMinEkine(), and G4LogicalVolume::SetVisAttributes().

+ Here is the call graph for this function:

virtual F04ElementField::~F04ElementField ( )
inlinevirtual

Destructor.

Definition at line 68 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 68 of file F04ElementField.hh

Member Function Documentation

virtual void F04ElementField::AddFieldValue ( const G4double  point[4],
G4double  field[6] 
) const
pure virtual

AddFieldValue() will add the field value for this element to field[]. Implementations must be sure to verify that point[] is within the field region, and do nothing if not. point[] is in global coordinates and geant4 units; x,y,z,t. field[] is in geant4 units; Bx,By,Bz,Ex,Ey,Ez. For efficiency, the caller may (but need not) call IsInBoundingBox(point), and only call this function if that returns true.

Implemented in F04SimpleSolenoid, and F04FocusSolenoid.

Referenced by F04GlobalField::GetFieldValue().

+ Here is the caller graph for this function:

G4String F04ElementField::GetColor ( )
inline

GetColor() returns the color.

Definition at line 89 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 89 of file F04ElementField.hh

References fColor.

virtual G4double F04ElementField::GetHeight ( )
pure virtual

Implemented in F04SimpleSolenoid.

Referenced by Construct().

+ Here is the caller graph for this function:

virtual G4double F04ElementField::GetLength ( )
pure virtual

Implemented in F04SimpleSolenoid.

Referenced by Construct().

+ Here is the caller graph for this function:

G4double F04ElementField::GetMaxStep ( )
inline

GetMaxStep() returns the max. step size.

Definition at line 79 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 79 of file F04ElementField.hh

References fMaxStep.

G4VisAttributes * F04ElementField::GetVisAttribute ( G4String  color)
static

GetVisAttribute() returns the appropriate G4VisAttributes.

Definition at line 124 of file F04ElementField.cc.

View newest version in sPHENIX GitHub at line 124 of file F04ElementField.cc

References G4cout, G4endl, G4VisAttributes::GetInvisible(), and G4VisAttributes::SetDaughtersInvisible().

Referenced by F04ElementField(), and SetColor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual G4double F04ElementField::GetWidth ( )
pure virtual

Implemented in F04SimpleSolenoid.

Referenced by Construct().

+ Here is the caller graph for this function:

bool F04ElementField::IsInBoundingBox ( const G4double  point[4]) const
inline

IsInBoundingBox() returns true if the point is within the global bounding box - global coordinates.

Definition at line 112 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 112 of file F04ElementField.hh

References fMaxX, fMaxY, fMaxZ, fMinX, fMinY, and fMinZ.

Referenced by F04GlobalField::GetFieldValue().

+ Here is the caller graph for this function:

F04ElementField& F04ElementField::operator= ( const F04ElementField )
private
void F04ElementField::SetColor ( G4String  c)
inline

SetColor(G4String) sets the color.

Definition at line 82 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 82 of file F04ElementField.hh

References c, fColor, fVolume, GetVisAttribute(), and G4LogicalVolume::SetVisAttributes().

Referenced by F04GlobalField::ConstructField().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void F04ElementField::SetGlobalPoint ( const G4double  point[4])
inline

SetGlobalPoint() ensures that the point is within the global bounding box of this ElementField's global coordinates. Normally called 8 times for the corners of the local bounding box, after a local->global coordinate transform. If never called, the global bounding box is infinite. BEWARE: if called only once, the bounding box is just a point.

Definition at line 100 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 100 of file F04ElementField.hh

References DBL_MAX, fMaxX, fMaxY, fMaxZ, fMinX, fMinY, and fMinZ.

Referenced by Construct().

+ Here is the caller graph for this function:

void F04ElementField::SetMaxStep ( G4double  stp)
inline

SetMaxStep(G4double) sets the max. step size.

Definition at line 71 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 71 of file F04ElementField.hh

References fMaxStep, fUserLimits, fVolume, G4UserLimits::SetMaxAllowedStep(), and G4LogicalVolume::SetUserLimits().

Referenced by F04GlobalField::ConstructField().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4ThreeVector F04ElementField::fCenter
private

Definition at line 149 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 149 of file F04ElementField.hh

Referenced by Construct(), and F04ElementField().

G4String F04ElementField::fColor
private

Definition at line 147 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 147 of file F04ElementField.hh

Referenced by F04ElementField(), GetColor(), and SetColor().

G4AffineTransform F04ElementField::fGlobal2local
protected

Definition at line 139 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 139 of file F04ElementField.hh

Referenced by F04FocusSolenoid::AddFieldValue(), F04SimpleSolenoid::AddFieldValue(), and Construct().

G4double F04ElementField::fMaxStep
private

Definition at line 152 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 152 of file F04ElementField.hh

Referenced by F04ElementField(), GetMaxStep(), and SetMaxStep().

G4double F04ElementField::fMaxX
private

Definition at line 150 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 150 of file F04ElementField.hh

Referenced by F04ElementField(), IsInBoundingBox(), and SetGlobalPoint().

G4double F04ElementField::fMaxY
private

Definition at line 150 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 150 of file F04ElementField.hh

Referenced by F04ElementField(), IsInBoundingBox(), and SetGlobalPoint().

G4double F04ElementField::fMaxZ
private

Definition at line 150 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 150 of file F04ElementField.hh

Referenced by F04ElementField(), IsInBoundingBox(), and SetGlobalPoint().

G4double F04ElementField::fMinX
private

Definition at line 150 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 150 of file F04ElementField.hh

Referenced by F04ElementField(), IsInBoundingBox(), and SetGlobalPoint().

G4double F04ElementField::fMinY
private

Definition at line 150 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 150 of file F04ElementField.hh

Referenced by F04ElementField(), IsInBoundingBox(), and SetGlobalPoint().

G4double F04ElementField::fMinZ
private

Definition at line 150 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 150 of file F04ElementField.hh

Referenced by F04ElementField(), IsInBoundingBox(), and SetGlobalPoint().

G4ThreadLocal G4Navigator * F04ElementField::fNavigator = 0
staticprivate

Definition at line 145 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 145 of file F04ElementField.hh

Referenced by Construct().

G4UserLimits* F04ElementField::fUserLimits
private

Definition at line 153 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 153 of file F04ElementField.hh

Referenced by F04ElementField(), and SetMaxStep().

G4LogicalVolume* F04ElementField::fVolume
protected

Definition at line 137 of file F04ElementField.hh.

View newest version in sPHENIX GitHub at line 137 of file F04ElementField.hh

Referenced by Construct(), F04ElementField(), F04SimpleSolenoid::F04SimpleSolenoid(), SetColor(), and SetMaxStep().


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