18#ifndef BDSFIELDMAGSOLENOIDBLOCK_H
19#define BDSFIELDMAGSOLENOIDBLOCK_H
21#include "BDSFieldMag.hh"
23#include "G4ThreeVector.hh"
45 G4bool strengthIsCurrent,
46 G4double innerRadiusIn,
47 G4double radialThicknessIn,
48 G4double fullLengthZIn,
55 G4double innerRadiusIn);
59 virtual G4ThreeVector
GetField(
const G4ThreeVector& position,
60 const G4double t = 0)
const;
63 inline G4double
GetB0()
const {
return B0;}
64 inline G4double
GetI()
const {
return I;}
69 G4double radialThickness;
73 G4double coilTolerance;
75 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.