ROMS
Loading...
Searching...
No Matches
roms_kernel.F
Go to the documentation of this file.
1#include "cppdefs.h"
2!!
3!!git $Id$
4!!================================================= Hernan G. Arango ===
5!! Copyright (c) 2002-2025 The ROMS Group Andrew M. Moore !
6!! Licensed under a MIT/X style license !
7!! See License_ROMS.md !
8!!======================================================================
9!! !
10!! Regional Ocean Model System (ROMS) Drivers: !
11!! !
12!! ad_roms.h Adjoint model driver !
13!! !
14!! adsen_roms.h Adjoint sensitivity analysis driver !
15!! !
16!! afte_roms.h Adjoint finite time eigenmodes driver !
17!! !
18!! array_modes.h Dual 4D-Var array modes driver !
19!! !
20!! correlation.h Error covariance correlation driver !
21!! !
22!! fte_roms.h Finite time eigenmodes driver !
23!! !
24!! fsv_roms.h Forcing singular vectors driver !
25!! !
26!! hessian_fsv_roms.h Hessian forcing singular vectors !
27!! driver !
28!! !
29!! hessian_op_roms.h Hessian singular vectors driver !
30!! !
31!! hessian_so_roms.h Hessian stochastic optimals driver !
32!! !
33!! i4dvar_roms.h Strong constraint, incremental 4D-Var !
34!! data assimilation driver (I4D-Var) !
35!! !
36!! jedi_roms.h Joint Effort for DA Integration !
37!! configuration !
38!! !
39!! nl_roms.h Nonlinear model driver (default) !
40!! !
41!! op_roms.h Optimal perturbations driver !
42!! !
43!! optobs_roms.h Optimal observations driver !
44!! !
45!! obs_sen_i4dvar_analysis.h Observations sensitivity driver to the !
46!! I4D-Var data assimilation system !
47!! !
48!! obs_sen_rbl4dvar_analysis.h Observations sensitivity driver to the !
49!! RBL4D-Var data assimilation system !
50!! !
51!! obs_sen_rbl4dvar_forecast.h Observations analysis and forecast !
52!! sensitivity driver for RBL4D-Var !
53!! !
54!! obs_sen_r4dvar_analysis.h Observations sensitivity driver to the !
55!! R4D-Var data assimilation system !
56!! !
57!! pert_roms.h Tangent linear and adjoint models !
58!! sanity test driver !
59!! !
60!! picard_roms.h Picard test for representers tangent !
61!! linear model driver !
62!! !
63!! rp_roms.h Representer tangent linear model !
64!! driver !
65!! !
66!! rbl4dvar_roms.h Strong/Weak constraint 4D-Var data !
67!! assimilation driver: Restricted, !
68!! B-preconditioned Lanczos method !
69!! (RBL4D-Var) !
70!! !
71!! r4dvar_roms.h Strong/Weak constraint 4D-Var data !
72!! assimilation, indirect representer !
73!! method (R4D-Var) !
74!! !
75!! so_roms.h Stochastic optimals driver !
76!! !
77!! so_semi_roms.h Stochastic optimals, semi-norm driver !
78!! !
79!! sp4dvar_roms.h Saddle Point 4D-Var data assimilation !
80!! driver (SP4D-Var) !
81!! !
82!! split_i4dvar_roms.h Multiple executables Strong constraint,!
83!! incremental 4D-Var data assimilation !
84!! driver (I4D-Var) !
85!! !
86!! split_rbl4dvar_roms.h Multiple executables Strong/Weak !
87!! constraint 4D-Var data assimilation !
88!! driver: Restricted, B-preconditioned !
89!! Lanczos method (RBL4D-Var) !
90!! !
91!! split_r4dvar_roms.h Multiple executables Strong/Weak !
92!! constraint 4D-Var data assimilation, !
93!! indirect representer method (R4D-Var)!
94!! !
95!! split_sp4dvar_roms.h Multiple executables Saddle Point !
96!! 4D-Var data assimilation driver !
97!! (SP4D-Var) !
98!! !
99!! symmetry.h Representer matrix, symmetry driver !
100!! !
101!! tlcheck_roms.h Tangent linear model linearization !
102!! test driver !
103!! !
104!! tl_roms.h Tangent linear model driver !
105!! !
106!! tl_rbl4dvar_roms. Tangent linear driver to the RBL4D-Var !
107!! data assimilation system !
108!! !
109!! tl_r4dvar_roms.h Tangent linear driver to the R4D-Var !
110!! data assimilation system !
111!! !
112!!======================================================================
113!!
114#if defined AD_SENSITIVITY
115# include "adsen_roms.h"
116
117#elif defined AFT_EIGENMODES
118# include "afte_roms.h"
119#elif defined FT_EIGENMODES
120# include "fte_roms.h"
121#elif defined FORCING_SV
122# include "fsv_roms.h"
123#elif defined OPT_PERTURBATION
124# include "op_roms.h"
125#elif defined HESSIAN_SV
126# include "hessian_op_roms.h"
127#elif defined HESSIAN_FSV
128# include "hessian_fsv_roms.h"
129#elif defined OPT_OBSERVATIONS
130# include "optobs_roms.h"
131#elif defined STOCHASTIC_OPT
132# ifdef HESSIAN_SO
133# include "hessian_so_roms.h"
134# else
135# include "so_roms.h"
136# endif
137#elif defined SO_SEMI
138# include "so_semi_roms.h"
139
140#elif defined CORRELATION
141# include "correlation.h"
142#elif defined INNER_PRODUCT || defined SANITY_CHECK
143# include "pert_roms.h"
144#elif defined PICARD_TEST
145# include "picard_roms.h"
146#elif defined R_SYMMETRY
147# include "symmetry.h"
148#elif defined TLM_CHECK
149# include "tlcheck_roms.h"
150
151#elif defined ARRAY_MODES || defined CLIPPING
152# include "array_modes.h"
153#elif defined I4DVAR && !defined SPLIT_I4DVAR
154# include "i4dvar_roms.h"
155#elif defined I4DVAR_ANA_SENSITIVITY
156# include "obs_sen_i4dvar_analysis.h"
157#elif defined JEDI
158# include "jedi_roms.h"
159#elif defined RBL4DVAR && !defined SPLIT_RBL4DVAR
160# include "rbl4dvar_roms.h"
161#elif defined RBL4DVAR_ANA_SENSITIVITY
162# include "obs_sen_rbl4dvar_analysis.h"
163#elif defined RBL4DVAR_FCT_SENSITIVITY
164# include "obs_sen_rbl4dvar_forecast.h"
165#elif defined R4DVAR && !defined SPLIT_R4DVAR
166# include "r4dvar_roms.h"
167#elif defined R4DVAR_ANA_SENSITIVITY
168# include "obs_sen_r4dvar_analysis.h"
169#elif defined SPLIT_I4DVAR
170# include "split_i4dvar_roms.h"
171#elif defined SPLIT_RBL4DVAR
172# include "split_rbl4dvar_roms.h"
173#elif defined SPLIT_R4DVAR
174# include "split_r4dvar_roms.h"
175#elif defined SPLIT_SP4DVAR
176# include "split_sp4dvar_roms.h"
177#elif defined SP4DVAR && !defined SPLIT_SP4DVAR
178# include "sp4dvar_roms.h"
179#elif defined TL_RBL4DVAR
180# include "tl_rbl4dvar_roms.h"
181#elif defined TL_R4DVAR
182# include "tl_r4dvar_roms.h"
183
184#else
185
186# if defined TLM_DRIVER
187# include "tl_roms.h"
188# elif defined RPM_DRIVER
189# include "rp_roms.h"
190# elif defined ADM_DRIVER
191# include "ad_roms.h"
192# else
193# include "nl_roms.h"
194# endif
195
196#endif