C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/pkg/layers/layers_check.F,v 1.3 2009/12/28 02:33:49 jmc Exp $ C $Name: $ #include "LAYERS_OPTIONS.h" C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| SUBROUTINE LAYERS_CHECK( myThid ) C Check dependances with other packages IMPLICIT NONE #include "SIZE.h" #include "EEPARAMS.h" #include "PARAMS.h" #include "EOS.h" #include "LAYERS_SIZE.h" #include "LAYERS.h" C myThid :: my Thread Id number INTEGER myThid C LOCAL VARIABLES: C msgBuf :: Informational/error message buffer CHARACTER*(MAX_LEN_MBUF) msgBuf #ifdef ALLOW_LAYERS _BEGIN_MASTER(myThid) WRITE(msgBuf,'(A)') 'LAYERS_CHECK: #define LAYERS' CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, & SQUEEZE_RIGHT , 1) C-- Print out some key parameters : CALL WRITE_0D_I( NZZ, INDEX_NONE, 'NZZ =', & ' /* number of levels in the fine vertical grid */') CALL WRITE_1D_RL( dZZf, NZZ, INDEX_K, 'dZZf =', & ' /* fine vertical grid spacing for isopycnal interp */') CALL WRITE_1D_RL(layers_G,Nlayers+1, INDEX_K,'layers_G =', & ' /* boundaries of isopycnal-averaging bins */') C-- Check parameters: C For now the package will only work if density ~ temperature IF ( (eosType .EQ. 'LINEAR') & .AND. (sBeta .EQ. 0.0 _d 0) ) THEN C we're good ELSE WRITE(msgBuf,'(2A)') 'eosType must be eosType=''LINEAR''', & ' and sBeta must = 0.0' CALL PRINT_ERROR( msgBuf , 1) STOP 'ABNORMAL END: S/R LAYERS_CHECK' ENDIF _END_MASTER(myThid) #endif /* ALLOW_LAYERS */ RETURN END