1 |
C $Header: /u/gcmpack/MITgcm/pkg/generic_advdiff/gad_valid_advscheme.F,v 1.1 2010/11/16 17:39:13 jmc Exp $ |
2 |
C $Name: $ |
3 |
|
4 |
#include "GAD_OPTIONS.h" |
5 |
|
6 |
CBOP |
7 |
C !ROUTINE: GAD_VALID_ADVSCHEME |
8 |
|
9 |
C !INTERFACE: |
10 |
LOGICAL FUNCTION GAD_VALID_ADVSCHEME( advScheme ) |
11 |
|
12 |
C !DESCRIPTION: |
13 |
C *==========================================================* |
14 |
C | LOGICAL FUNCTION GAD\_VALID\_ADVSCHEME |
15 |
C | o Checks for valid advection scheme number |
16 |
C *==========================================================* |
17 |
|
18 |
!USES: |
19 |
IMPLICIT NONE |
20 |
#include "SIZE.h" |
21 |
#include "GAD.h" |
22 |
|
23 |
C !INPUT PARAMETERS: |
24 |
C advScheme :: advection scheme number |
25 |
INTEGER advScheme |
26 |
|
27 |
C !LOCAL VARIABLES: |
28 |
CEOP |
29 |
|
30 |
GAD_VALID_ADVSCHEME = .FALSE. |
31 |
IF ( advScheme.GE.1 .AND. advScheme.LE.GAD_Scheme_MaxNum ) THEN |
32 |
GAD_VALID_ADVSCHEME = |
33 |
& advScheme .EQ. ENUM_UPWIND_1RST |
34 |
& .OR. advScheme .EQ. ENUM_CENTERED_2ND |
35 |
& .OR. advScheme .EQ. ENUM_UPWIND_3RD |
36 |
& .OR. advScheme .EQ. ENUM_CENTERED_4TH |
37 |
& .OR. advScheme .EQ. ENUM_DST2 |
38 |
& .OR. advScheme .EQ. ENUM_FLUX_LIMIT |
39 |
& .OR. advScheme .EQ. ENUM_DST3 |
40 |
& .OR. advScheme .EQ. ENUM_DST3_FLUX_LIMIT |
41 |
& .OR. advScheme .EQ. ENUM_OS7MP |
42 |
& .OR. advScheme .EQ. ENUM_SOM_PRATHER |
43 |
& .OR. advScheme .EQ. ENUM_SOM_LIMITER |
44 |
ENDIF |
45 |
|
46 |
RETURN |
47 |
END |