Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:37:43 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
b2ea1d2979 Jean*0001 module gcm_params_mod
                0002 
                0003 !use fms_mod, only: write_version_number
                0004 
                0005 implicit none
                0006 private
                0007 
                0008 !  ---- public interfaces ----
                0009 
                0010 real,    public :: gcm_unset_RS = 0.
                0011 real,    public :: gcm_unset_RL = 0.
                0012 integer, public :: gcm_unset_I  = 0
                0013 integer, public, parameter :: gcm_LEN_MBUF = 512
                0014 integer, public, parameter :: gcm_LEN_FNAM = 512
                0015 integer, public, parameter :: gcm_LEN_PREC = 200
                0016 character*1, public :: gcm_SQZ_R = ' '
                0017 character*1, public :: gcm_SQZ_L = ' '
                0018 character*1, public :: gcm_SQZ_B = ' '
                0019 integer, public :: gcm_precFloat32 = 0
                0020 integer, public :: gcm_precFloat64 = 0
                0021 integer, public :: gcm_debLev0  = 0
                0022 integer, public :: gcm_debLevA  = 0
                0023 integer, public :: gcm_debLevB  = 0
                0024 integer, public :: gcm_debLevC  = 0
                0025 integer, public :: gcm_debLevD  = 0
                0026 integer, public :: gcm_debLevE  = 0
                0027 integer, public :: gcm_stdMsgUnit = 0
                0028 integer, public :: gcm_errMsgUnit = 0
                0029 integer, public :: gcm_debugLevel = 0
                0030 logical, public :: gcm_debugMode = .FALSE.
                0031 
                0032 public gcm_params_init
                0033 
                0034 contains
                0035 
                0036 ! <SUBROUTINE NAME="gcm_params_init">
                0037 
                0038 !   <OVERVIEW>
                0039 !     Initialization routine. The purpose of this routine
                0040 !     is initialize the GCM PARAMS module from EEPARAMS.h & PARAMS.h
                0041 !     commom bloc values which are passed as argument to this routine.
                0042 !   </OVERVIEW>
                0043 !   <DESCRIPTION>
                0044 !   </DESCRIPTION>
                0045 !   <TEMPLATE>
                0046 !     call gcm_params_init( ... )
                0047 !   </TEMPLATE>
                0048 
                0049 subroutine gcm_params_init(                                          &
                0050                inp_unset_RS, inp_unset_RL, inp_unset_I,              &
                0051 !              inp_LEN_MBUF, inp_LEN_FNAM, inp_LEN_PREC,             &
                0052                inp_SQZ_R, inp_SQZ_L, inp_SQZ_B,                      &
                0053                inp_precFloat32, inp_precFloat64,                     &
                0054                inp_debLev0, inp_debLevA, inp_debLevB,                &
                0055                inp_debLevC, inp_debLevD, inp_debLevE,                &
                0056                inp_stdMsgUnit, inp_errMsgUnit,                       &
                0057                inp_debugLevel, inp_debugMode,                        &
                0058                myThid )
                0059 
497c4cd2c8 Jean*0060 #ifdef LET_RS_BE_REAL4
                0061   real*4,  intent(in) :: inp_unset_RS
                0062 #else
                0063   real*8,  intent(in) :: inp_unset_RS
                0064 #endif
b2ea1d2979 Jean*0065   real,    intent(in) :: inp_unset_RL
                0066   integer, intent(in) :: inp_unset_I
                0067 ! integer, intent(in) :: inp_LEN_MBUF
                0068 ! integer, intent(in) :: inp_LEN_FNAM
                0069 ! integer, intent(in) :: inp_LEN_PREC
                0070   character*1, intent(in) :: inp_SQZ_R
                0071   character*1, intent(in) :: inp_SQZ_L
                0072   character*1, intent(in) :: inp_SQZ_B
                0073   integer, intent(in) :: inp_precFloat32
                0074   integer, intent(in) :: inp_precFloat64
                0075   integer, intent(in) :: inp_debLev0
                0076   integer, intent(in) :: inp_debLevA
                0077   integer, intent(in) :: inp_debLevB
                0078   integer, intent(in) :: inp_debLevC
                0079   integer, intent(in) :: inp_debLevD
                0080   integer, intent(in) :: inp_debLevE
                0081   integer, intent(in) :: inp_stdMsgUnit
                0082   integer, intent(in) :: inp_errMsgUnit
                0083   integer, intent(in) :: inp_debugLevel
                0084   logical, intent(in) :: inp_debugMode
                0085 
                0086   integer, intent(in) :: myThid
                0087 
                0088    gcm_unset_RS    = inp_unset_RS
                0089    gcm_unset_RL    = inp_unset_RL
                0090    gcm_unset_I     = inp_unset_I
                0091 !  gcm_LEN_MBUF    = inp_LEN_MBUF
                0092 !  gcm_LEN_FNAM    = inp_LEN_FNAM
                0093 !  gcm_LEN_PREC    = inp_LEN_PREC
                0094    gcm_SQZ_R       = inp_SQZ_R
                0095    gcm_SQZ_L       = inp_SQZ_L
                0096    gcm_SQZ_B       = inp_SQZ_B
                0097    gcm_precFloat32 = inp_precFloat32
                0098    gcm_precFloat64 = inp_precFloat64
                0099    gcm_debLev0     = inp_debLev0
                0100    gcm_debLevA     = inp_debLevA
                0101    gcm_debLevB     = inp_debLevB
                0102    gcm_debLevB     = inp_debLevC
                0103    gcm_debLevD     = inp_debLevD
                0104    gcm_debLevE     = inp_debLevE
                0105    gcm_stdMsgUnit  = inp_stdMsgUnit
                0106    gcm_errMsgUnit  = inp_errMsgUnit
                0107    gcm_debugLevel  = inp_debugLevel
                0108    gcm_debugMode   = inp_debugMode
                0109 
                0110 end subroutine gcm_params_init
                0111 ! </SUBROUTINE>
                0112 
                0113 !-----------------------------------------------------------------------
                0114 
                0115 end module gcm_params_mod