4 |
#include "CTRL_OPTIONS.h" |
#include "CTRL_OPTIONS.h" |
5 |
#include "STREAMICE_OPTIONS.h" |
#include "STREAMICE_OPTIONS.h" |
6 |
|
|
|
|
|
7 |
CBOP |
CBOP |
8 |
C !ROUTINE: CTRL_MAP_INI_GENARR |
C !ROUTINE: CTRL_MAP_INI_GENARR |
9 |
C !INTERFACE: |
C !INTERFACE: |
61 |
|
|
62 |
logical doglobalread |
logical doglobalread |
63 |
logical ladinit |
logical ladinit |
64 |
|
character*(MAX_LEN_FNAM) fnamebase |
65 |
character*( 80) fnamegeneric |
character*( 80) fnamegeneric |
66 |
|
character*(MAX_LEN_MBUF) msgBuf |
67 |
_RL fac |
_RL fac |
68 |
CEOP |
CEOP |
69 |
|
|
83 |
C-- generic - user-defined control vars |
C-- generic - user-defined control vars |
84 |
DO iarr = 1, maxCtrlArr2D |
DO iarr = 1, maxCtrlArr2D |
85 |
|
|
86 |
il=ILNBLNK( xx_genarr2d_file(iarr) ) |
fnamebase = xx_genarr2d_file(iarr) |
87 |
|
il=ILNBLNK( fnamebase ) |
88 |
write(fnamegeneric(1:80),'(2a,i10.10)') |
write(fnamegeneric(1:80),'(2a,i10.10)') |
89 |
& xx_genarr2d_file(iarr)(1:il),'.',optimcycle |
& fnamebase(1:il),'.',optimcycle |
90 |
CALL ACTIVE_READ_XY ( fnamegeneric, tmpfld2d, 1, |
CALL ACTIVE_READ_XY ( fnamegeneric, tmpfld2d, 1, |
91 |
& doglobalread, ladinit, optimcycle, |
& doglobalread, ladinit, optimcycle, |
92 |
& myThid, xx_genarr2d_dummy(iarr) ) |
& myThid, xx_genarr2d_dummy(iarr) ) |
95 |
do j = jmin,jmax |
do j = jmin,jmax |
96 |
do i = imin,imax |
do i = imin,imax |
97 |
|
|
|
|
|
98 |
if ( iarr .eq. 2 ) then |
if ( iarr .eq. 2 ) then |
99 |
H_streamice(i,j,bi,bj) = |
H_streamice(i,j,bi,bj) = |
100 |
& H_streamice(i,j,bi,bj) |
& H_streamice(i,j,bi,bj) |
101 |
& + tmpfld2d(i,j,bi,bj) |
& + tmpfld2d(i,j,bi,bj) |
102 |
|
#ifdef ALLOW_OPENAD |
103 |
|
cph & + xx_genarr2d(i,j,bi,bj,iarr) |
104 |
|
#endif |
105 |
|
|
106 |
elseif (iarr.eq.1) then |
elseif (iarr.eq.1) then |
107 |
B_glen(i,j,bi,bj) = |
B_glen(i,j,bi,bj) = |
108 |
& B_glen(i,j,bi,bj) |
& B_glen(i,j,bi,bj) |
109 |
& + tmpfld2d(i,j,bi,bj) |
& + tmpfld2d(i,j,bi,bj) |
110 |
|
#ifdef ALLOW_OPENAD |
111 |
|
cph & + xx_genarr2d(i,j,bi,bj,iarr) |
112 |
|
#endif |
113 |
|
|
114 |
! elseif (iarr.eq.5) then |
! elseif (iarr.eq.5) then |
115 |
! BDOT_streamice(i,j,bi,bj) = |
! BDOT_streamice(i,j,bi,bj) = |
118 |
|
|
119 |
endif |
endif |
120 |
|
|
|
|
|
121 |
enddo |
enddo |
122 |
enddo |
enddo |
123 |
ENDDO |
ENDDO |
125 |
C-- end iarr loop |
C-- end iarr loop |
126 |
ENDDO |
ENDDO |
127 |
|
|
|
|
|
128 |
_EXCH_XY_RL( H_streamice, myThid ) |
_EXCH_XY_RL( H_streamice, myThid ) |
129 |
_EXCH_XY_RL( R_low_si, myThid ) |
_EXCH_XY_RL( R_low_si, myThid ) |
130 |
_EXCH_XY_RL( C_basal_friction, myThid ) |
_EXCH_XY_RL( C_basal_friction, myThid ) |
131 |
|
|
|
|
|
132 |
#endif /* ALLOW_GENARR2D_CONTROL */ |
#endif /* ALLOW_GENARR2D_CONTROL */ |
133 |
|
|
134 |
#ifdef ALLOW_GENARR3D_CONTROL |
#ifdef ALLOW_GENARR3D_CONTROL |
141 |
C-- generic - user-defined control vars |
C-- generic - user-defined control vars |
142 |
DO iarr = 1, maxCtrlArr3D |
DO iarr = 1, maxCtrlArr3D |
143 |
|
|
144 |
il=ILNBLNK( xx_genarr3d_file(iarr) ) |
fnamebase = xx_genarr3d_file(iarr) |
145 |
|
il=ILNBLNK( fnamebase ) |
146 |
write(fnamegeneric(1:80),'(2a,i10.10)') |
write(fnamegeneric(1:80),'(2a,i10.10)') |
147 |
& xx_genarr3d_file(iarr)(1:il),'.',optimcycle |
& fnamebase(1:il),'.',optimcycle |
148 |
CALL ACTIVE_READ_XYZ( fnamegeneric, tmpfld3d, 1, |
CALL ACTIVE_READ_XYZ( fnamegeneric, tmpfld3d, 1, |
149 |
& doglobalread, ladinit, optimcycle, |
& doglobalread, ladinit, optimcycle, |
150 |
& myThid, xx_genarr3d_dummy(iarr) ) |
& myThid, xx_genarr3d_dummy(iarr) ) |