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.
c1d.F90 in NEMO/branches/2019/dev_r11613_ENHANCE-04_namelists_as_internalfiles/src/OCE/C1D – NEMO

source: NEMO/branches/2019/dev_r11613_ENHANCE-04_namelists_as_internalfiles/src/OCE/C1D/c1d.F90 @ 11671

Last change on this file since 11671 was 11671, checked in by acc, 5 years ago

Branch 2019/dev_r11613_ENHANCE-04_namelists_as_internalfiles. Final, non-substantive changes to complete this branch. These changes remove all REWIND statements on the old namelist fortran units (now character variables for internal files). These changes have been left until last since they are easily repeated via a script and it may be preferable to use the previous revision for merge purposes and reapply these last changes separately. This branch has been fully SETTE tested.

  • Property svn:keywords set to Id
File size: 3.7 KB
Line 
1MODULE c1d
2   !!======================================================================
3   !!                     ***  MODULE  c1d  ***
4   !! Ocean domain  :  1D configuration
5   !!=====================================================================
6   !! History :  2.0  !  2004-09 (C. Ethe)     Original code
7   !!            3.0  !  2008-04 (G. Madec)    adaptation to SBC
8   !!            3.5  !  2013-10 (D. Calvert)  add namelist
9   !!----------------------------------------------------------------------
10#if defined key_c1d
11   !!----------------------------------------------------------------------
12   !!   'key_c1d'                                   1D column configuration
13   !!----------------------------------------------------------------------
14   !!   c1d_init      : read in the C1D namelist
15   !!----------------------------------------------------------------------
16   USE par_kind       ! kind parameters
17   !
18   USE in_out_manager ! I/O manager
19   USE lib_mpp        ! MPP library
20
21   IMPLICIT NONE
22   PRIVATE
23
24   PUBLIC   c1d_init   ! called by nemogcm.F90
25
26   LOGICAL , PUBLIC, PARAMETER ::  lk_c1d = .TRUE.   ! 1D config. flag
27
28   REAL(wp), PUBLIC ::  rn_lat1d     !: Column latitude
29   REAL(wp), PUBLIC ::  rn_lon1d     !: Column longitude
30   LOGICAL , PUBLIC ::  ln_c1d_locpt !: Localization (or not) of 1D column in a grid
31
32   !!----------------------------------------------------------------------
33   !! NEMO/OCE 4.0 , NEMO Consortium (2018)
34   !! $Id$
35   !! Software governed by the CeCILL license (see ./LICENSE)
36   !!======================================================================
37CONTAINS
38
39   SUBROUTINE c1d_init
40      !!----------------------------------------------------------------------
41      !!                  ***  ROUTINE c1d_init  ***
42      !!
43      !! ** Purpose :   Initialization of C1D options
44      !!
45      !! ** Method  :   Read namelist namc1d
46      !!----------------------------------------------------------------------
47      INTEGER ::   ios   ! Local integer
48      !!
49      NAMELIST/namc1d/ rn_lat1d, rn_lon1d , ln_c1d_locpt
50      !!----------------------------------------------------------------------
51      !
52      READ  ( numnam_ref, namc1d, IOSTAT = ios, ERR = 901)
53901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namc1d in reference namelist' )
54      !
55      READ  ( numnam_cfg, namc1d, IOSTAT = ios, ERR = 902 )
56902   IF( ios >  0 )   CALL ctl_nam ( ios , 'namc1d in configuration namelist' )
57      IF(lwm) WRITE ( numond, namc1d )
58      !
59      IF(lwp) THEN                    ! Control print
60         WRITE(numout,*)
61         WRITE(numout,*) 'c1d_init : Initialize 1D model configuration options'
62         WRITE(numout,*) '~~~~~~~~'
63         WRITE(numout,*) '   Namelist namc1d : set options for the C1D model'
64         WRITE(numout,*) '      column latitude                 rn_lat1d     = ', rn_lat1d
65         WRITE(numout,*) '      column longitude                rn_lon1d     = ', rn_lon1d
66         WRITE(numout,*) '      column localization in a grid   ln_c1d_locpt = ', ln_c1d_locpt
67      ENDIF
68      !
69   END SUBROUTINE c1d_init
70
71#else
72   !!----------------------------------------------------------------------
73   !!   Dummy module :                           No use of 1D configuration
74   !!----------------------------------------------------------------------
75   USE par_kind         ! kind parameters
76   LOGICAL, PUBLIC, PARAMETER ::   lk_c1d = .FALSE.   !: 1D config. flag de-activated
77   REAL(wp)                   ::   rn_lat1d, rn_lon1d
78   LOGICAL , PUBLIC           ::   ln_c1d_locpt = .FALSE. 
79CONTAINS
80   SUBROUTINE c1d_init               ! Dummy routine
81   END SUBROUTINE c1d_init
82#endif
83
84   !!======================================================================
85END MODULE c1d
Note: See TracBrowser for help on using the repository browser.