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.
tamctl.F90 in NEMO/branches/NERC/dev_release-3.4_NEMOTAM_consolidated/NEMOGCM/NEMO/OPATAM_SRC – NEMO

source: NEMO/branches/NERC/dev_release-3.4_NEMOTAM_consolidated/NEMOGCM/NEMO/OPATAM_SRC/tamctl.F90 @ 15454

Last change on this file since 15454 was 15454, checked in by smueller, 8 months ago

Addition of tangent-linear and adjoint model time-stepping loops and of a supporting structure for the optional inclusion of external NEMOTAM-related source code

File size: 2.8 KB
Line 
1MODULE tamctl
2   !!======================================================================
3   !!                       ***  MODULE tamctl ***
4   !! NEMOTAMR : variables controlling the run.
5   !!======================================================================
6
7   !!----------------------------------------------------------------------
8   !! History :
9   !!        !  ...    ( ... )        Original code: varctl.F90
10   !!        !  09-06  (F. Vigilant)  Created to split NEMOVAR / NEMOTAM
11   !!---------------------------------------------------------------------
12
13   !!----------------------------------------------------------------------
14   !!----------------------------------------------------------------------
15   !! * Modules used
16   USE par_kind
17
18   !! * Routine accessibility
19
20   IMPLICIT NONE
21
22   PUBLIC
23
24   !! * Module variables
25   INTEGER   :: nn_tam     ! TAM mode
26                           !          1 : Tangent-linear model time stepping
27                           !          2 : Adjoint model time stepping
28                           !          3 : External code
29                           !   <1 or >3 : NEMOTAM tests
30#if defined key_tam_ext
31#include "tam_ext_var.h90"
32#endif
33
34   !! namtst:  assimilation test parameters
35
36   INTEGER   :: &
37      & ln_swi_opatam      ! Switch for NEMOTAM adjoint tests
38                           ! = 0 => Routine by routine adjoint test
39                           ! = 1 => Step test
40                           ! = 2 => Run TL model
41
42   LOGICAL   :: &
43      & ln_tst_tlh        ! Switch for tangent linear hypothesis testing
44
45   LOGICAL   :: &         ! TLH and tan testing settings
46      & ln_tlhts,       & ! Switch for perturbing T and S
47      & ln_tlhuv,       & ! Switch for perturbing U and V
48      & ln_incdx,       & ! Switch for using an increment file for the perturbation
49                          ! (rather than the difference between 2 restarts
50      & ln_hnorm,       & ! Switch for normalizing the perturbation
51      & ln_tlhssh         ! Switch for perturbing SSH
52
53   INTEGER   :: &
54      & nn_stage          ! Current stage of the test (deprecated ?)
55
56   REAL(wp)  :: &
57      & rn_hstdt,         & ! Upper bound of norm. for T
58      & rn_hstds,         & ! Upper bound of norm. for S
59      & rn_hstduv,        & ! Upper bound of norm. for U and V
60      & rn_hstdssh          ! Upper bound of norm. for SSH
61
62   CHARACTER(len=32) :: &
63      & cn_tlhinc_in,     & ! Name the perturbation file
64      & cn_tlhrst_in,     & ! Suffix of the perturbed restart file (input)
65      & cn_tlhrst_out,    & ! Suffix of the perturbed restart file (output)
66      & cn_tlhtrj_out       ! Suffix of the perturbed trajectory file (output)
67
68   !! Units for tangent test
69
70   INTEGER :: &
71      & numtan, &       ! Output for tangent diagnostics
72      & numtan_sc    !Output for tangent diagnostics (scalar sampling)
73
74END MODULE tamctl
Note: See TracBrowser for help on using the repository browser.