20 |
#include "PARAMS.h" |
#include "PARAMS.h" |
21 |
#include "GRID.h" |
#include "GRID.h" |
22 |
#include "PTRACERS_SIZE.h" |
#include "PTRACERS_SIZE.h" |
23 |
#include "PTRACERS.h" |
#include "PTRACERS_PARAMS.h" |
24 |
|
#include "PTRACERS_FIELDS.h" |
25 |
|
|
26 |
C !INPUT PARAMETERS: |
C !INPUT PARAMETERS: |
27 |
C myThid :: thread number |
C myThid :: thread number |
32 |
C !LOCAL VARIABLES: |
C !LOCAL VARIABLES: |
33 |
C i,j,k,bi,bj,iTracer :: loop indices |
C i,j,k,bi,bj,iTracer :: loop indices |
34 |
INTEGER i,j,k,bi,bj,iTracer |
INTEGER i,j,k,bi,bj,iTracer |
|
CHARACTER*(10) suff |
|
35 |
CEOP |
CEOP |
36 |
|
|
37 |
C Loop over tracers |
C Loop over tracers |
43 |
|
|
44 |
C Initialize arrays in common blocks : |
C Initialize arrays in common blocks : |
45 |
DO k=1,Nr |
DO k=1,Nr |
46 |
DO j=1-Oly,sNy+OLy |
DO j=1-OLy,sNy+OLy |
47 |
DO i=1-Olx,sNx+Olx |
DO i=1-OLx,sNx+OLx |
48 |
pTracer(i,j,k,bi,bj,iTracer) = PTRACERS_ref(k,iTracer) |
pTracer(i,j,k,bi,bj,iTracer) = PTRACERS_ref(k,iTracer) |
49 |
gPtr(i,j,k,bi,bj,iTracer) = 0. _d 0 |
gPtr(i,j,k,bi,bj,iTracer) = 0. _d 0 |
50 |
gPtrNM1(i,j,k,bi,bj,iTracer) = 0. _d 0 |
gpTrNm1(i,j,k,bi,bj,iTracer) = 0. _d 0 |
51 |
ENDDO |
ENDDO |
52 |
ENDDO |
ENDDO |
53 |
ENDDO |
ENDDO |
54 |
DO j=1-Oly,sNy+OLy |
DO j=1-OLy,sNy+OLy |
55 |
DO i=1-Olx,sNx+Olx |
DO i=1-OLx,sNx+OLx |
56 |
surfaceForcingPtr(i,j,bi,bj,iTracer) = 0. _d 0 |
surfaceForcingPTr(i,j,bi,bj,iTracer) = 0. _d 0 |
57 |
ENDDO |
ENDDO |
58 |
ENDDO |
ENDDO |
59 |
|
|
82 |
DO bj = myByLo(myThid), myByHi(myThid) |
DO bj = myByLo(myThid), myByHi(myThid) |
83 |
DO bi = myBxLo(myThid), myBxHi(myThid) |
DO bi = myBxLo(myThid), myBxHi(myThid) |
84 |
DO k=1,Nr |
DO k=1,Nr |
85 |
DO j=1-Oly,sNy+OLy |
DO j=1-OLy,sNy+OLy |
86 |
DO i=1-Olx,sNx+Olx |
DO i=1-OLx,sNx+OLx |
87 |
IF (maskC(i,j,k,bi,bj).EQ.0.) |
IF (maskC(i,j,k,bi,bj).EQ.0.) |
88 |
& pTracer(i,j,k,bi,bj,iTracer)=0. _d 0 |
& pTracer(i,j,k,bi,bj,iTracer)=0. _d 0 |
89 |
ENDDO |
ENDDO |
95 |
|
|
96 |
C Read from a pickup file if needed |
C Read from a pickup file if needed |
97 |
IF (nIter0.GT.PTRACERS_Iter0) THEN |
IF (nIter0.GT.PTRACERS_Iter0) THEN |
|
C Suffix for pickup files |
|
|
IF (pickupSuff.EQ.' ') THEN |
|
|
WRITE(suff,'(I10.10)') nIter0 |
|
|
ELSE |
|
|
WRITE(suff,'(A10)') pickupSuff |
|
|
ENDIF |
|
98 |
CALL PTRACERS_READ_PICKUP( nIter0, myThid ) |
CALL PTRACERS_READ_PICKUP( nIter0, myThid ) |
99 |
ENDIF |
ENDIF |
100 |
|
|