Changeset 6140 for trunk/NEMOGCM/NEMO/OPA_SRC/C1D/domc1d.F90
- Timestamp:
- 2015-12-21T12:35:23+01:00 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMOGCM/NEMO/OPA_SRC/C1D/domc1d.F90
r5215 r6140 12 12 !! dom_c1d : Determine jpizoom/jpjzoom from a given lat/lon 13 13 !!---------------------------------------------------------------------- 14 USE phycst ! Physical constants (and par_oce) 15 USE iom ! I/O library (iom_get) 16 USE in_out_manager ! I/O manager (ctmp1) 17 USE dom_oce , ONLY : nimpp, njmpp ! Shared/distributed memory setting (mpp_init routine) 14 USE phycst ! Physical constants (and par_oce) 15 USE dom_oce , ONLY : nimpp, njmpp ! Shared/distributed memory setting 16 ! 17 USE iom ! I/O library (iom_get) 18 USE in_out_manager ! I/O manager (ctmp1) 18 19 USE wrk_nemo ! Memory allocation 19 20 USE timing ! Timing … … 22 23 PRIVATE 23 24 24 PUBLIC dom_c1d ! Routinecalled in domcfg.F9025 26 !!---------------------------------------------------------------------- 27 !! NEMO/OPA 3. 3 , NEMO Consortium (2010)25 PUBLIC dom_c1d ! called in domcfg.F90 26 27 !!---------------------------------------------------------------------- 28 !! NEMO/OPA 3.7 , NEMO Consortium (2015) 28 29 !! $Id$ 29 30 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) … … 43 44 !! ** Action : Recalculate jpizoom, jpjzoom (indices of C1D zoom) 44 45 !!---------------------------------------------------------------------- 45 NAMELIST/namdom/ nn_bathy, rn_bathy , rn_e3zps_min, rn_e3zps_rat, nn_msh, rn_hmin, & 46 & nn_acc , rn_atfp , rn_rdt , rn_rdtmin , & 47 & rn_rdtmax, rn_rdth , nn_closea , ln_crs, & 48 & jphgr_msh, & 49 & ppglam0, ppgphi0, ppe1_deg, ppe2_deg, ppe1_m, ppe2_m, & 50 & ppsur, ppa0, ppa1, ppkth, ppacr, ppdzmin, pphmax, ldbletanh, & 51 & ppa2, ppkth2, ppacr2 52 53 INTEGER :: ji, jj ! Dummy loop indices 54 INTEGER :: inum ! Coordinate file handle (case 0) 55 INTEGER :: ijeq ! Index of equator T point (case 4) 56 INTEGER :: ios ! Local integer output status for namelist read 57 58 INTEGER , DIMENSION(2) :: iloc ! Minloc returned indices 59 60 REAL(wp), INTENT(in) :: plat ! Column latitude 61 REAL(wp), INTENT(in) :: plon ! Column longitude 62 46 REAL(wp), INTENT(in) :: plat, plon ! Column latitude & longitude 47 ! 48 INTEGER :: ji, jj ! Dummy loop indices 49 INTEGER :: inum ! Coordinate file handle (case 0) 50 INTEGER :: ijeq ! Index of equator T point (case 4) 51 INTEGER :: ios ! Local integer output status for namelist read 52 INTEGER , DIMENSION(2) :: iloc ! Minloc returned indices 63 53 REAL(wp) :: zlon ! Wraparound longitude 64 54 REAL(wp) :: zti, ztj, zarg ! Local scalars 65 55 REAL(wp) :: glam0, gphi0 ! Variables corresponding to parameters ppglam0 ppgphi0 set in par_oce 66 56 REAL(wp) :: zlam1, zcos_alpha, ze1, ze1deg ! Case 5 local scalars 67 REAL(wp) :: zphi1, zsin_alpha, zim05, zjm05 ! " 68 57 REAL(wp) :: zphi1, zsin_alpha, zim05, zjm05 ! 69 58 REAL(wp) , POINTER, DIMENSION(:,:) :: gphidta, glamdta, zdist ! Global lat/lon 59 !! 60 NAMELIST/namdom/ nn_bathy, rn_bathy , rn_e3zps_min, rn_e3zps_rat, nn_msh, rn_hmin, & 61 & rn_atfp , rn_rdt ,nn_closea , ln_crs, jphgr_msh, & 62 & ppglam0, ppgphi0, ppe1_deg, ppe2_deg, ppe1_m, ppe2_m, & 63 & ppsur, ppa0, ppa1, ppkth, ppacr, ppdzmin, pphmax, ldbletanh, & 64 & ppa2, ppkth2, ppacr2 70 65 !!---------------------------------------------------------------------- 71 66 … … 74 69 REWIND( numnam_ref ) ! Namelist namdom in reference namelist : space & time domain (bathymetry, mesh, timestep) 75 70 READ ( numnam_ref, namdom, IOSTAT = ios, ERR = 901 ) 76 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in reference namelist', lwp ) 77 71 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in reference namelist', lwp ) 78 72 ! 79 73 REWIND( numnam_cfg ) ! Namelist namdom in configuration namelist : space & time domain (bathymetry, mesh, timestep) 80 74 READ ( numnam_cfg, namdom, IOSTAT = ios, ERR = 902 ) 81 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in configuration namelist', lwp ) 82 83 CALL wrk_alloc( jpidta, jpjdta, gphidta, glamdta, zdist ) 84 75 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in configuration namelist', lwp ) 76 77 CALL wrk_alloc( jpidta,jpjdta, gphidta, glamdta, zdist ) 85 78 86 79 ! ============================= ! … … 171 164 END SELECT 172 165 173 174 166 ! ============================== ! 175 167 ! Code from dom_ngb: ! … … 192 184 jpjzoom = iloc(2) + njmpp - 2 ! corner index of the zoom domain. 193 185 194 CALL wrk_dealloc( jpidta, jpjdta,gphidta, glamdta, zdist )186 CALL wrk_dealloc( jpidta,jpjdta, gphidta, glamdta, zdist ) 195 187 196 188 IF (lwp) THEN … … 202 194 WRITE(numout,*) 203 195 ENDIF 204 196 ! 205 197 IF( nn_timing == 1 ) CALL timing_stop('dom_c1d') 206 198 ! 207 199 END SUBROUTINE dom_c1d 208 200
Note: See TracChangeset
for help on using the changeset viewer.