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