C $Header: /u/gcmpack/MITgcm/pkg/thsice/thsice_diagnostics_init.F,v 1.1 2005/01/04 00:25:31 jmc Exp $
C $Name: $
#include "THSICE_OPTIONS.h"
CBOP
C !ROUTINE: THSICE_DIAGNOSTICS_INIT
C !INTERFACE:
SUBROUTINE THSICE_DIAGNOSTICS_INIT( myThid )
C !DESCRIPTION: \bv
C *==========================================================*
C | SUBROUTINE THSICE_DIAGNOSTICS_INIT
C | o Routine to initialize list of all available diagnostics
C | for THSICE package
C *==========================================================*
C \ev
C !USES:
IMPLICIT NONE
C === Global variables ===
#include "EEPARAMS.h"
c #include "SIZE.h"
c #include "PARAMS.h"
c #include "THSICE_PARAMS.h"
C !INPUT/OUTPUT PARAMETERS:
C === Routine arguments ===
C myThid :: my thread Id number
INTEGER myThid
CEOP
#ifdef ALLOW_DIAGNOSTICS
C !LOCAL VARIABLES:
C === Local variables ===
C diagNum :: diagnostics number in the (long) list of available diag.
C diagName :: local short name (8c) of a diagnostics
C diagCode :: local parser field with characteristics of the diagnostics
C cf head of S/R DIAGNOSTICS_INIT_EARLY or DIAGNOSTICS_MAIN_INIT
C diagUnits :: local string (16c): physical units of a diagnostic field
C diagTitle :: local string (80c): description of field in diagnostic
INTEGER diagNum
CHARACTER*8 diagName
CHARACTER*16 diagCode
CHARACTER*16 diagUnits
CHARACTER*(80) diagTitle
INTEGER numFract, numThick
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
c IF ( useDiagnotics ) THEN
diagName = 'SI_Fract'
diagTitle = 'Sea-Ice fraction [0-1]'
diagUnits = '0-1 '
diagCode = 'SM P M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
numFract = diagNum
diagName = 'SI_Thick'
diagTitle = 'Sea-Ice thickness (area weighted average)'
diagUnits = 'm '
WRITE(diagCode,'(A,I3.3,A)') 'SM PC', numFract, 'M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
numThick = diagNum
diagName = 'SI_SnowH'
diagTitle = 'Snow thickness over Sea-Ice (area weighted)'
diagUnits = 'm '
WRITE(diagCode,'(A,I3.3,A)') 'SM PC', numFract, 'M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SI_Tsrf '
diagTitle = 'Surface Temperature over Sea-Ice (area weighted)'
diagUnits = 'degC '
WRITE(diagCode,'(A,I3.3,A)') 'SM C', numFract, 'M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SI_Tice1'
diagTitle = 'Sea-Ice Temperature, 1srt layer (area weighted)'
diagUnits = 'degC '
WRITE(diagCode,'(A,I3.3,A)') 'SM C', numFract, 'M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SI_Tice2'
diagTitle = 'Sea-Ice Temperature, 2nd layer (area weighted)'
diagUnits = 'degC '
WRITE(diagCode,'(A,I3.3,A)') 'SM C', numFract, 'M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SI_Qice1'
diagTitle = 'Sea-Ice enthalphy, 1srt layer (mass weighted)'
diagUnits = 'J/m^3 '
WRITE(diagCode,'(A,I3.3,A)') 'SM C', numThick, 'M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SI_Qice2'
diagTitle = 'Sea-Ice enthalphy, 2nd layer (mass weighted)'
diagUnits = 'J/m^3 '
WRITE(diagCode,'(A,I3.3,A)') 'SM C', numThick, 'M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SIalbedo'
diagTitle = 'Sea-Ice Albedo [0-1] (area weighted average)'
diagUnits = '0-1 '
WRITE(diagCode,'(A,I3.3,A)') 'SM PC', numFract, 'M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SIsnwAge'
diagTitle = 'snow age over Sea-Ice'
diagUnits = 's '
diagCode = 'SM P M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SIsnwPrc'
diagTitle = 'snow precip. (+=dw) over Sea-Ice (area weighted)'
diagUnits = 'kg/m^2/s '
WRITE(diagCode,'(A,I3.3,A)') 'SM C', numFract, 'M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SIflxAtm'
diagTitle = 'net heat flux from the Atmosphere (+=dw)'
diagUnits = 'W/m^2 '
diagCode = 'SM M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SIfrwAtm'
diagTitle = 'fresh-water flux to the Atmosphere (+=up)'
diagUnits = 'kg/m^2/s '
diagCode = 'SM M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SIflx2oc'
diagTitle = 'heat flux out of the ocean (+=up)'
diagUnits = 'W/m^2 '
diagCode = 'SM M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SIfrw2oc'
diagTitle = 'fresh-water flux out of the ocean (+=up)'
diagUnits = 'm/s '
diagCode = 'SM M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SIsaltFx'
diagTitle = 'salt flux out of the ocean (+=up)'
diagUnits = 'psu.kg/m^2 '
diagCode = 'SM M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SItOcMxL'
diagTitle = 'ocean mixed layer temperature'
diagUnits = 'degC '
diagCode = 'SM M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
diagName = 'SIsOcMxL'
diagTitle = 'ocean mixed layer salinity'
diagUnits = 'psu '
diagCode = 'SM P M1 '
CALL DIAGNOSTICS_ADD2LIST( diagNum,
I diagName, diagCode, diagUnits, diagTitle, myThid )
c ENDIF
#endif /* ALLOW_DIAGNOSTICS */
RETURN
END