Changeset 11536 for NEMO/trunk/tests/ICE_ADV2D/MY_SRC/usrdef_nam.F90
- Timestamp:
- 2019-09-11T15:54:18+02:00 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/tests/ICE_ADV2D/MY_SRC/usrdef_nam.F90
r10515 r11536 40 40 CONTAINS 41 41 42 SUBROUTINE usr_def_nam( ldtxt, ldnam,cd_cfg, kk_cfg, kpi, kpj, kpk, kperio )42 SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 43 43 !!---------------------------------------------------------------------- 44 44 !! *** ROUTINE dom_nam *** … … 52 52 !! ** input : - namusr_def namelist found in namelist_cfg 53 53 !!---------------------------------------------------------------------- 54 CHARACTER(len=*), DIMENSION(:), INTENT(out) :: ldtxt, ldnam ! stored print information55 54 CHARACTER(len=*) , INTENT(out) :: cd_cfg ! configuration name 56 55 INTEGER , INTENT(out) :: kk_cfg ! configuration resolution … … 58 57 INTEGER , INTENT(out) :: kperio ! lateral global domain b.c. 59 58 ! 60 INTEGER :: ios , ii! Local integer59 INTEGER :: ios ! Local integer 61 60 REAL(wp):: zlx, zly ! Local scalars 62 61 !! … … 64 63 !!---------------------------------------------------------------------- 65 64 ! 66 ii = 167 !68 65 REWIND( numnam_cfg ) ! Namelist namusr_def (exist in namelist_cfg only) 69 66 READ ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 70 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 67 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 68 ! 69 IF(lwm) WRITE( numond, namusr_def ) 71 70 ! 72 71 #if defined key_agrif … … 79 78 #endif 80 79 ! 81 WRITE( ldnam(:), namusr_def )80 IF(lwm) WRITE( numond, namusr_def ) 82 81 ! 83 82 cd_cfg = 'ICE_ADV2D' ! name & resolution (not used) 84 kk_cfg = INT( rn_dx )83 kk_cfg = NINT( rn_dx ) 85 84 ! 86 ! Global Domain size: ICE_ADV2D domain is 300 km x 300 Km x 10 m 87 kpi = INT( 300.e3 / rn_dx ) -1 88 kpj = INT( 300.e3 / rn_dy ) -1 89 #if defined key_agrif 90 IF( .NOT. Agrif_Root() ) THEN 85 IF( Agrif_Root() ) THEN ! Global Domain size: ICE_AGRIF domain is 300 km x 300 Km x 10 m 86 kpi = NINT( 300.e3 / rn_dx ) - 1 87 kpj = NINT( 300.e3 / rn_dy ) - 1 88 ELSE 91 89 kpi = nbcellsx + 2 + 2*nbghostcells 92 90 kpj = nbcellsy + 2 + 2*nbghostcells 93 91 ENDIF 94 #endif95 92 kpk = 1 96 93 ! … … 99 96 zlx = kpi*rn_dx*1.e-3 100 97 zly = kpj*rn_dy*1.e-3 98 ! 99 IF( Agrif_Root() ) THEN ; kperio = 7 ! ICE_AGRIF configuration : bi-periodic basin 100 ELSE ; kperio = 0 ! closed periodicity for the zoom 101 ENDIF 101 102 ! ! control print 102 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1 103 WRITE(ldtxt(ii),*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' ; ii = ii + 1 104 WRITE(ldtxt(ii),*) '~~~~~~~~~~~ ' ; ii = ii + 1 105 WRITE(ldtxt(ii),*) ' Namelist namusr_def : ICE_ADV2D test case' ; ii = ii + 1 106 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' ; ii = ii + 1 107 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dy = ', rn_dy, ' meters' ; ii = ii + 1 108 WRITE(ldtxt(ii),*) ' ICE_ADV2D domain = 300 km x 300Km x 1 grid-point ' ; ii = ii + 1 109 WRITE(ldtxt(ii),*) ' LX [km]: ', zlx ; ii = ii + 1 110 WRITE(ldtxt(ii),*) ' LY [km]: ', zly ; ii = ii + 1 111 WRITE(ldtxt(ii),*) ' resulting global domain size : jpiglo = ', kpi ; ii = ii + 1 112 WRITE(ldtxt(ii),*) ' jpjglo = ', kpj ; ii = ii + 1 113 WRITE(ldtxt(ii),*) ' jpkglo = ', kpk ; ii = ii + 1 114 WRITE(ldtxt(ii),*) ' Coriolis:', ln_corio ; ii = ii + 1 115 ! 116 ! ! Set the lateral boundary condition of the global domain 117 kperio = 7 ! ICE_ADV2D configuration : bi-periodic basin 118 #if defined key_agrif 119 IF( .NOT. Agrif_Root() ) THEN 120 kperio = 0 103 IF(lwp) THEN 104 WRITE(numout,*) ' ' 105 WRITE(numout,*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' 106 WRITE(numout,*) '~~~~~~~~~~~ ' 107 WRITE(numout,*) ' Namelist namusr_def : ICE_ADV2D test case' 108 WRITE(numout,*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' 109 WRITE(numout,*) ' horizontal resolution rn_dy = ', rn_dy, ' meters' 110 WRITE(numout,*) ' ICE_ADV2D domain = 300 km x 300Km x 1 grid-point ' 111 WRITE(numout,*) ' LX [km]: ', zlx 112 WRITE(numout,*) ' LY [km]: ', zly 113 WRITE(numout,*) ' resulting global domain size : jpiglo = ', kpi 114 WRITE(numout,*) ' jpjglo = ', kpj 115 WRITE(numout,*) ' jpkglo = ', kpk 116 WRITE(numout,*) ' Coriolis:', ln_corio 117 WRITE(numout,*) ' ' 118 WRITE(numout,*) ' Lateral boundary condition of the global domain' 119 WRITE(numout,*) ' ICE_ADV2D : bi-periodic basin jperio = ', kperio 121 120 ENDIF 122 #endif123 !124 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1125 WRITE(ldtxt(ii),*) ' Lateral boundary condition of the global domain' ; ii = ii + 1126 WRITE(ldtxt(ii),*) ' ICE_ADV2D : bi-periodic basin jperio = ', kperio ; ii = ii + 1127 121 ! 128 122 END SUBROUTINE usr_def_nam
Note: See TracChangeset
for help on using the changeset viewer.