Module magnet_mod 
module magnet_mod
        ! Uses
    use precision_mod
    use chambers_mod, ONLY: xyz2uvz3, uvz2xyz3
        ! Variables
    integer, public, PARAMETER :: kMagnetOk = 0
    integer, public, PARAMETER :: kMagnetOutside = 1
    integer, public, PARAMETER :: kMagnetPoisoned = 2
    integer, private, PARAMETER :: kOff = 0
    integer, private, PARAMETER :: kUniform = 1
    integer, private, PARAMETER :: kOpera = 2
    integer, private :: fSwitch = 0
    real (kind=R8), private, dimension (3) :: fZero
    real (kind=R8), private, dimension (3) :: fField
    real (kind=R8), private :: fMapScale
    integer, private, EXTERNAL :: operafld8
        ! Subroutines and functions
    public function MagnetIsOn ()
    public function MagnetIsUniform ()
    public function MagnetGetB3 (V3, B) result (istat)
    public subroutine MagnetOff ()
    public subroutine MagnetSetUniform (B)
    public subroutine MagnetSetOpera (FileName, ReferenceLoc, ReferenceField)
end module magnet_mod
 Description of Variables 
kMagnetOk
integer, public, PARAMETER :: kMagnetOk = 0
kMagnetOutside
integer, public, PARAMETER :: kMagnetOutside = 1
kMagnetPoisoned
integer, public, PARAMETER :: kMagnetPoisoned = 2
kOff
integer, private, PARAMETER :: kOff = 0
kUniform
integer, private, PARAMETER :: kUniform = 1
kOpera
integer, private, PARAMETER :: kOpera = 2
fSwitch
integer, private :: fSwitch = 0
fZero
real (kind=R8), private, dimension (3) :: fZero
fField
real (kind=R8), private, dimension (3) :: fField
fMapScale
real (kind=R8), private :: fMapScale
operafld8
integer, private, EXTERNAL :: operafld8
 Description of Subroutines and Functions 
MagnetIsOn
public function MagnetIsOn ()
    logical :: MagnetIsOn
end function MagnetIsOn
MagnetIsUniform
public function MagnetIsUniform ()
    logical :: MagnetIsUniform
end function MagnetIsUniform
MagnetGetB3
public function MagnetGetB3 (V3, B) result (istat)
    real (kind=R8), INTENT(in), dimension (3) :: V3
    real (kind=R8), INTENT(out), dimension (3) :: B
    integer :: istat
    ! Calls: uvz2xyz3, xyz2uvz3
end function MagnetGetB3
MagnetOff
public subroutine MagnetOff ()
end subroutine MagnetOff
MagnetSetUniform
public subroutine MagnetSetUniform (B)
    real (kind=R8), INTENT(in), dimension (3) :: B
end subroutine MagnetSetUniform
MagnetSetOpera
public subroutine MagnetSetOpera (FileName, ReferenceLoc, ReferenceField)
    character (len=*), INTENT(in) :: FileName
    real (kind=R8), INTENT(in), dimension (3) :: ReferenceLoc
    real (kind=R8), INTENT(in) :: ReferenceField
    ! Calls: kerror, operainit
end subroutine MagnetSetOpera