MODULE YOMCMA
!ODB SET $NMXUPD = 2
USE PARKIND1  ,ONLY : JPIM

USE PARCMA, ONLY : JPMXDEPL

IMPLICIT NONE

SAVE

!*     YOMCMA - VARIOUS CMA PARAMETERS

!        D. VASILJEVIC   ECMWF     15/9/94

!     NAME      TYPE                  MEANING
!     ----      ----                  -------
!     NMXDEP      I    MAX. NO. OF ADD. OBS. DEPARTURES
!     NMXUPD      I    MAX. NO. OF UPDATES
!     NMXNVO      I    MAX. NO. OF LEVELS
!     NMXVAR      I    MAX. NO. OF VARIABLES
!     NMXVPL      I    MAX. NO. OF VARIABLES PER LEVEL
!     NMXOTP      I    MAX. NO. OF OBS. TYPES
!     NMXOCT      I    MAX. NO. OF OBS. CODE TYPES
!     NMXSATS     I    MAX. NO. OF SATELLITES
!     NMXTOCH     I    MAX. NO. TOVS CHANNELS
!     NMXATOCH    I    MAX. NO. ATOVS (LEVEL 1C/GEOS) CHANNELS
!     NMXSSMCH    I    MAX. NO. SSMI CHANNELS
!     NMXTRMCH    I    MAX. NO. TRMM CHANNELS
!     NMXMSUCH    I    MAX. NO. OF TOVS MSU CHANNELS
!     NMXSSUCH    I    MAX. NO. OF TOVS SSU CHANNELS
!     NMXAMSUCH   I    MAX. NO. OF ATOVS (LEVEL 1C/GEOS) MSU CHANNELS
!     NMXASSUCH   I    MAX. NO. OF ATOVS (LEVEL 1C/GEOS) SSU CHANNELS
!     NMXBEL      I    MAX. LENGTH OF BODY ENTRY
!     NMXBFL      I    MAX. LENGTH OF CMA FIXED PART OF A BODY ENTRY
!     NMXBREL     I    MAX. LENGTH OF CMA RUN DEPENDENT PART OF A
!                      BODY ENTRY
!     NMXTDBL     I    MAX. LENGTH OF CMA OBS./CODE TYPE DEPENDENT
!                      PART OF BODY ENTRY
!     NMXHEL      I    MAX. LENGTH OF CMA REPORT HEADER
!     NMXFHL      I    MAX. LENGTH OF CMA FIXED PART OF HEADER
!     NMXTDHL     I    MAX. LENGTH OF CMA OBS./CODE TYPE DEPENDENT
!                      PART OF REPORT HEADER
!     NMXGICML    I    MAX. LENGTH OF INTEGER "GLOBAL" CMA ARRAY
!     NMXGRCML    I    MAX. LENGTH OF REAL "GLOBAL" CMA ARRAY
!     NMXCRL      I    MAX. LENGTH OF CMA REPORT
!     NMXDDRS     I    MAX. NUMBER OF CMA DDRS
!     NMXDCL      I    MAX. LEN. OF CMA DDR

!     NDEPLISL    I    LENGTH OF DEPARTURE LIST
!     NDEPLIST    I    DEPARTURE LIST

!     LICMAMER    L    INPUT CMA MEMORY RESIDENT
!     LOCMAMER    L    OUTPUT CMA MEMORY RESIDENT

