| 1 |
C $Header$ |
C $Header$ |
| 2 |
|
|
| 3 |
#include "CPP_OPTIONS.h" |
#include "CPP_OPTIONS.h" |
| 4 |
|
|
| 40 |
C-- Forcing term |
C-- Forcing term |
| 41 |
C Add windstress momentum impulse into the top-layer |
C Add windstress momentum impulse into the top-layer |
| 42 |
IF ( kLev .EQ. 1 ) THEN |
IF ( kLev .EQ. 1 ) THEN |
|
CALL EXTERNAL_FORCING_SURF_U( |
|
|
& iMin, iMax, jMin, jMax,bi,bj,myThid ) |
|
| 43 |
DO j=jMin,jMax |
DO j=jMin,jMax |
| 44 |
DO i=iMin,iMax |
DO i=iMin,iMax |
| 45 |
gU(i,j,kLev,bi,bj) = gU(i,j,kLev,bi,bj) |
gU(i,j,kLev,bi,bj) = gU(i,j,kLev,bi,bj) |
| 90 |
C-- Forcing term |
C-- Forcing term |
| 91 |
C Add windstress momentum impulse into the top-layer |
C Add windstress momentum impulse into the top-layer |
| 92 |
IF ( kLev .EQ. 1 ) THEN |
IF ( kLev .EQ. 1 ) THEN |
|
CALL EXTERNAL_FORCING_SURF_V( |
|
|
I iMin, iMax, jMin, jMax,bi,bj,myThid ) |
|
| 93 |
DO j=jMin,jMax |
DO j=jMin,jMax |
| 94 |
DO i=iMin,iMax |
DO i=iMin,iMax |
| 95 |
gV(i,j,kLev,bi,bj) = gV(i,j,kLev,bi,bj) |
gV(i,j,kLev,bi,bj) = gV(i,j,kLev,bi,bj) |
| 123 |
#include "DYNVARS.h" |
#include "DYNVARS.h" |
| 124 |
#include "FFIELDS.h" |
#include "FFIELDS.h" |
| 125 |
#ifdef SHORTWAVE_HEATING |
#ifdef SHORTWAVE_HEATING |
| 126 |
integer two, k |
integer two |
| 127 |
_RS one |
_RL minusone |
| 128 |
parameter (two=2,one=1.) |
parameter (two=2,minusone=-1.) |
| 129 |
_RS ztmp(two), swfracb(two) |
_RL swfracb(two) |
| 130 |
#endif |
#endif |
| 131 |
|
|
| 132 |
|
|
| 149 |
C-- Forcing term |
C-- Forcing term |
| 150 |
C Add heat in top-layer |
C Add heat in top-layer |
| 151 |
IF ( kLev .EQ. 1 ) THEN |
IF ( kLev .EQ. 1 ) THEN |
|
CALL EXTERNAL_FORCING_SURF_T( |
|
|
I iMin, iMax, jMin, jMax,bi,bj,myThid ) |
|
| 152 |
DO j=jMin,jMax |
DO j=jMin,jMax |
| 153 |
DO i=iMin,iMax |
DO i=iMin,iMax |
| 154 |
gT(i,j,kLev,bi,bj)=gT(i,j,kLev,bi,bj) |
gT(i,j,kLev,bi,bj)=gT(i,j,kLev,bi,bj) |
| 159 |
|
|
| 160 |
#ifdef SHORTWAVE_HEATING |
#ifdef SHORTWAVE_HEATING |
| 161 |
C Penetrating SW radiation |
C Penetrating SW radiation |
| 162 |
ztmp(1)=0.0 |
swfracb(1)=abs(rF(klev)) |
| 163 |
do k=1,klev-1 |
swfracb(2)=abs(rF(klev+1)) |
| 164 |
ztmp(1)=ztmp(1)-delZ(k) |
call SWFRAC( |
| 165 |
enddo |
I two,minusone, |
| 166 |
ztmp(2)=ztmp(1)-delZ(klev) |
I myCurrentTime,myThid, |
| 167 |
call SWFRAC(two,one,ztmp, swfracb) |
O swfracb) |
| 168 |
DO j=jMin,jMax |
DO j=jMin,jMax |
| 169 |
DO i=iMin,iMax |
DO i=iMin,iMax |
| 170 |
gT(i,j,klev,bi,bj) = gT(i,j,klev,bi,bj) |
gT(i,j,klev,bi,bj) = gT(i,j,klev,bi,bj) |
| 215 |
C-- Forcing term |
C-- Forcing term |
| 216 |
C Add fresh-water in top-layer |
C Add fresh-water in top-layer |
| 217 |
IF ( kLev .EQ. 1 ) THEN |
IF ( kLev .EQ. 1 ) THEN |
|
CALL EXTERNAL_FORCING_SURF_S( |
|
|
I iMin, iMax, jMin, jMax,bi,bj,myThid ) |
|
| 218 |
DO j=jMin,jMax |
DO j=jMin,jMax |
| 219 |
DO i=iMin,iMax |
DO i=iMin,iMax |
| 220 |
gS(i,j,kLev,bi,bj)=gS(i,j,kLev,bi,bj) |
gS(i,j,kLev,bi,bj)=gS(i,j,kLev,bi,bj) |