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

A vector sum of multiple displaced magnetic fields. More...

#include <BDSFieldMagVectorSum.hh>

Inheritance diagram for BDSFieldMagVectorSum:
Inheritance graph
Collaboration diagram for BDSFieldMagVectorSum:
Collaboration graph

Public Member Functions

 BDSFieldMagVectorSum (const std::vector< BDSFieldMag * > &fieldsIn, const std::vector< G4ThreeVector > &fieldOffsetsIn)
 
virtual G4ThreeVector GetField (const G4ThreeVector &position, const G4double t=0) const
 Calculate the field value.
 
- Public Member Functions inherited from BDSFieldMag
 BDSFieldMag ()
 
 BDSFieldMag (G4Transform3D transformIn)
 
virtual G4bool TimeVarying () const
 
virtual void GetFieldValue (const G4double point[4], G4double *field) const
 
virtual 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)
 
void SetModulator (BDSModulator *modulatorIn)
 Set the optional modulator.
 
G4bool FiniteStrength () const
 Accessor.
 

Private Attributes

std::vector< BDSFieldMag * > fields
 
std::vector< G4ThreeVector > fieldOffsets
 

Additional Inherited Members

- Protected Attributes inherited from BDSFieldMag
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;.
 

Detailed Description

A vector sum of multiple displaced magnetic fields.

Author
Laurie Nevay

Definition at line 35 of file BDSFieldMagVectorSum.hh.

Constructor & Destructor Documentation

◆ BDSFieldMagVectorSum()

BDSFieldMagVectorSum::BDSFieldMagVectorSum ( const std::vector< BDSFieldMag * > &  fieldsIn,
const std::vector< G4ThreeVector > &  fieldOffsetsIn 
)
explicit

Definition at line 29 of file BDSFieldMagVectorSum.cc.

◆ ~BDSFieldMagVectorSum()

BDSFieldMagVectorSum::~BDSFieldMagVectorSum ( )
virtual

Definition at line 38 of file BDSFieldMagVectorSum.cc.

Member Function Documentation

◆ GetField()

G4ThreeVector BDSFieldMagVectorSum::GetField ( const G4ThreeVector &  position,
const G4double  t = 0 
) const
virtual

Calculate the field value.

Implements BDSFieldMag.

Definition at line 44 of file BDSFieldMagVectorSum.cc.

Field Documentation

◆ fieldOffsets

std::vector<G4ThreeVector> BDSFieldMagVectorSum::fieldOffsets
private

Definition at line 49 of file BDSFieldMagVectorSum.hh.

◆ fields

std::vector<BDSFieldMag*> BDSFieldMagVectorSum::fields
private

Definition at line 48 of file BDSFieldMagVectorSum.hh.


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