2 |
|
|
3 |
#include "CPP_OPTIONS.h" |
#include "CPP_OPTIONS.h" |
4 |
|
|
5 |
SUBROUTINE PACKAGE_CHECK( myThid ) |
SUBROUTINE PACKAGES_CHECK( myThid ) |
6 |
C /==========================================================\ |
C /==========================================================\ |
7 |
C | SUBROUTINE PACKAGE_CHECK | |
C | SUBROUTINE PACKAGES_CHECK | |
8 |
C | o Check dependances between selected packages | |
C | o Check dependances between selected packages | |
9 |
C |==========================================================| |
C |==========================================================| |
10 |
C \==========================================================/ |
C \==========================================================/ |
25 |
|
|
26 |
|
|
27 |
#ifndef ALLOW_KPP |
#ifndef ALLOW_KPP |
28 |
IF (use_KPPmixing) THEN |
IF (useKPP) THEN |
29 |
WRITE(msgBuf,'(A)') '#define ALLOW_KPP to use use_KPPmixing' |
WRITE(msgBuf,'(A)') '#define ALLOW_KPP to use useKPP' |
30 |
CALL PRINT_ERROR( msgBuf , 1) |
CALL PRINT_ERROR( msgBuf , 1) |
31 |
STOP 'ABNORMAL END: S/R PACKAGE_CHECK' |
STOP 'ABNORMAL END: S/R PACKAGE_CHECK' |
32 |
ENDIF |
ENDIF |
35 |
CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, |
CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, |
36 |
& SQUEEZE_RIGHT , 1) |
& SQUEEZE_RIGHT , 1) |
37 |
C KPP needs convection turned off (will be packaged later) |
C KPP needs convection turned off (will be packaged later) |
38 |
IF (use_KPPmixing) THEN |
IF (useKPP) THEN |
39 |
IF (cAdjFreq.NE.0. .OR. |
IF (cAdjFreq.NE.0. .OR. |
40 |
& ivdc_kappa.NE.0.) THEN |
& ivdc_kappa.NE.0.) THEN |
41 |
WRITE(msgBuf,'(A)') 'Some form of convection has been enabled' |
WRITE(msgBuf,'(A)') 'Some form of convection has been enabled' |
42 |
CALL PRINT_ERROR( msgBuf , 1) |
CALL PRINT_ERROR( msgBuf , 1) |
43 |
STOP 'ABNORMAL END: S/R PACKAGE_CHECK' |
STOP 'ABNORMAL END: S/R PACKAGE_CHECK' |
44 |
ENDIF |
ENDIF |
45 |
IF (.NOT.implicitDiffusion) THEN |
IF (.NOT.implicitDiffusion ) THEN |
46 |
WRITE(msgBuf,'(A)') 'KPP needs implicitDiffusion to be enabled' |
WRITE(msgBuf,'(A)') 'KPP needs implicitDiffusion to be enabled' |
47 |
CALL PRINT_ERROR( msgBuf , 1) |
CALL PRINT_ERROR( msgBuf , 1) |
48 |
STOP 'ABNORMAL END: S/R PACKAGE_CHECK' |
STOP 'ABNORMAL END: S/R PACKAGE_CHECK' |
49 |
ENDIF |
ENDIF |
50 |
|
IF (.NOT.implicitViscosity) THEN |
51 |
|
WRITE(msgBuf,'(A)') 'KPP needs implicitViscosity to be enabled' |
52 |
|
CALL PRINT_ERROR( msgBuf , 1) |
53 |
|
STOP 'ABNORMAL END: S/R PACKAGE_CHECK' |
54 |
|
ENDIF |
55 |
ENDIF |
ENDIF |
56 |
#endif |
#endif |
57 |
|
|
58 |
#ifndef ALLOW_GMREDI |
#ifndef ALLOW_GMREDI |
59 |
IF (use_GMRedi) THEN |
IF (useGMRedi) CALL PACKAGES_CHECK_ERROR('GMREDI') |
|
WRITE(msgBuf,'(A)') '#define ALLOW_GMREDI to use use_GMRedi' |
|
|
CALL PRINT_ERROR( msgBuf , 1) |
|
|
STOP 'ABNORMAL END: S/R PACKAGE_CHECK' |
|
|
ENDIF |
|
60 |
#else |
#else |
61 |
WRITE(msgBuf,'(A)') 'PACKAGE_CHECK: #define GMREDI' |
IF (useGMRedi) CALL GMREDI_CHECK( myThid ) |
|
C GM/Redi needs implicit diffusion (will be packaged later) |
|
|
IF (use_GMRedi) THEN |
|
|
IF (.NOT.implicitDiffusion) THEN |
|
|
WRITE(msgBuf,'(A)') 'GM/Redi needs implicitDiffusion=.true.' |
|
|
CALL PRINT_ERROR( msgBuf , 1) |
|
|
cTemp STOP 'ABNORMAL END: S/R PACKAGE_CHECK' |
|
|
ENDIF |
|
|
ENDIF |
|
62 |
#endif |
#endif |
63 |
|
|
|
|
|
64 |
return |
return |
65 |
end |
end |