Back to home page

darwin3

 
 

    


File indexing completed on 2024-12-17 18:37:22 UTC

view on githubraw file Latest commit 87dd4f7d on 2024-01-17 18:17:24 UTC
87dd4f7d5f Oliv*0001 #include "OASIM_OPTIONS.h"
                0002 
                0003 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
                0004 CBOP 0
                0005 C !ROUTINE: OASIM_DIAGNOSTICS_INIT
                0006 
                0007 C !INTERFACE:
                0008       SUBROUTINE OASIM_DIAGNOSTICS_INIT( myThid )
                0009 
                0010 C     !DESCRIPTION:
                0011 C     Initialize list of all available diagnostics
                0012 
                0013 C     !USES:
                0014       IMPLICIT NONE
                0015 #include "EEPARAMS.h"
                0016 #include "SIZE.h"
                0017 #include "OASIM_SIZE.h"
                0018 
                0019 C     !INPUT/OUTPUT PARAMETERS:
                0020 C     myThid ::  my Thread Id number
                0021       INTEGER myThid
                0022 CEOP
                0023 
                0024 #ifdef ALLOW_DIAGNOSTICS
                0025 C     !LOCAL VARIABLES:
                0026 C     === Local variables ===
                0027 C     diagNum   :: diagnostics number in the (long) list of available diag.
                0028 C     diagMate  :: diag. mate number in the (long) list of available diag.
                0029 C     diagName  :: local short name (8c) of a diagnostics
                0030 C     diagCode  :: local parser field with characteristics of the diagnostics
                0031 C              cf head of S/R DIAGNOSTICS_INIT_EARLY or DIAGNOSTICS_MAIN_INIT
                0032 C     diagUnits :: local string (16c): physical units of a diagnostic field
                0033 C     diagTitle :: local string (80c): description of field in diagnostic
                0034       INTEGER       diagNum
                0035       INTEGER       diagMate
                0036       CHARACTER*8   diagName
                0037       CHARACTER*16  diagCode
                0038       CHARACTER*16  diagUnits
                0039       CHARACTER*(80) diagTitle
                0040       INTEGER l
                0041 
                0042 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
                0043 
                0044       diagName  = 'OASIMsol'
                0045       diagTitle = 'solar zenith angle above water'
                0046       diagUnits = '                '
                0047       diagCode  = 'SM      L1      '
                0048       CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0049      I        diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0050 
                0051       diagName  = 'OASIMrmd'
                0052       diagTitle = 'inverse cosine of solar zenith angle below water'
                0053       diagUnits = '                '
                0054       diagCode  = 'SM      L1      '
                0055       CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0056      I        diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0057 
                0058       DO l=1,nlt
                0059         WRITE(diagName,'(A4,I3.3)'), 'taua', l
                0060         WRITE(diagTitle,'(A,X,I3)')
                0061      &       'aerosol optical thickness used in waveband', l
                0062         diagUnits = '                '
                0063         diagCode  = 'SM      L1      '
                0064         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0065      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0066 
                0067         WRITE(diagName,'(A5,I3.3)'), 'asymp', l
                0068         WRITE(diagTitle,'(A,X,I3)')
                0069      &       'aerosol asymmetry parameter used in waveband', l
                0070         diagUnits = '                '
                0071         diagCode  = 'SM      L1      '
                0072         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0073      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0074 
                0075         WRITE(diagName,'(A5,I3.3)'), 'ssalb', l
                0076         WRITE(diagTitle,'(A,X,I3)')
                0077      &       'aerosol single-scattering albedo used in waveband', l
                0078         diagUnits = '                '
                0079         diagCode  = 'SM      L1      '
                0080         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0081      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0082 
                0083         WRITE(diagName,'(A5,I3.3)'), 'Edclr', l
                0084         WRITE(diagTitle,'(A,X,I3)')
                0085      &       'direct-beam clear-sky irradiance in waveband', l
                0086         diagUnits = 'W/m2            '
                0087         diagCode  = 'SM      L1      '
                0088         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0089      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0090 
                0091         WRITE(diagName,'(A5,I3.3)'), 'Esclr', l
                0092         WRITE(diagTitle,'(A,X,I3)')
                0093      &       'diffuse clear-sky irradiance in waveband', l
                0094         diagUnits = 'W/m2            '
                0095         diagCode  = 'SM      L1      '
                0096         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0097      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0098 
                0099         WRITE(diagName,'(A5,I3.3)'), 'Edcld', l
                0100         WRITE(diagTitle,'(A,X,I3)')
                0101      &       'direct-beam cloudy-sky irradiance in waveband', l
                0102         diagUnits = 'W/m2            '
                0103         diagCode  = 'SM      L1      '
                0104         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0105      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0106 
                0107         WRITE(diagName,'(A5,I3.3)'), 'Escld', l
                0108         WRITE(diagTitle,'(A,X,I3)')
                0109      &       'diffuse cloudy-sky irradiance in waveband', l
                0110         diagUnits = 'W/m2            '
                0111         diagCode  = 'SM      L1      '
                0112         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0113      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0114 
                0115         WRITE(diagName,'(A5,I3.3)'), 'Edabv', l
                0116         WRITE(diagTitle,'(A,X,I3)')
                0117      &       'direct-beam irradiance above sea surface in waveband', l
                0118         diagUnits = 'W/m2            '
                0119         diagCode  = 'SM      L1      '
                0120         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0121      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0122 
                0123         WRITE(diagName,'(A5,I3.3)'), 'Esabv', l
                0124         WRITE(diagTitle,'(A,X,I3)')
                0125      &       'diffuse irradiance above sea surface in waveband', l
                0126         diagUnits = 'W/m2            '
                0127         diagCode  = 'SM      L1      '
                0128         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0129      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0130 
                0131         WRITE(diagName,'(A5,I3.3)'), 'Edblw', l
                0132         WRITE(diagTitle,'(A,X,I3)')
                0133      &       'direct-beam irradiance below sea surface in waveband', l
                0134         diagUnits = 'W/m2            '
                0135         diagCode  = 'SM      L1      '
                0136         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0137      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0138 
                0139         WRITE(diagName,'(A5,I3.3)'), 'Esblw', l
                0140         WRITE(diagTitle,'(A,X,I3)')
                0141      &       'diffuse irradiance below sea surface in waveband', l
                0142         diagUnits = 'W/m2            '
                0143         diagCode  = 'SM      L1      '
                0144         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0145      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0146 
                0147         WRITE(diagName,'(A5,I3.3)'), 'E0blw', l
                0148         WRITE(diagTitle,'(A,X,I3)')
                0149      &       'scalar irradiance below sea surface in waveband', l
                0150         diagUnits = 'W/m2            '
                0151         diagCode  = 'SM      L1      '
                0152         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0153      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0154 
                0155         WRITE(diagName,'(A5,I3.3)'), 'OArod', l
                0156         WRITE(diagTitle,'(A,X,I3)')
                0157      &       'sea-surface reflectance for direct beam in waveband', l
                0158         diagUnits = '                '
                0159         diagCode  = 'SM      L1      '
                0160         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0161      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0162 
                0163         WRITE(diagName,'(A5,I3.3)'), 'OAros', l
                0164         WRITE(diagTitle,'(A,X,I3)')
                0165      &       'sea-surface reflectance for diffuse light in waveband', l
                0166         diagUnits = '                '
                0167         diagCode  = 'SM      L1      '
                0168         CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0169      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0170       ENDDO
                0171 
                0172       diagName = 'sPARblw'
                0173       diagTitle = 'downwelling scalar irradiance below surface'
                0174       diagUnits = 'uEin/m2/s       '
                0175       diagCode  = 'SM      L1      '
                0176       CALL DIAGNOSTICS_ADDTOLIST( diagNum,
                0177      I          diagName, diagCode, diagUnits, diagTitle, 0, myThid )
                0178 
                0179 #endif /* ALLOW_DIAGNOSTICS */
                0180 
                0181       RETURN
                0182       END