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.
nemotam_hlt.F90 in branches/TAM_V3_0/NEMOTAM/OPATAM_SRC – NEMO

source: branches/TAM_V3_0/NEMOTAM/OPATAM_SRC/nemotam_hlt.F90 @ 2587

Last change on this file since 2587 was 2587, checked in by vidard, 13 years ago

refer to ticket #798

File size: 3.8 KB
Line 
1MODULE nemotam_hlt
2#if defined key_tam
3   !!==========================================================================
4   !!                       ***  MODULE nemotam ***
5   !! NEMOTAM system : Tangent and Adjoint for NEMO.
6   !!==========================================================================
7
8   !!----------------------------------------------------------------------
9   !!   nemotam_main   : Main driver routine for NEMOTAM
10   !!   nemotam_init   : Initialization of NEMOTAM
11   !!   nemotam_final  : Finish up NEMOTAM
12   !!----------------------------------------------------------------------
13   !! History :
14   !!   1.0  !  07-06  (K. Mogensen) Initial version
15   !!        !  09-06  (F. Vigilant)  Modified to split NEMOVAR / NEMOTAM
16   !!                                     module tamctl     i/o varctl
17   !!---------------------------------------------------------------------
18   !!----------------------------------------------------------------------
19   !! * Modules used
20   USE hlttst          ! testing routine of linear-tangent hypothesis
21   USE par_tlm
22   USE in_out_manager  ! I/O manager
23
24   IMPLICIT NONE
25   PRIVATE
26
27   !! * Module variables
28
29   !! * Routine accessibility
30
31   PUBLIC &
32      & nemotam_hlt_main 
33
34CONTAINS
35
36   SUBROUTINE nemotam_hlt_main 
37      !!----------------------------------------------------------------------
38      !!                    ***  ROUTINE nemotam_main  ***
39      !!         
40      !! ** Purpose : Main driver routine for NEMOTAM
41      !!
42      !! ** Method  : Nothing yet
43      !!
44      !! ** Action  : Nothing yet
45      !!
46      !! History :
47      !!        !  07-06  (K. Mogensen) Original code
48      !!----------------------------------------------------------------------
49
50      !! * Local declarations
51
52      ! Read namelist for model 
53      CALL hlt_root
54
55      ! Main tst
56      CALL hlt_tst
57
58   END SUBROUTINE nemotam_hlt_main
59
60   SUBROUTINE hlt_root
61      !!----------------------------------------------------------------------
62      !!                    ***  ROUTINE nemovar_root ***
63      !!         
64      !! ** Purpose : Choose which init must be done according to test
65      !!
66      !! ** Method  : Read namelist
67      !!
68      !! ** Action  :
69      !!
70      !! History :
71      !!        !  10-07  (F. Vigilant) Original code
72      !!----------------------------------------------------------------------
73      !! * Modules used
74      USE par_tlm
75!      USE in_out_manager, ONLY: & ! I/O manager
76!      & numnam, numout
77      !! * Arguments
78
79      !! * Local declarations
80      NAMELIST/namhlt/ nstg, ln_hltt, ln_hlts, ln_hltuv, ln_hltssh, c_hltinc, &
81                     & ln_incdx, ln_hnorm, rhstdt, rhstds, rhstduv, rhstdssh 
82
83      CHARACTER (len=20) ::  namelistname = 'namelist.hlt'
84      CHARACTER (len=28) ::  file_out
85      !! * Arguments
86
87      nstg = 0
88      ln_hltt   = .FALSE.
89      ln_hlts   = .FALSE.
90      ln_hltuv  = .FALSE.
91      ln_hltssh = .FALSE.
92      c_hltinc  = ''
93      ln_incdx  = .FALSE.
94      ln_hnorm  = .FALSE.
95      rhstdt    = 1.0_wp
96      rhstds    = 0.1_wp
97      rhstduv   = 0.01_wp
98      rhstdssh  = 0.01_wp
99
100      file_out = 'nemohlt.output'
101     
102      ! open listing and namelist units
103      CALL ctlopn( numout, file_out, 'UNKNOWN', 'FORMATTED',   &
104         &         'SEQUENTIAL', 1, 6, .FALSE., 1 )
105
106      WRITE(numout,*)
107      WRITE(numout,*) '                 L O D Y C - I P S L'
108      WRITE(numout,*) '                     O P A model'
109      WRITE(numout,*) '            Ocean General Circulation Model'
110      WRITE(numout,*) '               version OPA 9.0  (2005) '
111      WRITE(numout,*)
112      WRITE(numout,*)
113      call flush(numout)
114
115      CALL ctlopn( numnam,namelistname, 'OLD', 'FORMATTED', 'SEQUENTIAL',   &
116         &           1, numout, .FALSE., 1 )
117
118      REWIND( numnam )
119      READ  ( numnam, namhlt )
120
121   END SUBROUTINE hlt_root
122#endif
123END MODULE nemotam_hlt
Note: See TracBrowser for help on using the repository browser.