7 |
C !ROUTINE: WRITE_FULLARRAY_RL |
C !ROUTINE: WRITE_FULLARRAY_RL |
8 |
C !INTERFACE: |
C !INTERFACE: |
9 |
SUBROUTINE WRITE_FULLARRAY_RL( fnam, fld, kSize, |
SUBROUTINE WRITE_FULLARRAY_RL( fnam, fld, kSize, |
10 |
I biArg, bjArg, myIter, myThid ) |
I biArg, bjArg, |
11 |
|
I iRec, myIter, myThid ) |
12 |
|
|
13 |
C !DESCRIPTION: \bv |
C !DESCRIPTION: \bv |
14 |
C *==========================================================* |
C *==========================================================* |
16 |
C | write full array (including the overlap) to binary files |
C | write full array (including the overlap) to binary files |
17 |
C *==========================================================* |
C *==========================================================* |
18 |
C | Only used for debugging purpose. |
C | Only used for debugging purpose. |
19 |
C | can write local array (with no bi,bj) corresponding to |
C | can write local array (with no bi,bj) corresponding to |
20 |
C | tile biArg,bjArg |
C | tile biArg,bjArg |
21 |
C | or global array (with bi,bj) (called with biArg=bjArg=0) |
C | or global array (with bi,bj) (called with biArg=bjArg=0) |
22 |
C | Warning: does not explicitly do the byte-swapping |
C | Warning: does not explicitly do the byte-swapping |
36 |
CHARACTER*(*) fnam |
CHARACTER*(*) fnam |
37 |
INTEGER kSize |
INTEGER kSize |
38 |
INTEGER biArg, bjArg |
INTEGER biArg, bjArg |
39 |
|
INTEGER iRec |
40 |
INTEGER myIter |
INTEGER myIter |
41 |
INTEGER myThid |
INTEGER myThid |
42 |
_RL fld(1-Olx:sNx+Olx,1-Oly:sNy+Oly,kSize,nSx,nSy) |
_RL fld(1-Olx:sNx+Olx,1-Oly:sNy+Oly,kSize,nSx,nSy) |
50 |
C == Local variables == |
C == Local variables == |
51 |
CHARACTER*(2) fType |
CHARACTER*(2) fType |
52 |
INTEGER i,j,k,bi,bj,iG,jG |
INTEGER i,j,k,bi,bj,iG,jG |
53 |
INTEGER s1Lo,s1Hi, dUnit, filePrec, length_of_rec |
INTEGER s1Lo,s1Hi, dUnit, filePrec, length_of_rec, kRec |
54 |
CHARACTER*(80) fullName |
CHARACTER*(MAX_LEN_FNAM) fullName |
55 |
CEOP |
CEOP |
56 |
|
|
57 |
|
|
89 |
OPEN( dUnit, file=fullName, status='unknown', |
OPEN( dUnit, file=fullName, status='unknown', |
90 |
& access='direct', recl=length_of_rec ) |
& access='direct', recl=length_of_rec ) |
91 |
DO k = 1,kSize |
DO k = 1,kSize |
92 |
WRITE(dUnit,rec=k) (( fld(i,j,k,bi,bj), |
kRec = k + (iRec-1)*kSize |
93 |
& i=1-Olx,sNx+Olx), |
WRITE(dUnit,rec=kRec) (( fld(i,j,k,bi,bj), |
94 |
& j=1-Oly,sNy+Oly ) |
& i=1-Olx,sNx+Olx), |
95 |
|
& j=1-Oly,sNy+Oly ) |
96 |
ENDDO |
ENDDO |
97 |
CLOSE(dUnit) |
CLOSE(dUnit) |
98 |
|
|
118 |
OPEN( dUnit, file=fullName, status='unknown', |
OPEN( dUnit, file=fullName, status='unknown', |
119 |
& access='direct', recl=length_of_rec ) |
& access='direct', recl=length_of_rec ) |
120 |
DO k = 1,kSize |
DO k = 1,kSize |
121 |
WRITE(dUnit,rec=k) (( fld(i,j,k,1,1), |
kRec = k + (iRec-1)*kSize |
122 |
& i=1-Olx,sNx+Olx), |
WRITE(dUnit,rec=kRec) (( fld(i,j,k,1,1), |
123 |
& j=1-Oly,sNy+Oly ) |
& i=1-Olx,sNx+Olx), |
124 |
|
& j=1-Oly,sNy+Oly ) |
125 |
ENDDO |
ENDDO |
126 |
CLOSE(dUnit) |
CLOSE(dUnit) |
127 |
|
|