!     NODEPT      I    NUMBER OF OBS. DEPARTURE WORDS IN CMA BODY
!     NRESUPD     I    NUMBER OF RESERVED UPDATES
!     NUSDUPD     I    NUMBER OF USED UPDATES
!     NOSIMUL     I    NO. OF SIMULATIONS
!     NO1DVLV     I    NO. OF 1D VAR LEVELS (TOVS)
!     NO1DVVA     I    NO. OF 1D VAR UPPERAIR VARIABLES (TOVS)
!     NO1DVSLV    I    NO. OF 1D VAR SINGLE LEVEL VARIABLES (TOVS)
!     NO1DVLVA    I    NO. OF 1D VAR LEVELS (ATOVS; LEVEL 1C/GEOS)
!     NO1DVVAA    I    NO. OF 1D VAR UPPERAIR VARIABLES (ATOVS;
!                      LEVEL 1C/GEOS)
!     NO1DVSLVA   I    NO. OF 1D VAR SINGLE LEVEL VARIABLES (ATOVS; LEVEL
!                      1C/GEOS))
!     NO1DVLVS    I    NO. OF 1D VAR LEVELS (SSMI)
!     NO1DVVAS    I    NO. OF 1D VAR UPPERAIR VARIABLES (SSMI)
!     NO1DSLVS    I    NO. OF 1D VAR SINGLE LEVEL VARIABLES (SSMI)
!     LMODPRF     L    MODEL PROFILE AT OBS. POINTS
!     NOMODLV     I    NO. OF MODEL LEVELS
!     NOMODUV     I    NO. OF MODEL UPPERAIR VARIABLES
!     NOMODSV     I    NO. OF MODEL SURFACE  VARIABLES
!     LMPSYNOP    L    MODEL PROFILE AT OBS. POINTS FOR SYNOPS
!     LMPAIREP    L    MODEL PROFILE AT OBS. POINTS FOR AIREPS
!     LMPSATOB    L    MODEL PROFILE AT OBS. POINTS FOR SATOBS
!     LMPDRIBU    L    MODEL PROFILE AT OBS. POINTS FOR DRIBUS
!     LMPTEMP     L    MODEL PROFILE AT OBS. POINTS FOR TEMPS
!     LMPPILOT    L    MODEL PROFILE AT OBS. POINTS FOR PILOTS
!     LMPSATEM    L    MODEL PROFILE AT OBS. POINTS FOR SATEMS
!     LMPPAOB     L    MODEL PROFILE AT OBS. POINTS FOR PAOBS
!     LMPSCAT     L    MODEL PROFILE AT OBS. POINTS FOR SCATS
!     LMPLIMB     L    MODEL PROFILE AT OBS. POINTS FOR LIMB OBS
!     LTOVSOH     L    TOVS EXTENDED OPTIONAL HEADER PRES. IND.  
!     LTOPASS     L    TOVS PASS ON PARAMETERS PRES. IND.  
!     LTO1DVA     L    TOVS 1D VAR RELATED PARAMETERS PRES. IND.  
!     LTO1DSL     L    TOVS 1D VAR SINGLE LEVEL PAR. PRES. IND.  
!     LTO1DUL     L    TOVS 1D VAR UPPER LEVEL PAR. PRES. IND.  
!     LTOBICO     L    TOVS BIAS CORRECTION SECTION PRES. IND.  
!     LSSMIOH     L    SSMI/TRMM EXTENDED OPTIONAL HEADER PRES. IND.  
!     LSSPASS     L    SSMI/TRMM PASS ON PARAMETERS PRES. IND.  
!     LSS1DVA     L    SSMI/TRMM 1D VAR RELATED PARAMETERS PRES. IND.
!     LSS1DSL     L    SSMI/TRMM 1D VAR SINGLE LEVEL PAR. PRES. IND.  
!     LSS1DUL     L    SSMI/TRMM 1D VAR UPPER LEVEL PAR. PRES. IND.  
!     LATOVOH     L    ATOVS (LEVEL 1C/GEOS) EXTENDED OPTIONAL HEADER PRES. IND.  
!     LATPASS     L    ATOVS (LEVEL 1C/GEOS) PASS ON PARAMETERS PRES. IND.  
!     LAT1DVA     L    ATOVS (LEVEL 1C/GEOS) 1D VAR RELATED PARAMETERS PRES. IND. 
!     LAT1DSL     L    ATOVS (LEVEL 1C/GEOS) 1D VAR SINGLE LEVEL PAR. PRES. IND.  
!     LAT1DUL     L    ATOVS (LEVEL 1C/GEOS) 1D VAR UPPER LEVEL PAR. PRES. IND.  
!     LATBICO     L    ATOVS (LEVEL 1C/GEOS) BIAS CORRECTION SECTION PRES. IND.  

!     LECFIO      L    = .T. => SUCCESSFUL READING OF CMA FILE

