3 |
Notes on tags used in MITgcmUV |
Notes on tags used in MITgcmUV |
4 |
============================== |
============================== |
5 |
|
|
6 |
|
o more CF compliance: convert all MNC 'iter' variables to 'T' so that it |
7 |
|
becomes the coordinate variable for the 'T' dimension |
8 |
|
o add CF-style coordinate variables to MNC |
9 |
|
- just a first cut: numbers are meaningless on the cubesphere and |
10 |
|
missing along the T axis but otherwise it works! |
11 |
|
o add surface flux diagnostics: TAUX, TAUY, TFLUX, TRELAX, TICE, SFLUX, SRELAX |
12 |
|
o pkg/thSIce: read initial state from 6 files ; allow monitor to use MNC. |
13 |
|
o add diagnostics of advective & diffusive flux for T & S (pTracers coming soon) |
14 |
|
this is based directly on what the model compute, so that the content of |
15 |
|
each diagnostics might be affected by switching options (e.g., implicitDiffusion) |
16 |
|
o small changes for diagnostics (gad_biharm_?.F, arguments of S/R impldiff.F) |
17 |
|
o clean up build options files for SunOS, in particular |
18 |
|
- remove -traditional from xmakedepend |
19 |
|
- change -xarch=v9 to -xarch=native for f77 |
20 |
|
- restore use of make (not gmake) |
21 |
|
- add CC=gcc if using g77 |
22 |
|
o changes per discussion of AM, JMC, & EH3 today: |
23 |
|
- move redundant "grid" variables out of "state" -- in preparation of |
24 |
|
creating proper CF-style coordinate variables and in recognition |
25 |
|
that any/all grid variables can be easily copied (eg. w/NCO) from |
26 |
|
the grid files into any of the other NetCDF files |
27 |
|
- *always* output grid variables with MDSIO (this will eventually be |
28 |
|
changed) |
29 |
|
- output MNC grid file if useMNC is true |
30 |
|
o every instance of _END_MASTER() has been found and replaced with |
31 |
|
_END_MASTER( myThid ) in order to satisfy certain picky Sun |
32 |
|
preprocessors |
33 |
|
o re-arrange diagnostics pkg initialisation: |
34 |
|
- allow each package to extend the available diagnostics list |
35 |
|
- add some checking and fix small problems (multi-threaded, ...) |
36 |
|
- new S/R diagnostics_fill (replace fill_diagnostics): |
37 |
|
look through the short list of active diag. (instead of the long list) |
38 |
|
create function DIAGNOSTICS_IS_ON to tell if a diagnostics is active |
39 |
|
|
40 |
|
checkpoint57a_post |
41 |
|
o this set of changes restores TAMC compatibility |
42 |
|
tested for global_ocean.90x40x15 adjoint on trough |
43 |
|
(what a pain) |
44 |
|
|
45 |
|
checkpoint57a_pre |
46 |
|
o some modifs in tools/build_options for sunos |
47 |
|
o call ctrl_pack for ctrl at end for optimcycle=0 |
48 |
|
|
49 |
|
checkpoint57 |
50 |
|
o add horizontal bi-harmonic viscosity for vertical velocity |
51 |
|
- new parameter viscA4W (defaults to viscA4) |
52 |
|
- affects only non-hydrostatic code |
53 |
|
- to be done: no-slip lateral boundary conditions |
54 |
|
o switch back to "sflux = sflux - runoff" in exf_getforcing.F |
55 |
|
o implement Implicit Vertical advection for pTracers |
56 |
|
o depth convergence accelerator: replace deltaTtracer by dTtracerLev(k) |
57 |
|
(implemented also for implicit vertical diffusion & advection) |
58 |
|
o OBCS: extend application of tracer open boundary conditions |
59 |
|
to a strip beyond the boundary of width Olx/Oly |
60 |
|
o add call monitor to TAF set of required calls (flow directives) |
61 |
|
and include in natl_box_adjoint |
62 |
|
o untangle a few ifdefs related to cost, ctrl, autodiff |
63 |
|
untangel a few ALLOW_ECCO_OPTIMIZATION |
64 |
|
o Apply Cooper & Haines representative estimates also at sub-surface (k=Nr) |
65 |
|
(theta2, salt2 in ecco_cost_weights) |
66 |
|
|
67 |
|
checkpoint56c_post |
68 |
|
o OBCS as control variables |
69 |
|
- update ctrl_ad_diff.list, obcs_ad_diff.list |
70 |
|
- remove balance of obcs controls from default |
71 |
|
- fix index bug nobcs in ctrl_init |
72 |
|
- fix dummy fields filen in ctrl_pack |
73 |
|
- add dummy weights for obcs |
74 |
|
o lsopt: comment out fort.94 output |
75 |
|
o optim: |
76 |
|
- remove unnecessary header files |
77 |
|
- adjusted namelists |
78 |
|
- add xerbla.F to Makefile |
79 |
|
o exf: |
80 |
|
- multiple modifications of exf_check_range |
81 |
|
- unit change in exf_init_runoff from [m/year] to [m/s] |
82 |
|
o mdsio: |
83 |
|
- i/o-vector change debugLevel from debLevA to debLevB |
84 |
|
|
85 |
|
checkpoint56b_post |
86 |
|
o collect all ptracers output in an new routine (PTRACERS_OUTPUT) that |
87 |
|
is called from DO_THE_MODEL_IO |
88 |
|
- rename PTRACERS_STATV_WRITE to PTRACERS_WRITE_TIMEAVE |
89 |
|
- introduce new parameter PTRACERS_dumpFreq (defaults to dumpFreq) |
90 |
|
- clean up PTRACERS_WRITE_TIMEAVE a little |
91 |
|
o add another verification experiment that tests both the cfc-pkg and |
92 |
|
the gchem-pkg with GCHEM_SEPARATE_FORCING undefined, that is with |
93 |
|
reactive tendencies treated inline with regular timestepping |
94 |
|
o testreport previously did a lousy job of comparing small numbers, so |
95 |
|
we (Ed and Martin) changed the way the cut-off of 1.e-12 is |
96 |
|
implemented in the little c-progam tmp_cmpnum.c which is embedded in |
97 |
|
testreport. |
98 |
|
o ptracers_monitor: bug fix for MPI |
99 |
|
|
100 |
|
checkpoint56a_post |
101 |
|
o GCHEM: finish reorganizating the package |
102 |
|
- forward_step calls GCHEM_CALC_TENDENDY, which computes gchemTendency |
103 |
|
(introduces another 3D-array for each passive tracer, but only if |
104 |
|
GCHEM_SEPARATE_FORCING is undefined. For GCHEM_SEPARATE_FORCING |
105 |
|
gchemTendency is not needed because the timestep is done separately) |
106 |
|
- gchemTendency is added to gPtr in GCHEM_ADD_TENDENCY |
107 |
|
- GCHEM is now---more or less cleanly---separate from PTRACERS |
108 |
|
- to bo done: handling of surfaceForcingPtr that is needed for KPP not |
109 |
|
so clear to me how that should be done in a general way. |
110 |
|
o CFC: improve formatting of output in CFC_ATMOS |
111 |
|
o PTRACERS: |
112 |
|
- rename GCHEM_MONITOR to PTRACERS_MONITOR and call it from MONITOR, so |
113 |
|
that ALL experiments with ptracers enable can be checked. This makes |
114 |
|
GCHEM_MONITOR obsolete. |
115 |
|
- include a runtime parameter PTRACERS_monitorFreq that defaults to |
116 |
|
monitorFreq |
117 |
|
- set default PTRACERS_write_mdsio to false if PTRACERS_write_mnc is true |
118 |
|
o add PTRACERS (PTR0[1-5]) to testreport output |
119 |
|
o exf_check_range: |
120 |
|
* default changed to .TRUE. |
121 |
|
* will check values for niter0 if debLevA, every timestep if debLevB |
122 |
|
* STOP in exf_check_range if 'out of range' |
123 |
|
* range chosen generous to allow for potential extema |
124 |
|
TBD: a version with stricter range |
125 |
|
permitted range would be runtime parameters |
126 |
|
o GMredi: |
127 |
|
- fix ldd97 slope limit ; extend valid domain of Psi-Bolus ; |
128 |
|
- change S/R GRAD_SIGMA to be valid in the overlap on CS-grid. |
129 |
|
- change the default GMREDI_OPTIONS.h: compile everything except Visbeck |
130 |
|
o GCHEM: |
131 |
|
- move call to GCHEM_FORCING_SEP, so that it is now called before |
132 |
|
the blocking exchanges to avoid computing halos in GCHEM_FORCING_SEP |
133 |
|
- introduced a useGCHEM runtime flag and applied it everywhere. |
134 |
|
- renamed PTRACERS_SEPARATE_FORCING to GCHEM_SEPARATE_FORCING; |
135 |
|
this flag is now only visible within GCHEM-pkg routines. |
136 |
|
- moved gchem_forcing_int temporarily into ptracers_forcing, this will |
137 |
|
be replaced by a 3D array that is computed before thermodynamics; for |
138 |
|
this, the tracer ID iTracer had to be included into the parameter list |
139 |
|
of ptracers_forcing |
140 |
|
- set up forward_step to call gchem_forcing, that will replace |
141 |
|
gchem_forcing_int in ptracers_forcing |
142 |
|
- cleaning up |
143 |
|
o small cleaning of exch2: remove files that are also in eesupp/src |
144 |
|
|
145 |
|
checkpoint56 |
146 |
|
o AIM: read land-Fraction earlier (from ini-fixed) and monitor land at nIter0 |
147 |
|
o mnc: cleanup "full" files--fixes out-of-memory problem |
148 |
|
o ECCO-GODAE |
149 |
|
* model/, pkg/, code/, input/ now complete w.r.t. ECCO-GODAE production setup |
150 |
|
* fully merged and updated from SIO code |
151 |
|
windstress sign change affects |
152 |
|
- exf_inscal_[u/v]stress |
153 |
|
- sign of xx_tau[u/v] adjustments |
154 |
|
- signs in cost_scat |
155 |
|
* ctrl_get_gen: avoid update of tau[u/v] for first few days |
156 |
|
* natl_box_adjoint updated and compressed |
157 |
|
* 2-level checkpoint switch added |
158 |
|
(tested in EXP. 1 of natl_box_adjoint) |
159 |
|
* new switch doInitXX to avoid init. of xx_... in optimcycle=0 |
160 |
|
o SVD |
161 |
|
* first complete, non-hacked version for SVD calculations |
162 |
|
* all interfaces clean w.r.t to handling of xx_..., adxx_..., g_xx_... |
163 |
|
performed via direct access files admtlm_vector.it???? |
164 |
|
(via ctrl_[un]pack) |
165 |
|
* optimcycle is used for ARPACK iteration counter |
166 |
|
(note: adxx_... is iterated, rather than xx_...; latter is constant!) |
167 |
|
* EV problem ok w.r.t. L2-norm in tangent space; need to check other norms |
168 |
|
and add linear transforms where necessary |
169 |
|
* controls are initial/final SST, SSS (can be extended; need to check |
170 |
|
ctrl_set_[un]pack_xyz.F according to ctrl_set_[un]pack_xy.F |
171 |
|
o mdsio: filename info to both stderr, stdout |
172 |
|
o exf: exf_inscal_runoff: separated default conversion [m/year] -> [m/sec] |
173 |
|
from sign change |
174 |
|
|
175 |
|
checkpoint55j_post |
176 |
|
o isolate dissipation tendency (allow to keep it out off AB) in V.I form. |
177 |
|
affects (truncation level) output.txt of global_ocean.cs32x15(&.thsice) |
178 |
|
o add consistent build directories and .cvsignore files to verification |
179 |
|
o added viscA4GridMin and viscA4GridMax for more control on biharmonic viscosity |
180 |
|
o make all subroutines 30 or less characters in length for certain older |
181 |
|
compilers to work (a thorough search only turns up two routines in |
182 |
|
pkg/ptracers) |
183 |
|
o allow (vecinv only) a different horiz. viscosity for Divergence and Vorticity; |
184 |
|
affects (truncation level) output.txt of global_ocean.cs32x15(&.thsice) |
185 |
|
|
186 |
|
checkpoint55i_post |
187 |
|
o change arrays for total vertical diffusivity (2.D if explicit, |
188 |
|
3.D if implicit) ; each ptracer uses its own background value. |
189 |
|
o added mnc/NetCDF output capability to ocn_compon_interf |
190 |
|
- added bits to verification/cpl_aim+ocn so that it can run on |
191 |
|
ITRDA and other clusters without the mpirun "-wd" option |
192 |
|
o fixed wayward endif in mom_fluxform.F that messed up cyclindrical |
193 |
|
configuration |
194 |
|
o give MNC the ability to create additional files rather than |
195 |
|
exceeding a specified file size limit "MNC_MAX_FILESIZE" |
196 |
|
- the default is just less than 2GB which is a practical limit |
197 |
|
on many systems |
198 |
|
o Compute the non-local term using either KPP vertical diffusivity (=default) |
199 |
|
or the total vertical diffusivity (when KPP_ghatUseTotalDiffus=T) |
200 |
|
|
201 |
|
checkpoint55h_post |
202 |
|
o add verification test "vermix" |
203 |
|
o remove all the *_ioinc flags and replace with the single global |
204 |
|
outputTypesInclusive flag |
205 |
|
o allow to set a vertical profile of vertical diffusivity for T & S |
206 |
|
o call PACKAGE_BOOT & PACKAGES_READPARMS just after INI_PARMS |
207 |
|
o useMNC moved from data.mnc to data.pkg |
208 |
|
|
209 |
|
checkpoint55g_post |
210 |
|
o Renaming carbon AD experiments to comply with testreport conventions |
211 |
|
o Updating adjoint of Held-Suarez hs94.1x64x5 |
212 |
|
o Fixing directives for non-ECCO forward_step, after ECCO directives |
213 |
|
have been fixed to avoid recomp. of do_oceanic_phys |
214 |
|
Works well for global_ocean.90x40x15, |
215 |
|
but recomp. issue remains for carbon |
216 |
|
o Updating adjoint output for natl_box_adjoint after |
217 |
|
pkg/ecco has been modified (see taga c55d_post) |
218 |
|
|
219 |
|
checkpoint55f_post |
220 |
|
o rename to timeave_init_fixed |
221 |
|
|
222 |
|
checkpoint55e_post |
223 |
|
o some delicate re-shuffle of store directives to avoid one |
224 |
|
extra call of do_oceanic_physics |
225 |
|
affects ecco_the_main_loop.F, do_oceanic_physics.F |
226 |
|
checkpoint_lev1_directives.h |
227 |
|
o NB: this may break global_ocean adjoint temporarily, |
228 |
|
but it is clear how to fix it. Will do later, need this now. |
229 |
|
|
230 |
|
checkpoint55d_post |
231 |
|
o ECCO specific cost function terms (up-to-date with 1x1 runs) |
232 |
|
o ecco_cost_weights is modified to 1x1 runs |
233 |
|
o modifs to allow observations to be read in as |
234 |
|
single file or yearly files |
235 |
|
o enable to read exf forcing fields as either |
236 |
|
single file or yearly files (flag useExfYearlyFields) |
237 |
|
checkpoint55d_pre |
238 |
|
|
239 |
|
o switch between 2-level and 3-level checkpointing |
240 |
|
o add ability of MNC to write local and "partial" (eg. 2D slices where |
241 |
|
the full 3D field is never actually stored) arrays to NetCDF files |
242 |
|
with the correct (that is, the complete multi-dimensional) set of |
243 |
|
array indicies |
244 |
|
- used in mom_vecinv() to write the diagFreq output |
245 |
|
- tested (demonstrated) in verification/aim.5l_cs |
246 |
|
o further mnc-ification |
247 |
|
- add verification/lab_sea to the list with mnc setups |
248 |
|
- fix undefined mnc v-names in cd_code |
249 |
|
- add kpp to mnc output (both snapshot and timeave) |
250 |
|
o non-hydrostatic code |
251 |
|
- added horizontal viscosity parameter viscAhW for w, that replaces viscAh |
252 |
|
in calc_gw.F |
253 |
|
- defaults to viscAh |
254 |
|
- this is useful, when I want to use viscAh=0 (e.g., only biharmonic |
255 |
|
friction or Leith) in non-hydrostatic mode, as long as there is |
256 |
|
no biharmonic friction and/or Leigth or equivalent for vertical velocity. |
257 |
|
o pkg/cost |
258 |
|
extend simple cost functions to treat time mean quantities |
259 |
|
(T,U,V) via cost_accumulate_state from cost_tile |
260 |
|
o multidimAdvection on CS-grid: implement the full 3 pass ; overlap needs to |
261 |
|
be 2 times larger than the minimum size the advection scheme requires. |
262 |
|
now get a perfect conservation of salt in advect_cs test-exp (updated) |
263 |
|
o GGL90 (Gaspar's TKE mixed layer) |
264 |
|
- add horizontal diffusion of TKE, requires exchanges in |
265 |
|
do_fields_blocking_exchanges, horizontal diffusivity is zero by |
266 |
|
default. In OPA there is no horizontal diffusion of TKE but the |
267 |
|
mixing coefficients are computed from a horizontal average of TKE of |
268 |
|
6 points or so. I think that diffusion has a little more physical |
269 |
|
justification. |
270 |
|
- clean up ggl90_calc in the hope of reducing memory usage (this hope |
271 |
|
was in vain) |
272 |
|
- mask tke-variable in ggl90_init |
273 |
o fix mask Pb in multidimAdvection on CS-grid (still a small Pb with ipass) |
o fix mask Pb in multidimAdvection on CS-grid (still a small Pb with ipass) |
274 |
o fix biharmonic diffusion on CS-grid. |
o fix biharmonic diffusion on CS-grid. |
275 |
o more obcs stuff |
o more obcs stuff |
277 |
for reading boundary values. This routine is called from |
for reading boundary values. This routine is called from |
278 |
obcs_prescribe_read |
obcs_prescribe_read |
279 |
- updated obcs_check |
- updated obcs_check |
280 |
|
- changed sponge layer relaxation parameter units for days to seconds |
281 |
|
- turned off sponge layer by default |
282 |
|
- changed argument list of OBCS_CALC to myTime+deltaTclock |
283 |
|
- fixed about 35 bugs in obcs_external_fields_load |
284 |
|
|
285 |
checkpoint55c_post |
checkpoint55c_post |
286 |
o obcs stuff |
o obcs stuff |