BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | Private Attributes
BDSFieldEMInterpolated Class Reference

Class to provide scaling and a base class pointer for interpolator fields. More...

#include <BDSFieldEMInterpolated.hh>

Inheritance diagram for BDSFieldEMInterpolated:
Inheritance graph
Collaboration diagram for BDSFieldEMInterpolated:
Collaboration graph

Public Member Functions

 BDSFieldEMInterpolated (const BDSInterpolator *eInterpolator, const BDSInterpolator *bInterpolator, const G4Transform3D &offset, G4double eScalingIn=1.0, G4double bScalingIn=1.0)
 
virtual G4bool TimeVarying () const
 
G4double SmallestSpatialStep () const
 
G4double EScaling () const
 Accessor.
 
G4double BScaling () const
 Accessor.
 
void SetEScaling (G4double eScalingIn)
 Setter.
 
void SetBScaling (G4double bScalingIn)
 Setter.
 
- Public Member Functions inherited from BDSFieldEM
 BDSFieldEM ()
 
 BDSFieldEM (G4Transform3D transformIn)
 
virtual std::pair< G4ThreeVector, G4ThreeVector > GetField (const G4ThreeVector &position, const G4double t=0) const =0
 
virtual G4bool TimeVarying () const
 
virtual void GetFieldValue (const G4double point[4], G4double *field) const
 
virtual std::pair< G4ThreeVector, G4ThreeVector > GetFieldTransformed (const G4ThreeVector &position, const G4double t) const
 Get the field value after applying transform for local offset.
 
virtual void SetTransform (const G4Transform3D &transformIn)
 
virtual G4bool DoesFieldChangeEnergy () const
 Required overload by Geant4.
 
void SetModulator (BDSModulator *modulatorIn)
 Set the optional modulator.
 
G4bool FiniteStrength () const
 Accessor.
 

Protected Attributes

G4bool timeVarying
 
- Protected Attributes inherited from BDSFieldEM
G4bool finiteStrength
 Flag to cache whether finite nor not.
 
G4Transform3D transform
 Transform to apply for the field relative to the local coordinates of the geometry.
 
G4bool transformIsNotIdentity
 Cache of whether to use transform at all.
 
BDSModulatormodulator
 Optional modulator;.
 

Private Attributes

G4double eScaling
 E field scaling value.
 
G4double bScaling
 B field scaling value.
 
G4double smallestSpatialStep
 

Detailed Description

Class to provide scaling and a base class pointer for interpolator fields.

Author
Laurie Nevay

Definition at line 34 of file BDSFieldEMInterpolated.hh.

Constructor & Destructor Documentation

◆ BDSFieldEMInterpolated()

BDSFieldEMInterpolated::BDSFieldEMInterpolated ( const BDSInterpolator eInterpolator,
const BDSInterpolator bInterpolator,
const G4Transform3D &  offset,
G4double  eScalingIn = 1.0,
G4double  bScalingIn = 1.0 
)

Definition at line 25 of file BDSFieldEMInterpolated.cc.

◆ ~BDSFieldEMInterpolated()

virtual BDSFieldEMInterpolated::~BDSFieldEMInterpolated ( )
inlinevirtual

Definition at line 43 of file BDSFieldEMInterpolated.hh.

Member Function Documentation

◆ BScaling()

G4double BDSFieldEMInterpolated::BScaling ( ) const
inline

Accessor.

Definition at line 49 of file BDSFieldEMInterpolated.hh.

References bScaling.

Referenced by BDSFieldEMInterpolated1D::GetField(), BDSFieldEMInterpolated2D::GetField(), BDSFieldEMInterpolated3D::GetField(), and BDSFieldEMInterpolated4D::GetField().

Here is the caller graph for this function:

◆ EScaling()

G4double BDSFieldEMInterpolated::EScaling ( ) const
inline

Accessor.

Definition at line 48 of file BDSFieldEMInterpolated.hh.

References eScaling.

Referenced by BDSFieldEMInterpolated1D::GetField(), BDSFieldEMInterpolated2D::GetField(), BDSFieldEMInterpolated3D::GetField(), and BDSFieldEMInterpolated4D::GetField().

Here is the caller graph for this function:

◆ SetBScaling()

void BDSFieldEMInterpolated::SetBScaling ( G4double  bScalingIn)
inline

Setter.

Definition at line 54 of file BDSFieldEMInterpolated.hh.

References bScaling.

◆ SetEScaling()

void BDSFieldEMInterpolated::SetEScaling ( G4double  eScalingIn)
inline

Setter.

Definition at line 53 of file BDSFieldEMInterpolated.hh.

References eScaling.

◆ SmallestSpatialStep()

G4double BDSFieldEMInterpolated::SmallestSpatialStep ( ) const
inline

Definition at line 57 of file BDSFieldEMInterpolated.hh.

◆ TimeVarying()

virtual G4bool BDSFieldEMInterpolated::TimeVarying ( ) const
inlinevirtual

Each derived class should override this if needs be. Used to warn about time modulation with a time-varying field.

Reimplemented from BDSFieldEM.

Definition at line 45 of file BDSFieldEMInterpolated.hh.

Field Documentation

◆ bScaling

G4double BDSFieldEMInterpolated::bScaling
private

B field scaling value.

Definition at line 64 of file BDSFieldEMInterpolated.hh.

Referenced by BScaling(), and SetBScaling().

◆ eScaling

G4double BDSFieldEMInterpolated::eScaling
private

E field scaling value.

Definition at line 63 of file BDSFieldEMInterpolated.hh.

Referenced by EScaling(), and SetEScaling().

◆ smallestSpatialStep

G4double BDSFieldEMInterpolated::smallestSpatialStep
private

Definition at line 65 of file BDSFieldEMInterpolated.hh.

◆ timeVarying

G4bool BDSFieldEMInterpolated::timeVarying
protected

Definition at line 60 of file BDSFieldEMInterpolated.hh.


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