20#include "BDSFieldMagSextupole.hh"
21#include "BDSMagnetStrength.hh"
22#include "BDSUtilities.hh"
25#include "G4ThreeVector.hh"
27#include "CLHEP/Units/SystemOfUnits.h"
39 G4cout << __METHOD_NAME__ <<
"B'' = " <<
bDoublePrime << G4endl;
44 const G4double )
const
50 G4ThreeVector localField;
51 localField[0] = position.x() * position.y() *
bDoublePrime;
52 localField[1] = (std::pow(position.x(),2) - std::pow(position.y(),2)) *
halfBDoublePrime;
BDSFieldMagSextupole()
Private default constructor to avoid usage.
G4double bDoublePrime
B'' - second derivative of the magnetic field.
virtual G4ThreeVector GetField(const G4ThreeVector &position, const G4double t=0) const
Access the field value.
G4double halfBDoublePrime
bDoublePrime / 2! cached
G4bool finiteStrength
Flag to cache whether finite nor not.
Efficient storage of magnet strengths.
G4bool IsFinite(G4double value, G4double tolerance=std::numeric_limits< double >::epsilon())