Read Grad Shafranov equibrium data stored in format inputFormat from
    file inputFile, and initialize i2mex.
    Supported file formats:
    inputFormat = -1 inputFile is in CHEASE 'INP1' binary file format
    inputFormat = +1 inputFile is in CHEASE netCDF 'inp1.cdf' file format
    inputFormat = +2 inputFile is in JSOLVER netCDF 'eqdsk.cdf' file format
    inputFormat = +3 inputFile is in EFIT G_EQDSK file format.
    inputFormat = +4 inputFile is in EFIT G_EQDSK file format,
    rerunning ESC taking q profile as input
    inputFormat = +5 Menard or psipqgRZ format in MKS units
    inputFormat = +6 FreeqBe or free BC equilibrium by Belova
    inputFormat = +7 read ceo.cdf as produced by tesc for instance
   
    it_orientation determines the theta orientation:
    it_orientation = +1 for clockwise
    it_orientation = -1 for counterclockwise.
   
integer, intent(in) :: inputFormat
character*(*), intent(in) :: inputFile
integer, intent(in) :: it_orientation
integer, intent(out) :: ier
    read free equilibrium format by Elena Belova
integer, parameter :: r8=selected_real_kind(12,100)
character*(*), intent(in) :: filename
integer, intent(in) :: it_orientation
integer, intent(out) :: ier
    read G-EQDSK file and and perform inverse map
integer, parameter :: r8=selected_real_kind(12,100)
character*(*), intent(in) :: filename
integer, intent(in) :: it_orientation
integer, intent(out) :: ier
    read G-EQDSK file, take boundary coodinates, pressure and q profiles
    and compute equilibrium using Esc
integer, parameter :: r8=selected_real_kind(12,100)
character*(*), intent(in) :: filename
integer, intent(in) :: it_orientation
integer, intent(out) :: ier
   
    read chease netCDF output file
   
integer, parameter :: r8=selected_real_kind(12,100)
character*(*), intent(in) :: filename
integer, intent(in) :: it_orientation
integer, intent(out) :: ier
   
    read chease JSOLVER output file in netCDF format
   
integer, parameter :: r8=selected_real_kind(12,100)
   
    read chease binary output file
   
integer, parameter :: r8=selected_real_kind(12,100)
character*(*), intent(in) :: filename
integer, intent(in) :: it_orientation
integer, intent(out) :: ier
    Access equilibrium profile data from MDSPlus tree or local directory.
   
    MDS+ path syntax:
    MDS+:<server-name>:<tree-name>(<shot-number>) or
    MDS+:<server-name>:<tree-name>(<tok.yy>,<runid>)
   
    Unix file path syntax: <path>/<runid> or just <runid>
   
    VMS file path syntax: <disk>:[<dir>]<runid> or just <runid>
character*(*), intent(in) :: path     MDSPlus path (see above)
real(i2mex_r8), intent(inout) :: time     time slice in sec, will be corrected
    if outside shot interval
integer, intent(in) :: nt1     no of poloidal rays + 1
integer, intent(in) :: ns     no of radial nodes
integer, intent(in) :: it_orientation
integer, intent(out) :: ier
   
    read equilibrium file in psipqgRZ format (Menard)
   
integer, parameter :: r8=selected_real_kind(12,100)
character*(*), intent(in) :: filename
integer, intent(in) :: it_orientation
integer, intent(out) :: ier
   
    read equilibrium file in ceo format (Pletzer)
   
integer, parameter :: r8=selected_real_kind(12,100)
character*(*), intent(in) :: filename
integer, intent(in) :: it_orientation
integer, intent(out) :: ier