| 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) ) |