INTEGER(KIND=JPIM) :: NMXGICML
INTEGER(KIND=JPIM) :: NMXGRCML
INTEGER(KIND=JPIM) :: NMXDEP
INTEGER(KIND=JPIM) :: NMXUPD
INTEGER(KIND=JPIM) :: NMXNVO
INTEGER(KIND=JPIM) :: NMXVAR
INTEGER(KIND=JPIM) :: NMXVPL
INTEGER(KIND=JPIM) :: NMXOTP
INTEGER(KIND=JPIM) :: NMXOCT
INTEGER(KIND=JPIM) :: NMXSATS
INTEGER(KIND=JPIM) :: NMXTOCH
INTEGER(KIND=JPIM) :: NMXATOCH
INTEGER(KIND=JPIM) :: NMXSSMCH
INTEGER(KIND=JPIM) :: NMXTRMCH
INTEGER(KIND=JPIM) :: NMXMSUCH
INTEGER(KIND=JPIM) :: NMXSSUCH
INTEGER(KIND=JPIM) :: NMXAMSUCH
INTEGER(KIND=JPIM) :: NMXASSUCH
INTEGER(KIND=JPIM) :: NMXBEL
INTEGER(KIND=JPIM) :: NMXBFL
INTEGER(KIND=JPIM) :: NMXBREL
INTEGER(KIND=JPIM) :: NMXTDBL
INTEGER(KIND=JPIM) :: NMXHEL
INTEGER(KIND=JPIM) :: NMXFHL
INTEGER(KIND=JPIM) :: NMXTDHL
INTEGER(KIND=JPIM) :: NMXCRL
INTEGER(KIND=JPIM) :: NMXDDRS
INTEGER(KIND=JPIM) :: NMXDCL
INTEGER(KIND=JPIM) :: NDEPLISL
INTEGER(KIND=JPIM) :: NDEPLIST(0:JPMXDEPL)
INTEGER(KIND=JPIM) :: NODEPT
INTEGER(KIND=JPIM) :: NRESUPD
INTEGER(KIND=JPIM) :: NUSDUPD
INTEGER(KIND=JPIM) :: NOSIMUL
INTEGER(KIND=JPIM) :: NO1DVLV
INTEGER(KIND=JPIM) :: NO1DVVA
INTEGER(KIND=JPIM) :: NO1DVSLV
INTEGER(KIND=JPIM) :: NO1DVLVA
INTEGER(KIND=JPIM) :: NO1DVVAA
INTEGER(KIND=JPIM) :: NO1DVSLVA
INTEGER(KIND=JPIM) :: NO1DVLVS
INTEGER(KIND=JPIM) :: NO1DVVAS
INTEGER(KIND=JPIM) :: NO1DSLVS
INTEGER(KIND=JPIM) :: NOMODLV
INTEGER(KIND=JPIM) :: NOMODUV
INTEGER(KIND=JPIM) :: NOMODSV
LOGICAL :: LICMAMER
LOGICAL :: LOCMAMER
LOGICAL :: LMODPRF
LOGICAL :: LMPSYNOP
LOGICAL :: LMPAIREP
LOGICAL :: LMPSATOB
LOGICAL :: LMPDRIBU
LOGICAL :: LMPTEMP
LOGICAL :: LMPPILOT
LOGICAL :: LMPSATEM
LOGICAL :: LMPPAOB
LOGICAL :: LMPSCAT
LOGICAL :: LMPLIMB
LOGICAL :: LECFIO
LOGICAL :: LTOVSOH
LOGICAL :: LTOPASS
LOGICAL :: LTO1DVA
LOGICAL :: LTO1DSL
LOGICAL :: LTO1DUL
LOGICAL :: LTOBICO
LOGICAL :: LSSMIOH
LOGICAL :: LSSPASS
LOGICAL :: LSS1DVA
LOGICAL :: LSS1DSL
LOGICAL :: LSS1DUL
LOGICAL :: LATOVOH
LOGICAL :: LATPASS
LOGICAL :: LAT1DVA
LOGICAL :: LAT1DSL
LOGICAL :: LAT1DUL
LOGICAL :: LATBICO

!-----------------------------------------------------------------------

END MODULE YOMCMA
