/[MITgcm]/MITgcm/pkg/ctrl/ctrl_check.F
ViewVC logotype

Diff of /MITgcm/pkg/ctrl/ctrl_check.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.7 by gforget, Wed Oct 20 22:06:51 2010 UTC revision 1.8 by gforget, Mon Oct 25 21:44:13 2010 UTC
# Line 24  C     === Global variables === Line 24  C     === Global variables ===
24  #include "PARAMS.h"  #include "PARAMS.h"
25    
26  #include "ctrl.h"  #include "ctrl.h"
27    #ifdef ALLOW_EXF
28    # include "EXF_PARAM.h"
29    #endif
30    
31  C     === Routine arguments ===  C     === Routine arguments ===
32  C     myThid -  Number of this instance  C     myThid -  Number of this instance
# Line 32  C     myThid -  Number of this instance Line 35  C     myThid -  Number of this instance
35  C     === Local variables ===  C     === Local variables ===
36  C     msgBuf      - Informational/error meesage buffer  C     msgBuf      - Informational/error meesage buffer
37        CHARACTER*(MAX_LEN_MBUF) msgBuf        CHARACTER*(MAX_LEN_MBUF) msgBuf
38          LOGICAL solve4Stress
39    
40        WRITE(msgBuf,'(A)') 'CTRL_CHECK: ctrl package'        WRITE(msgBuf,'(A)') 'CTRL_CHECK: ctrl package'
41        CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,        CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
# Line 119  C     Can not have both atmos. state and Line 123  C     Can not have both atmos. state and
123  #ifdef ALLOW_SEAICE  #ifdef ALLOW_SEAICE
124  C     pkg/seaice requires a particular set of control parameters  C     pkg/seaice requires a particular set of control parameters
125  C     which in turn require a particular set of input fields  C     which in turn require a particular set of input fields
126  #ifndef ALLOW_ATM_WIND  # if ( defined ALLOW_HFLUX_CONTROL || defined ALLOW_SFLUX_CONTROL )
       WRITE(msgBuf,'(A)')  
      &     'The SEAICE adjoint requires ALLOW_ATM_WIND'  
       CALL PRINT_ERROR( msgBuf , 1)  
       STOP 'ABNORMAL END: S/R CTRL_CHECK'  
 #endif  
 #if (defined ALLOW_HFLUX_CONTROL || defined ALLOW_SFLUX_CONTROL || \  
      defined ALLOW_USTRESS_CONTROL || defined ALLOW_VSTRESS_CONTROL )  
127        WRITE(msgBuf,'(A)')        WRITE(msgBuf,'(A)')
128       &     'The SEAICE adjoint does not allow the surface fluxes'       &     'The SEAICE adjoint does not allow the surface fluxes'
129        CALL PRINT_ERROR( msgBuf , 1)        CALL PRINT_ERROR( msgBuf , 1)
130        WRITE(msgBuf,'(A)') 'ALLOW_HFLUX_CONTROL'        WRITE(msgBuf,'(A)') '  ALLOW_HFLUX_CONTROL'
       CALL PRINT_ERROR( msgBuf , 1)  
       WRITE(msgBuf,'(A)') 'ALLOW_SFLUX_CONTROL'  
       CALL PRINT_ERROR( msgBuf , 1)  
       WRITE(msgBuf,'(A)') 'ALLOW_USTRESS_CONTROL'  
131        CALL PRINT_ERROR( msgBuf , 1)        CALL PRINT_ERROR( msgBuf , 1)
132        WRITE(msgBuf,'(A)') 'ALLOW_VSTRESS_CONTROL'        WRITE(msgBuf,'(A)') '  ALLOW_SFLUX_CONTROL'
133        CALL PRINT_ERROR( msgBuf , 1)        CALL PRINT_ERROR( msgBuf , 1)
134        WRITE(msgBuf,'(A)') 'to be control vaiables'        WRITE(msgBuf,'(A)') 'to be control variables'
135        CALL PRINT_ERROR( msgBuf , 1)        CALL PRINT_ERROR( msgBuf , 1)
136        STOP 'ABNORMAL END: S/R CTRL_CHECK'        STOP 'ABNORMAL END: S/R CTRL_CHECK'
137  #endif  # endif
138    # if ( defined ALLOW_USTRESS_CONTROL || defined ALLOW_VSTRESS_CONTROL )
139    #  ifdef ALLOW_BULK_LARGEYEAGER04
140          solve4Stress = wspeedfile .NE. ' '
141    #  else
142          solve4Stress = .FALSE.
143    #  endif
144          if (.NOT.solve4Stress) then
145            WRITE(msgBuf,'(A)')
146         &     'The SEAICE adjoint does not allow the surface fluxes'
147            CALL PRINT_ERROR( msgBuf , 1)
148            WRITE(msgBuf,'(A)') '  ALLOW_USTRESS_CONTROL'
149            CALL PRINT_ERROR( msgBuf , 1)
150            WRITE(msgBuf,'(A)') '  ALLOW_VSTRESS_CONTROL'
151            CALL PRINT_ERROR( msgBuf , 1)
152            WRITE(msgBuf,'(A)') 'to be control variables'
153            CALL PRINT_ERROR( msgBuf , 1)
154            WRITE(msgBuf,'(A)') 'except if wspeedfile is specified'
155            CALL PRINT_ERROR( msgBuf , 1)
156            WRITE(msgBuf,'(A)') 'and ifdef ALLOW_BULK_LARGEYEAGER04'
157            CALL PRINT_ERROR( msgBuf , 1)
158            STOP 'ABNORMAL END: S/R CTRL_CHECK'
159          endif
160    # endif
161  #endif /* ALLOW_SEAICE */  #endif /* ALLOW_SEAICE */
162        return        return
163        end        end

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8

  ViewVC Help
Powered by ViewVC 1.1.22