Back to home page

MITgcm

 
 

    


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

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
c73a92df23 Jean*0001 #include "ATM_PHYS_OPTIONS.h"
                0002 
                0003 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
                0004 CBOP 0
                0005 C !ROUTINE: ATM_PHYS_CHECK
                0006 
                0007 C !INTERFACE:
                0008       SUBROUTINE ATM_PHYS_CHECK( myThid )
                0009 
                0010 C     !DESCRIPTION:
                0011 C     Check dependances with other packages
                0012 
                0013 C     !USES:
                0014       IMPLICIT NONE
                0015 #include "SIZE.h"
                0016 #include "EEPARAMS.h"
                0017 #include "PARAMS.h"
                0018 #include "ATM_PHYS_PARAMS.h"
                0019 
                0020 C     !INPUT PARAMETERS:
                0021 C     myThid   :: my Thread Id number
                0022       INTEGER myThid
                0023 CEOP
                0024 
                0025 #ifdef ALLOW_ATM_PHYS
                0026 C     !LOCAL VARIABLES:
                0027 C     msgBuf   :: Informational/error message buffer
                0028       CHARACTER*(MAX_LEN_MBUF) msgBuf
                0029 
                0030       _BEGIN_MASTER(myThid)
                0031 
                0032        WRITE(msgBuf,'(A)') 'ATM_PHYS_CHECK: #define ALLOW_ATM_PHYS'
                0033        CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
                0034      &                     SQUEEZE_RIGHT , 1)
                0035 
                0036 C--  Print out some kee parameters :
                0037        CALL WRITE_0D_L( atmPhys_addTendT, INDEX_NONE,
                0038      &  'atmPhys_addTendT =',
                0039      &  ' /* apply Atm-Phys tendency to Temperature Eq.*/')
                0040        CALL WRITE_0D_L( atmPhys_addTendS, INDEX_NONE,
                0041      &  'atmPhys_addTendS =',
                0042      &  ' /* apply Atm-Phys tendency to Salinity Eq.*/')
                0043        CALL WRITE_0D_L( atmPhys_addTendU, INDEX_NONE,
                0044      &  'atmPhys_addTendU =',
                0045      &  ' /* apply Atm-Phys tendency to U momentum Eq.*/')
                0046        CALL WRITE_0D_L( atmPhys_addTendV, INDEX_NONE,
                0047      &  'atmPhys_addTendV =',
                0048      &  ' /* apply Atm-Phys tendency to V momentum Eq.*/')
                0049        CALL WRITE_0D_L( atmPhys_stepSST, INDEX_NONE,
                0050      &  'atmPhys_stepSST =', ' /* step forward SST field */')
0d5d00bd7f Jean*0051        IF ( atmPhys_tauDampUV.LE.zeroRL ) THEN
                0052         CALL WRITE_0D_RL( atmPhys_tauDampUV, INDEX_NONE,
                0053      &  'atmPhys_tauDampUV =', ' /* U,V damping time-scale (s) */')
                0054        ELSE
                0055         CALL WRITE_1D_RL( atmPhys_dampUVfac, Nr, INDEX_K,
                0056      &  'atmPhys_dampUVfac =', ' /* U,V danping coefficient (1/s) */')
                0057        ENDIF
c73a92df23 Jean*0058 
c9694dc201 Jean*0059        CALL WRITE_0D_C( atmPhys_sstFile, -1, INDEX_NONE,
                0060      &  'atmPhys_sstFile =',' /* SST input file */')
c73a92df23 Jean*0061        CALL WRITE_0D_C( atmPhys_QflxFile, -1, INDEX_NONE,
c9694dc201 Jean*0062      &  'atmPhys_qFlxFile =',' /* Q-flux input file */')
                0063        CALL WRITE_0D_C( atmPhys_mxldFile, -1, INDEX_NONE,
                0064      &  'atmPhys_mxldFile =',' /* Mixed-Layer Depth inp. file */')
                0065        CALL WRITE_0D_C( atmPhys_albedoFile, -1, INDEX_NONE,
                0066      &  'atmPhys_albedoFile =',' /* Albedo input file */')
c73a92df23 Jean*0067 
                0068 C--  Check parameters:
                0069 
                0070 C-     Put stops here if some flags are wrongly chosen.
                0071 C-     For example, require this package to use tempStepping
                0072        IF ( .NOT.tempStepping .AND. atmPhys_addTendT ) THEN
                0073         WRITE(msgBuf,'(A)') 'An example requirement is:'
                0074         CALL PRINT_ERROR( msgBuf , 1)
                0075         WRITE(msgBuf,'(A)') 'atmPhys_addTendT needs tempStepping=.true.'
                0076         CALL PRINT_ERROR( msgBuf , 1)
                0077         CALL ALL_PROC_DIE( 0 )
                0078         STOP 'ABNORMAL END: S/R ATM_PHYS_CHECK'
                0079        ENDIF
                0080 
                0081        WRITE(msgBuf,'(A)') ' '
                0082        CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
                0083      &                     SQUEEZE_RIGHT , 1)
                0084       _END_MASTER(myThid)
                0085 
                0086 #endif /* ALLOW_ATM_PHYS */
                0087 
                0088       RETURN
                0089       END