New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 6060 for branches/2015/dev_merge_2015/NEMOGCM/NEMO/OPA_SRC/C1D/domc1d.F90 – NEMO

Ignore:
Timestamp:
2015-12-16T10:25:22+01:00 (8 years ago)
Author:
timgraham
Message:

Merged dev_r5836_noc2_VVL_BY_DEFAULT into branch

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2015/dev_merge_2015/NEMOGCM/NEMO/OPA_SRC/C1D/domc1d.F90

    r5215 r6060  
    1212   !!   dom_c1d     : Determine jpizoom/jpjzoom from a given lat/lon 
    1313   !!---------------------------------------------------------------------- 
    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) 
    1819   USE wrk_nemo                      ! Memory allocation 
    1920   USE timing                        ! Timing 
     
    2223   PRIVATE 
    2324 
    24    PUBLIC   dom_c1d                  ! Routine called in domcfg.F90 
    25  
    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) 
    2829   !! $Id$  
    2930   !! Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt) 
     
    4344      !! ** Action  : Recalculate jpizoom, jpjzoom (indices of C1D zoom) 
    4445      !!---------------------------------------------------------------------- 
     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 
     53      REAL(wp) ::  zlon                            ! Wraparound longitude 
     54      REAL(wp) ::  zti, ztj, zarg                  ! Local scalars 
     55      REAL(wp) ::  glam0, gphi0                    ! Variables corresponding to parameters ppglam0 ppgphi0 set in par_oce 
     56      REAL(wp) ::  zlam1, zcos_alpha, ze1, ze1deg  ! Case 5 local scalars 
     57      REAL(wp) ::  zphi1, zsin_alpha, zim05, zjm05 !           
     58      REAL(wp) , POINTER, DIMENSION(:,:) ::  gphidta, glamdta, zdist ! Global lat/lon 
     59      !! 
    4560      NAMELIST/namdom/ nn_bathy, rn_bathy , rn_e3zps_min, rn_e3zps_rat, nn_msh, rn_hmin,   & 
    4661         &             nn_acc   , rn_atfp     , rn_rdt      , rn_rdtmin ,                  & 
     
    5065         &             ppsur, ppa0, ppa1, ppkth, ppacr, ppdzmin, pphmax, ldbletanh, & 
    5166         &             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  
    63       REAL(wp) ::  zlon                            ! Wraparound longitude 
    64       REAL(wp) ::  zti, ztj, zarg                  ! Local scalars 
    65       REAL(wp) ::  glam0, gphi0                    ! Variables corresponding to parameters ppglam0 ppgphi0 set in par_oce 
    66       REAL(wp) ::  zlam1, zcos_alpha, ze1, ze1deg  ! Case 5 local scalars 
    67       REAL(wp) ::  zphi1, zsin_alpha, zim05, zjm05 !          " 
    68  
    69       REAL(wp) , POINTER, DIMENSION(:,:) ::  gphidta, glamdta, zdist ! Global lat/lon 
    7067      !!---------------------------------------------------------------------- 
    7168 
     
    7471      REWIND( numnam_ref )              ! Namelist namdom in reference namelist : space & time domain (bathymetry, mesh, timestep) 
    7572      READ  ( numnam_ref, namdom, IOSTAT = ios, ERR = 901 ) 
    76 901   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in reference namelist', lwp ) 
    77    
     73901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namdom in reference namelist', lwp ) 
    7874      ! 
    7975      REWIND( numnam_cfg )              ! Namelist namdom in configuration namelist : space & time domain (bathymetry, mesh, timestep) 
    8076      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  
     77902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namdom in configuration namelist', lwp ) 
     78 
     79      CALL wrk_alloc( jpidta,jpjdta,   gphidta, glamdta, zdist ) 
    8580 
    8681      ! ============================= ! 
     
    171166      END SELECT 
    172167 
    173  
    174168      ! ============================== ! 
    175169      !  Code from dom_ngb:            ! 
     
    192186      jpjzoom = iloc(2) + njmpp - 2  ! corner index of the zoom domain. 
    193187 
    194       CALL wrk_dealloc( jpidta, jpjdta, gphidta, glamdta, zdist ) 
     188      CALL wrk_dealloc( jpidta,jpjdta,  gphidta, glamdta, zdist ) 
    195189 
    196190      IF (lwp) THEN 
     
    202196         WRITE(numout,*) 
    203197      ENDIF 
    204  
     198      ! 
    205199      IF( nn_timing == 1 )   CALL timing_stop('dom_c1d') 
    206  
     200      ! 
    207201   END SUBROUTINE dom_c1d 
    208202 
Note: See TracChangeset for help on using the changeset viewer.