19#ifndef BDSFIELDMAGSOLENOIDLOOP_H
20#define BDSFIELDMAGSOLENOIDLOOP_H
22#include "BDSFieldMag.hh"
24#include "G4ThreeVector.hh"
53 G4bool strengthIsCurrent,
63 virtual G4ThreeVector
GetField(
const G4ThreeVector& position,
64 const G4double t = 0)
const;
67 inline G4double
GetB0()
const {
return B0;}
68 inline G4double
GetI()
const {
return I;}
74 G4double
OnAxisBz(G4double zp, G4double zm)
const;
79 G4double spatialLimit;
80 G4double mu0OverPiTimesITimesA;
Class that provides the magnetic field due to a cylinder of current.
G4double OnAxisBz(G4double zp, G4double zm) const
virtual G4ThreeVector GetField(const G4ThreeVector &position, const G4double t=0) const
Calculate the field value.
G4double GetI() const
Accessor.
G4double GetB0() const
Accessor.
Interface for static magnetic fields that may or may not be local.
Efficient storage of magnet strengths.