1 |
C $Header$ |
C $Header$ |
2 |
C $Name$ |
C $Name$ |
3 |
|
|
4 |
|
#include "PACKAGES_CONFIG.h" |
5 |
#include "CPP_OPTIONS.h" |
#include "CPP_OPTIONS.h" |
6 |
|
|
7 |
CBOP |
CBOP |
48 |
#include "DYNVARS.h" |
#include "DYNVARS.h" |
49 |
#include "EEPARAMS.h" |
#include "EEPARAMS.h" |
50 |
#include "PARAMS.h" |
#include "PARAMS.h" |
51 |
|
#include "PACKAGES_CONFIG.h" |
52 |
|
#ifdef ALLOW_GENERIC_ADVDIFF |
53 |
#include "GAD.h" |
#include "GAD.h" |
54 |
|
#endif |
55 |
|
|
56 |
C !INPUT/OUTPUT PARAMETERS: |
C !INPUT/OUTPUT PARAMETERS: |
57 |
C == Routine arguments == |
C == Routine arguments == |
84 |
|
|
85 |
CEOP |
CEOP |
86 |
|
|
87 |
|
#ifdef ALLOW_GENERIC_ADVDIFF |
88 |
C === Local variables === |
C === Local variables === |
89 |
LOGICAL calcAdvection |
LOGICAL calcAdvection |
90 |
|
INTEGER iterNb |
91 |
|
|
92 |
#ifdef ALLOW_AUTODIFF_TAMC |
#ifdef ALLOW_AUTODIFF_TAMC |
93 |
C-- only the kUp part of fverS is set in this subroutine |
C-- only the kUp part of fverS is set in this subroutine |
113 |
I myTime,myThid) |
I myTime,myThid) |
114 |
|
|
115 |
IF ( saltAdamsBashforth ) THEN |
IF ( saltAdamsBashforth ) THEN |
116 |
|
iterNb = myIter |
117 |
|
IF (staggerTimeStep) iterNb = myIter - 1 |
118 |
|
#ifdef ALLOW_ADAMSBASHFORTH_3 |
119 |
|
CALL ADAMS_BASHFORTH3( |
120 |
|
I bi, bj, k, |
121 |
|
U gS, gsNm, |
122 |
|
I iterNb, myThid ) |
123 |
|
#else |
124 |
CALL ADAMS_BASHFORTH2( |
CALL ADAMS_BASHFORTH2( |
125 |
I bi, bj, K, |
I bi, bj, k, |
126 |
U gS, gSnm1, |
U gS, gsNm1, |
127 |
I myIter, myThid ) |
I iterNb, myThid ) |
128 |
|
#endif |
129 |
ENDIF |
ENDIF |
130 |
|
|
131 |
C-- External salinity forcing term(s) outside Adams-Bashforth: |
C-- External salinity forcing term(s) outside Adams-Bashforth: |
137 |
#ifdef NONLIN_FRSURF |
#ifdef NONLIN_FRSURF |
138 |
IF (nonlinFreeSurf.GT.0) THEN |
IF (nonlinFreeSurf.GT.0) THEN |
139 |
CALL FREESURF_RESCALE_G( |
CALL FREESURF_RESCALE_G( |
140 |
I bi, bj, K, |
I bi, bj, k, |
141 |
U gS, |
U gS, |
142 |
I myThid ) |
I myThid ) |
143 |
IF ( saltAdamsBashforth ) |
IF ( saltAdamsBashforth ) THEN |
144 |
& CALL FREESURF_RESCALE_G( |
#ifdef ALLOW_ADAMSBASHFORTH_3 |
145 |
I bi, bj, K, |
CALL FREESURF_RESCALE_G( |
146 |
U gSnm1, |
I bi, bj, k, |
147 |
|
U gsNm(1-OLx,1-OLy,1,1,1,1), |
148 |
|
I myThid ) |
149 |
|
CALL FREESURF_RESCALE_G( |
150 |
|
I bi, bj, k, |
151 |
|
U gsNm(1-OLx,1-OLy,1,1,1,2), |
152 |
I myThid ) |
I myThid ) |
153 |
|
#else |
154 |
|
CALL FREESURF_RESCALE_G( |
155 |
|
I bi, bj, k, |
156 |
|
U gsNm1, |
157 |
|
I myThid ) |
158 |
|
#endif |
159 |
|
ENDIF |
160 |
ENDIF |
ENDIF |
161 |
#endif /* NONLIN_FRSURF */ |
#endif /* NONLIN_FRSURF */ |
162 |
|
|
163 |
|
#endif /* ALLOW_GENERIC_ADVDIFF */ |
164 |
|
|
165 |
RETURN |
RETURN |
166 |
END |
END |