2 |
|
|
3 |
Notes on tags used in MITgcmUV |
Notes on tags used in MITgcmUV |
4 |
============================== |
============================== |
5 |
|
o MNC: |
6 |
|
- make myThid the last argument for all subroutines |
7 |
|
- new default for the grid files: NO halos |
8 |
|
- add useMNC and other run-time flags |
9 |
|
- separate per-file-group handling of the unlimited dimension |
10 |
|
- early initialization of MNC w/ flags read at the eeboot stage |
11 |
|
and lookup tables set in initialize_fixed |
12 |
|
- write all MNC output to a freshly-created directory |
13 |
|
o thermodynamics sea-ice (thsice) is now tested with testreport. |
14 |
|
o test exp. advect_cs: use the standard cs32 grid ; update output. |
15 |
|
|
16 |
|
checkpoint52l_post |
17 |
|
o new land formulation: |
18 |
|
a) use ground enthalpy as prognostic variable to ensure exact |
19 |
|
energy conservation. |
20 |
|
b) account for water temperature and for latent heat of freezing |
21 |
|
in all processes (rain, run-off, ground storage) |
22 |
|
c) compute surface and ground temperature implicitly. |
23 |
|
o aim_v23 modification for new land model: |
24 |
|
a) Treat separately land / ocean / sea-ice surface fluxes |
25 |
|
to allow implicit computation of land & sea-ice surface temp. |
26 |
|
b) add snow precipitation. |
27 |
|
checkpoint52l_pre |
28 |
|
|
29 |
|
o fix problem (when 1 tile is empty) in min/max monitor. |
30 |
|
o fix bug in timeAve (u,vZetatave in common block) |
31 |
|
o no restoring terms under ice for pkg/seaice |
32 |
|
o moved SEAICE_DO_DIAGS to S/R do_the_model_io |
33 |
|
o bug fix for pkg/seaice pickups |
34 |
|
o change MNC call locations and add coordinate attributes |
35 |
|
o mask vorticity at the corner ; affects global_ocean.cs output |
36 |
|
o fix ini_curvilinear_grid ; test CS experiments with mpi |
37 |
|
o aim.5l_cs: modify sea-ice fraction input file ; update output |
38 |
|
o exf: Adding simple range check routine for exf fields after read |
39 |
|
|
40 |
|
checkpoint52k_post |
41 |
|
o removed top-level directory "diags" |
42 |
|
- we migrated these functions to pkg/timeave a long time ago |
43 |
|
o fixed bug introduced in pkg/monitor |
44 |
|
o accuracy ctrlprec = 32 insuffient for gradient checks using |
45 |
|
averaged fields (I/O via cost_averages) |
46 |
|
-> use ctrl.h in active_file*.F to control I/O precision. |
47 |
|
o paramter list of CALL ADTHE_MAIN_LOOP |
48 |
|
o added initial do_the_model_io to ecco |
49 |
|
o set all ...Freq to zero after cost_final |
50 |
|
taveFreq, dumpFreq, pChkptFreq |
51 |
|
o MAIN and ECCO differentiability restored |
52 |
|
|
53 |
|
checkpoint52j_post |
54 |
|
o fix nchklev in tamc.h for global_ocean... |
55 |
|
o Bringing flow and store directives up-to-date |
56 |
|
o Really weird thing! |
57 |
|
call do_the_model_io from the_main_loop with parameters |
58 |
|
starttime, niter0, instead of mytime, myiter, screws up the adjoint: |
59 |
|
TAF places a faulty re-call of initialise_varia |
60 |
|
after cost_final call which should not be there! |
61 |
|
checkpoint52j_pre |
62 |
|
|
63 |
|
o tweaked pkg/mdsio/mdsio_readfield.F to have more useful logic and |
64 |
|
error messages |
65 |
|
o fix errorMessageUnit problem. remove old version of mdsio from eesup/src |
66 |
|
o modified pkg/mdsio/mdsio_readfield.F -- commented out diskspace-eating |
67 |
|
debug output |
68 |
|
o modfied mdsio_writefield.F to handle non-global files under exch2 |
69 |
|
o update AIM Cubed-Sphere exp (aim.5l_cs): |
70 |
|
use land, p*, and Franco.M forcing fields with fractional land-sea mask. |
71 |
|
o update AIM Equatorial Channel exp: |
72 |
|
use standard aim_v23 pkg and change the SST fields to be more realistic. |
73 |
|
o globalFile now works with exch2 |
74 |
|
o merged mom_vi_calc_relvort3.F, mom_vi_del2uv.F and |
75 |
|
mon_vort3.F to make exch2 friendly with >1 tile per cube face |
76 |
|
o limit timeave output for hi-res integrations |
77 |
|
|
78 |
|
checkpoint52i_post |
79 |
|
o removed CPP_EEOPTIONS.h from verification/*/code |
80 |
|
o updated the tiling for global_ocean_pressure |
81 |
|
checkpoint52i_pre |
82 |
|
|
83 |
|
o update aim.5l_LatLon using the standard aim_v23 pkg (instead of |
84 |
|
the old pkg/aim). |
85 |
|
|
86 |
|
checkpoint52h_pre |
87 |
|
o shortened offending lines in exch2_send_rx?.template |
88 |
|
o modified W2_EXCH2_TOPOLOGY.h to reflect current topology generator |
89 |
|
o genmake2: add build & execute test for NetCDF code |
90 |
|
o modded aim.5l_cs and global_ocean.cs32x15 to use exch2, removed |
91 |
|
old grid files, moved CPP_EEMACROS.h to pkg/exch2 |
92 |
|
o added useSingleCPUIO flag to monitor.F and mon_out.F |
93 |
|
o added temporary hack for sea-ice dynamics on the cube: |
94 |
|
metric terms are ignored and it is assumed that |
95 |
|
there is no sea-ice on cube faces 1, 2, 4, and 5. |
96 |
|
|
97 |
|
checkpoint52f_post |
98 |
|
o added exch2 cube routines to pkg/exch2 |
99 |
|
o modified hs94.cs-32x32x5 to use it |
100 |
|
o added new grid files to hs94.cs-32x32x5 |
101 |
|
checkpoint52f_pre |
102 |
|
|
103 |
|
checkpoint52e_post |
104 |
|
o first attempt to solve vertical advection (momemtum & T,S) Implicitly |
105 |
|
for now, only implemented with Lax-Wendroff (tracer) and VectInv (mom) |
106 |
|
o step.1 : rewrite (as in MultiDimAdvec) explicit tracer stepping (gad_calc_rhs.F) |
107 |
|
to work with implicit vertical advection and AB ; |
108 |
|
o Implic. vert. advect. implemented with flux-limiter, c2, u3 and c4 scheme. |
109 |
|
o update output (gad_calc_rhs.F changes affect truncation error) of exp: |
110 |
|
front_relax, global_ocean .cs32x15 & _pressure, internal_wave, lab_sea, natl_box |
111 |
|
checkpoint52e_pre |
112 |
|
|
113 |
|
o fix bug in impldiff when Nr=1 or Nr=2. |
114 |
|
o change the albedo in pkg/thsice (as GISS model); update output_thsice.txt |
115 |
|
o little changes (fftpack, aim/phy_suflux ...) to pass the "checkbounds" test. |
116 |
|
o fix deltaTfreesurf in update_cg2d.F (left from c45d_post): affects 2 |
117 |
|
ocean exp. that use NLFS: global_ocean.cs32x15 & global_ocean_pressure |
118 |
|
o added exf_offset_atemp for Celsius to Kelvin conversion of atemp |
119 |
|
o eesupp/inc/EEPARAMS.h: MAX_NO_PROCS=1024 |
120 |
|
o pkg/cal/cal_toseconds.F fix for long (>60 years) integrations |
121 |
|
|
122 |
|
checkpoint52d_post |
123 |
|
o re-tiled many expts to allow comparison in multi-processor mode |
124 |
|
- updated output accordingly |
125 |
|
- changed hs94.128x64x5 to use intial T from file rather than use the |
126 |
|
random number generator |
127 |
|
o add infrastructure in model routines for fizhi and gridalt packages |
128 |
|
o change global_ocean.cs32x15 because of Pb with GM on CS-grid. |
129 |
|
o changes to permit hi-res, cubed-sphere, configuration |
130 |
|
- added useSingleCpuIO capability to mdsio_readfield.F and exf_interp.F |
131 |
|
- added "#undef ALLOW_USE_MPI" support to eesupp/src/scatter_2d.F |
132 |
|
- added pkg/exf/exf_set_uv.F for on-the-fly interpolation and rotation |
133 |
|
of surface winds for the cube |
134 |
|
(A verification experiment, based on global_ocean.cs32x15, but with |
135 |
|
pkg/seaice turned on and with on-the-fly interpolation from the NCEP |
136 |
|
Gaussian grid is described in MITgcm_contrib/high_res_cube/README_ice, |
137 |
|
complete with example surface forcing files and matlab scripts to look |
138 |
|
at the output and compare it with that of global_ocean.cs32x15.) |
139 |
|
o packages pickup: $PKG_write_pickup called from packages_write_pickup ; |
140 |
|
but call to $PKG_read_pickup remains in $PKG_ini_vars: change CD_code |
141 |
|
to conform to the common rule. |
142 |
|
o check-in the first version of the coupler + interfaces for multi-components |
143 |
|
set-up (Chris's version, adapted to work on cubed-sphere grid); use MPI. |
144 |
|
- imply modification in eesupp (MPI_COMM_MODEL < MPI_COMM_WORLD). |
145 |
|
- atmosphere: use pkg aim_v23 ; no sea-ice for now. |
146 |
|
- ocean and atmos. share the same horizontal grid (no interpolation). |
147 |
|
- exchanges between component and coupler is done in forward_step |
148 |
|
o new verification experiment, cpl_aim+ocn: |
149 |
|
coupled ocean - AIM atmosphere on cs32 grid. |
150 |
|
|
151 |
|
checkpoint52d_pre |
152 |
|
o surface flux time-av diagnostic modified for NLFS & RealFreshWater |
153 |
|
o add call to AIM pendant S/R in external_forcing & external_fields_load.F |
154 |
|
|
155 |
|
checkpoint52c_post |
156 |
|
o Fixing OPTIONS files for use of exf: |
157 |
|
- ALLOW_ECCO not needed |
158 |
|
- ECCO_CPPOPTIONS.h should not be included from |
159 |
|
EXF_OPTIONS.h/CAL_OPTIONS.h, but from CPP_OPTIONS.h |
160 |
|
as has been the case in the past |
161 |
|
- All cal/exf related options are currently set in |
162 |
|
single header file. Should remain so until we |
163 |
|
agree on a consistent new policy. |
164 |
|
o Removed all CPP options for cal package. |
165 |
|
cal has no more CPP options. |
166 |
|
o modified STOREs in GAD_ADVECTION |
167 |
|
o corrected key comp. for passkey |
168 |
|
|
169 |
|
checkpoint52b_post |
170 |
|
o new version: "thsice" of thermodynamic sea-ice pkg: |
171 |
|
- only 1 call from "forward_step"; conserve energy, fresh-water & salt. |
172 |
|
- modify fluxes but do not change theta directly; |
173 |
|
- light cleaning of bulk_force pkg (still needed with thsice). |
174 |
|
- add forcing fields + data files in global_ocean.cs32x15/inp_thsice |
175 |
|
+ output_thsice.txt to test thsice & bulk_force pkgs. |
176 |
|
o put back grid & coriolis monitor output. |
177 |
|
checkpoint52b_pre |
178 |
|
|
179 |
|
o call "do_the_model_io" at the beginning (=> dump initial state) |
180 |
|
o use rhoConstFresh to define convertEmP2rUnit (was done only in ocean-P) |
181 |
|
o sort out interplay between tamc.h and PTRACERS_OPTIONS.h |
182 |
|
(need info on NUMBER_OF_PTRACERS) |
183 |
|
o missing PTRACERS headers in some routines |
184 |
|
o default tamc.h in pkg/autodiff supposed to crash |
185 |
|
to ensure proper customization |
186 |
|
|
187 |
|
checkpoint52a_post |
188 |
|
o modifications to make FREEZE (_SURFACE) flux visible to pkg/kpp |
189 |
|
- moved surfaceTendencyTice from pkg/seaice to main code |
190 |
|
- subroutine FREEZE_SURFACE now limits only surface temperature |
191 |
|
and is called in FORWARD_STEP (if allowFreezing=.TRUE.) |
192 |
|
=> new output.txt for global_ocean.cs32x15 & global_with_exf |
193 |
|
- keep the old version of FREEZE for backward compatibility; |
194 |
|
global_ocean.90x40x15 left unchanged using useOldFreezing=.TRUE. |
195 |
|
- corresponding modifs for TAF directives |
196 |
|
o added surface flux output variables to TIMEAVE_STATVARS |
197 |
|
o time-averaged output for pkg/ptracers |
198 |
|
o fix problem with ECCO-related divided adjoint |
199 |
|
snapshot file was missing some ad-variables, |
200 |
|
but no warning issued by TAF |
201 |
|
|
202 |
|
checkpoint52a_pre |
203 |
|
o some bug fixes for #undef REAL4_IS_SLOW |
204 |
|
|
205 |
|
checkpoint52 = ecco_c52_e35 |
206 |
|
o after testing adjoints of checkpoint51u_post |
207 |
|
|
208 |
|
checkpoint51u_post |
209 |
|
o this is the post-merge tag of the ecco-branch |
210 |
|
(needs another clean checkout and re-testing) |
211 |
|
o various natl_box_adjoint configs and results |
212 |
|
but no input fields |
213 |
|
o obcs adjoint not yet merged! |
214 |
|
o adding ECCO global 1x1 and 2x2 degree configs |
215 |
|
o updated/extended some store directives for seaice |
216 |
|
o pkg/ecco now containes ecco-specific part of cost function |
217 |
|
o top level routines the_main_loop, forward_step |
218 |
|
supersede those in model/src/ |
219 |
|
previous input data.cost now in data.ecco |
220 |
|
(new namelist ecco_cost_nml) |
221 |
|
o in ctrl/ cleaned some cross-dependencies and updated CPP options |
222 |
|
|
223 |
|
checkpoint51t_post |
224 |
|
o this is the pre-merge tag of the ecco-branch |
225 |
|
|
226 |
|
checkpoint51s_post |
227 |
|
o cleanup: removed various obsolete #define-s |
228 |
|
o pkg/grdchk |
229 |
|
- renamed 'ph-grd 3' to 'grad-res' |
230 |
|
- merged from ecco-branch |
231 |
|
(remaining bug fixes for obcs gradient checks) |
232 |
|
- additional high-precision output for testreport |
233 |
|
(grep for 'precision_grdchk_result') |
234 |
|
|
235 |
|
checkpoint51r_post |
236 |
|
o cleaned up or removed CPP_OPTIONS.h files |
237 |
|
o updated results for some of the tests to reflect the new |
238 |
|
optfiles (-ieee: -O0 instead of -O3) |
239 |
|
|
240 |
|
checkpoint51q_post |
241 |
|
o cd_code: |
242 |
|
- moved cd_scheme.F -> cd_code_scheme.F |
243 |
|
- separate read_checkpoint from cd_code_ini_vars.F |
244 |
|
- separated cd_code part from write_checkpoint |
245 |
|
- updated AD_SOURCE, generated .flow |
246 |
|
- added CD_CODE_VARS.h to the_main_loop |
247 |
|
- Moving cd_code specific store dir.s to pkg/cd_code |
248 |
|
o ctrl package totally restructured |
249 |
|
- pack/unpack now optional and decoupled from |
250 |
|
xx_/adxx_ I/O |
251 |
|
- ctrl_pack/unpack cleaned |
252 |
|
(new routines ctrl_init_ctrlvar.F, pkg/ctrl/ctrl_init_wet.F) |
253 |
|
- confined inclusion of AD_CONFIG.h to where necessary. |
254 |
|
o genmake2: changed AD dependencies from SRCFILES to AD_FILES |
255 |
|
|
256 |
|
checkpoint51p_post |
257 |
|
o create initial cd_code package |
258 |
|
- WARNING: the initialization of fields within packages |
259 |
|
is broken because INI_FIELDS (where READ_CHECKPOINT is |
260 |
|
called) is called *before* PACKAGES_INIT_VARIABLES. |
261 |
|
This seems to be backwards since |
262 |
|
1) its important to initially zero the entire field including |
263 |
|
the "halo" region |
264 |
|
2) zeroing needs to be done *before* reading pickup info |
265 |
|
and the pickup call might or might not happen in any |
266 |
|
particular run |
267 |
|
- this needs an overhaul for R2 |
268 |
|
o cleanup verification/*/code/GMREDI_OPTIONS.h |
269 |
|
o cleanup testreport |
270 |
|
|
271 |
|
checkpoint51o_post |
272 |
|
o bringing AD-related verif's up to date with genmake2 |
273 |
|
- carbon/ |
274 |
|
- global_ocean.90x40x15/ |
275 |
|
- hs.94.1x64x5/ |
276 |
|
- (front_relax/ ) |
277 |
|
o (more) consistent directory structure for AD-related verif.'s |
278 |
|
o cleaning ALLOW_GRADIENT_CHECK -> ALLOW_GRDCHK |
279 |
|
o cleaning some ALLOW_TANGENTLINEAR_RUN -> ALLOW_AUTODIFF |
280 |
|
o bug fix in find_alpha.F for MDJWF: |
281 |
|
- modif. to alpha = 1/D*( dN/dT - rho*dD/Dt) to account for |
282 |
|
change rho -> rho-rhoConst |
283 |
|
- replace call find_rho to find_rhonum |
284 |
|
o initialisation of rFlx extended to full array (required by TAF) |
285 |
|
and shifted to thermodynamics |
286 |
|
o removed PTRACERS.h in ptracers routine |
287 |
|
o added surfacetendencyPtr to S/R parameter list pracers_forcing |
288 |
|
o Correcting initialisations for fVerU, fVerV. |
289 |
|
o helping TAF to recognize dependency on kUp for |
290 |
|
fVerU, fVerV |
291 |
|
o Replacing delZ by delR in pkg/ctrl/ |
292 |
|
checkpoint51o_pre |
293 |
|
|
294 |
|
o undid all of cp51 pending some cleanups and discussion |
295 |
|
o added the [#include "AD_CONFIG.h"] statement to all files that need |
296 |
|
it for adjoint/tl #defines |
297 |
|
o re-worked the build logic in genmake2 to support AD_CONFIG.h |
298 |
|
o removed tools/genmake since it no longer works |
299 |
|
|
300 |
|
checkpoint51n_post |
301 |
|
o modifications to make FREEZE flux visible to pkg/kpp |
302 |
|
- moved surfaceTendencyTice from pkg/seaice to main code |
303 |
|
- FREEZE & EXTERNAL_FORCING_SURF moved to FORWARD_STEP |
304 |
|
- subroutine FREEZE now limits only surface temperature |
305 |
|
(this means new output.txt for global_ocean.90x40x15, |
306 |
|
global_ocean.cs32x15, and global_with_exf) |
307 |
|
o added surface flux output variables to TIMEAVE_STATVARS |
308 |
|
|
309 |
|
checkpoint51n_pre |
310 |
|
o added "#undef ALLOW_USE_MPI" support to eesupp/src/gather_2d.F |
311 |
|
o added [#include "AD_CONFIG.h"] to all files that use the following |
312 |
|
defines: |
313 |
|
- ALLOW_ADJOINT_RUN |
314 |
|
- ALLOW_TANGENTLINEAR_RUN |
315 |
|
- ALLOW_ECCO_OPTIMIZATION |
316 |
|
|
317 |
|
checkpoint51m_post |
318 |
|
o incorporating changes to get TAMC/TAF working in genmake2 |
319 |
|
- added new TAMC/TAF targets to the Makefile |
320 |
|
- various cleanups related to package handling |
321 |
|
- these changes should have no impact on the forward model |
322 |
|
|
323 |
|
checkpoint51l_post |
324 |
|
o changes to pkg/cal and pkg/exf that allow and speed-up long integrations |
325 |
|
- faster algorithm for cal_addtime.F |
326 |
|
- higher precision arithmetic, where needed |
327 |
|
- pkg/exf *startdate variables changed from calendar date to |
328 |
|
model integration time |
329 |
|
|
330 |
|
checkpoint51l_pre |
331 |
|
o add salt flux to forcing fields (used when salty sea-ice forms or melts) |
332 |
|
o enable to apply restoring on S & T only in a latitude band. |
333 |
|
o update output (external_forcing_surf modif. change truncation errors) |
334 |
|
global_ocean.cs32x15, global_ocean_pressure, lab_sea, natl_box |
335 |
|
|
336 |
|
checkpoint51k_post |
337 |
|
o change default to: useNHMTerms=.FALSE. |
338 |
|
- new output.txt for atmos. exp (NHMTerms were wrong but now turned off): |
339 |
|
adjustment.128x64x1, aim.5l_Eq_Ch, aim.5l_LatLon, hs94.128x64x5, hs94.1x64x5 |
340 |
|
- new output.txt for idealized oceanic exp (NHMTerms are now turned off): |
341 |
|
exp1, ideal_2D_oce |
342 |
|
- change data file of oceanic exp (leave the results unchanged for now) |
343 |
|
exp2, global_ocean[90x40x15,pressure,with_exf], lab_sea, natl_box |
344 |
|
o set gravitySign automatically according to the vertical coordinate used |
345 |
|
(and change sign: back to "logical" value: +1 when R increases downward) |
346 |
|
o added an include barrier to the default CPP_OPTIONS.h and |
347 |
|
removed the #include "PACKAGES_CONFIG.h" from it |
348 |
|
o fix a bug in mom_fluxform (from chk51j_post) |
349 |
|
|
350 |
|
checkpoint51j_post |
351 |
|
o Added some AD-related initialisations in mom_vecinv/ mom_fluxform/ |
352 |
|
o adjusted some flow directives (dynamics, thermodynamics) |
353 |
|
o added cubed-sphere case to test cost function |
354 |
|
o heckpoint_lev?_directives.h now include |
355 |
|
pkg-specific directives, whenever those are enabled. |
356 |
|
o Moving pkg-specific flow directives to corresponding pkg |
357 |
|
Moving pkg-specific differentiation list to corresponding pkg |
358 |
|
Moving pkg-specific checkpoint-lev storing to corresponding pkg |
359 |
|
---> conventions are |
360 |
|
- pkg_ad.flow |
361 |
|
- pkg_ad_diff.list |
362 |
|
- pkg_ad_check_lev?_dir.h |
363 |
|
|
364 |
|
checkpoint51i_post |
365 |
|
o merge of the branch-genmake2 |
366 |
|
- knowingly breaks the older genmake |
367 |
|
- automatic generation of all ALLOW_${PKG_NAME} defines |
368 |
|
- new testreport supersedes older testscript |
369 |
|
o large number of package inclusion and header cleanups |
370 |
|
checkpoint51i_pre |
371 |
|
|
372 |
|
o new output for adjoin of global ocean vector invariant |
373 |
|
o fix for checkpoint of thermodynamic seaice and bulk_force |
374 |
|
o Steph gchem various cleanups |
375 |
|
|
376 |
|
checkpoint 51h_pre |
377 |
|
o fixed some single quotes |
378 |
|
o modify gchem pkg to be more versatile |
379 |
|
o modifications to clean up dic pkg |
380 |
|
o add pkg/cfc |
381 |
|
|
382 |
|
checkpoint51g_post |
383 |
|
o provide links for ARPACK and ADM*TLM |
384 |
|
o start removing verification/vero/ |
385 |
|
o update AD-related stuff |
386 |
|
(in particular some IF-statements in model/src/ routines) |
387 |
|
o adding to verification/global_ocean.90x40x15/ adjoint of |
388 |
|
vector invariant setup |
389 |
|
|
390 |
checkpoint51f_post |
checkpoint51f_post |
391 |
o update advect_xz/output.txt (left from chekpoint50f_pre, ini_vel modif) |
o update advect_xz/output.txt (left from chekpoint50f_pre, ini_vel modif) |