19#ifndef BDSFIELDMAGSOLENOIDBLOCK_H
20#define BDSFIELDMAGSOLENOIDBLOCK_H
22#include "BDSFieldMag.hh"
24#include "G4ThreeVector.hh"
46 G4bool strengthIsCurrent,
47 G4double innerRadiusIn,
48 G4double radialThicknessIn,
49 G4double fullLengthZIn,
56 G4double innerRadiusIn);
60 virtual G4ThreeVector
GetField(
const G4ThreeVector& position,
61 const G4double t = 0)
const;
64 inline G4double
GetB0()
const {
return B0;}
65 inline G4double
GetI()
const {
return I;}
70 G4double radialThickness;
74 G4double coilTolerance;
76 G4double currentDensity;
Class that provides the magnetic field due to a square annulus of current.
G4double GetB0() const
Accessor.
virtual G4ThreeVector GetField(const G4ThreeVector &position, const G4double t=0) const
Calculate the field value.
G4double GetI() const
Accessor.
Interface for static magnetic fields that may or may not be local.
Efficient storage of magnet strengths.