4 |
Notes on tags used in MITgcmUV |
Notes on tags used in MITgcmUV |
5 |
============================== |
============================== |
6 |
|
|
7 |
|
o pkg/autodiff: |
8 |
|
- adread_adwrite.F: when type and length do not match ALLOW_AUTODIFF_WHTAPEIO |
9 |
|
criteria, return to simple (default) tape IO format. |
10 |
|
o pkg/mdsio (+ eesupp/src): |
11 |
|
- rewrite/simplify tape-IO S/R (new S/R MDS_READ/WRITE_TAPE replace |
12 |
|
previous MDSREAD/WRITEVECTOR) with 2 array argument from each type (R4/R8); |
13 |
|
- fix globalFile and singleCpuIO options using simpler global mapping. |
14 |
|
- new pairs of scatter/gather vector S/R (one for each type, generated from |
15 |
|
template) corresponding to simpler global mapping. |
16 |
|
- adread_write.F: switch to new S/R (but leave old calls commented) and write |
17 |
|
to globalFile when parameter globalFiles is set to True. |
18 |
|
- switch on useSingleCpuIO in AD experiments: global_ocean.90x40x15 & isomip. |
19 |
|
o pkg/autodiff: |
20 |
|
- adread_adwrite.F: add a hack for RS arrays (when RS=real*4); |
21 |
|
with ALLOW_AUTODIFF_WHTAPEIO defined, since corresponding (real*4) is |
22 |
|
missing, just add a STOP if array type do not match. |
23 |
|
o pkg/exf: |
24 |
|
- to allow to use seaice-fraction from pkg/exf in other pkgs than pkg/seaice: |
25 |
|
rename CPP option EXF_ALLOW_SEAICE_RELAX to EXF_SEAICE_FRACTION |
26 |
|
and rename array obsSIce to exf_iceFraction. |
27 |
|
o tutorial_deep_convection: |
28 |
|
- add 1rst version of isotropic 3-D Smagorinsky code (from Louis-Philippe), |
29 |
|
for now all in this exp. code dir. |
30 |
|
- add secondary test using Smag-3D viscosity (keep very low backgroud visc for |
31 |
|
testing) and flux-limter advection scheme for Temp. (no explicit diffusion). |
32 |
|
o eesupp/src: |
33 |
|
- added SINGLE_DISK_IO option because reading of parameter files on |
34 |
|
very large number of processors did not work with existing set-up |
35 |
|
|
36 |
|
checkpoint64o (2013/09/25) |
37 |
|
o pkg/atm_phys & atm_compon_interf: |
38 |
|
- allows for coupling of gray-atmosphere (atm_phys) with ocean. |
39 |
|
o tools/build_options: |
40 |
|
- switch from "-fPIC" to "-mcmodel=medium" in optfiles: linux_amd64_gfortran |
41 |
|
& linux_amd64_ifort11 and in linux_amd64_g77 & linux_amd64_open64 also |
42 |
|
remove CPP setting (was identical to genmake2 default). |
43 |
|
o pkg/gmredi & model/src: Some updating and work done on the residual model. |
44 |
|
- created new file model/src/calc_eddy_stress.F to calculate the eddy stress. |
45 |
|
- fixed up the calculation of the eddy stress and how it is added to the |
46 |
|
external forcing via taueddy_external_forcing.F |
47 |
|
- at the moment, it is very experimental and only works with the variable eddy |
48 |
|
diffusivity calculated in gmredi_k3d.F |
49 |
|
o pkg/seaice/seaice_check.F: add a check to catch the case of specifying |
50 |
|
lw/swfluxfile instead of lw/swdownfile in data.exf together with pkg/seaice |
51 |
|
o testreport (& tools/do_tst_2+2): |
52 |
|
- for MPI test, set default COMMAND to 'mpirun -v -np TR_NPROC ./{executable}' |
53 |
|
o tools/build_options: linux_amd64_gfortran & linux_amd64_ifort11: |
54 |
|
- remove CPP='cpp -traditional -P' (this is genmake2 default) |
55 |
|
- add switch (for big setups) to use 'medium' memory-model (but leave it |
56 |
|
commented out for now). Note: needed with FC 19 to compile big setups. |
57 |
|
o pkg/atm_compon_interf: |
58 |
|
- regroup per field origin (model & pkgs) the coupling storage routines |
59 |
|
(which accumalate in time each coupling field) |
60 |
|
- move bi,bj loops inside atm_store_my_data.F and store also wind-stress; |
61 |
|
update accordingly + simplify aim_do_physics.F |
62 |
|
|
63 |
|
checkpoint64n (2013/08/26) |
64 |
|
o pkg/bbl: |
65 |
|
- update formulation to reduce dispersion of tracer properties in bbl |
66 |
|
- replaced horizontal and vertical transport parameters with velocities |
67 |
|
- changes results for verification/global_with_exf.yearly |
68 |
|
o verification/halfpipe_streamice: |
69 |
|
- change to matrix construction; update both Fwd & AD output. |
70 |
|
o verification/tutorial_tracer_adjsens: |
71 |
|
- OpenAD test: switch to vector-invariant momentum since fluxform with |
72 |
|
rStar causes problems with OpenAD; update output. |
73 |
|
o tools: |
74 |
|
- genmake2: define a common prefix for all temp-file names ; move them |
75 |
|
to local /tmp disk (but would be easy to move them back); |
76 |
|
- xmakedepend: apply the same switch for temp-files. |
77 |
|
o pkg/offline: |
78 |
|
- changes for use with rStar (NLFS): assume that we continue to provide |
79 |
|
UVELMASS/hFacW_ini & VVELMASS/hFacS_ini (hFacWi,S_ini as written in grid |
80 |
|
output files) and apply r* scaling at each time-step (function of the time |
81 |
|
varying Eta field); use normal pickup files (needed for restart with NLFS). |
82 |
|
o adjoint with OpenAD: |
83 |
|
- move OpenAD-specific files from verification/OpenAD/code_oad_all to a new |
84 |
|
package openad. This package has to be compiled for all runs with OpenAD |
85 |
|
instead of specifying code_oad_all as a modification directory. |
86 |
|
- link the fortran templates from tools/OAD_support to the build directory |
87 |
|
for preprocessing to avoid conflicts between different setups compiled |
88 |
|
simultaneously and simplify cleanup. |
89 |
|
o pkg/exf: |
90 |
|
- in exf_getforcing.F: comment out most of the EXCH calls (fields used by |
91 |
|
main model or other pkgs are exchanged in EXF_MAPFIELDS). |
92 |
|
o model/src: |
93 |
|
- do_stagger_fields_exchanges.F: skip EXCH calls when using pkg/offline |
94 |
|
(similar to do_fields_blocking_exchanges.F). |
95 |
|
o tools/genmake2: |
96 |
|
- remove TAF output src code just before calling staf (when not doing a fresh |
97 |
|
built, will stop if things go wrong with staf). |
98 |
|
- fix target "adobj" (left from TAF version-2 transition) |
99 |
|
o pkg/diagnostics: |
100 |
|
- add a parameter to track the status of pkg/diagnostics activation; |
101 |
|
this replace/extend the use of logical param "settingDiags" (to check |
102 |
|
when adding diag to the list) to also check any DIAGNOSTICS_[]FILL* call. |
103 |
|
New S/R to print error message and stop when pkgStatus is not right. |
104 |
|
- to try: add a warning when "data.diagnostics" exist but useDiagnostics=F. |
105 |
|
|
106 |
|
checkpoint64m (2013/08/13) |
107 |
|
o model/inc: |
108 |
|
- move FCORI_MACROS.h from PARAMS(_MACROS).h to GRID_MACROS.h (left from |
109 |
|
8 yrs ago modif when Coriolis arrays were moved from PARAMS.h to GRID.h) |
110 |
|
o pkg/kpp & aim_v23: |
111 |
|
- only call DIAGNOSTICS_FILL when useDiagnostics=TRUE. |
112 |
|
o pkg/seaice: |
113 |
|
- restore (last time on 2011/12/24) ability to compile pkg/seaice with |
114 |
|
undefined pkg/exf ALLOW_ATM_TEMP or ALLOW_RUNOFF CPP-options. |
115 |
|
- only call DIAGNOSTICS_FILL when useDiagnostics=TRUE. |
116 |
|
o eesupp/src: |
117 |
|
- fix check for overlap-size argument (myOLn.GT.MAX_OLY_EXCH) |
118 |
|
in exch1_rx[_ad].template (thanks to Francois Lefeuvre report). |
119 |
|
o switch to TAF version-2: |
120 |
|
- add flow directives to "freeze" naming convention for ad-routines that |
121 |
|
are used in I/O routines of adjoint state and associated common blocks |
122 |
|
that are used in adcommon.h (backward compatible with version-1) |
123 |
|
- update all ad-optfiles (in tools/adjoint_options + few local to some |
124 |
|
verification exp) to switch to latest TAF version (currently 2.5.5); |
125 |
|
merge "*_mpi" adoptfiles into the corresponding non-mpi (but commented |
126 |
|
out except for diva). |
127 |
|
- the major change with TAF version-2 is that both the differentiated |
128 |
|
routines and the forward routines (new) are returned as part of the TAF |
129 |
|
output source code. Update genmake2 accordingly. |
130 |
|
- new output for AD experiment tutorial_global_oce_biogeo (better AD gradient |
131 |
|
with version-2 when compared to TLM or FWD gradient); other experiments |
132 |
|
output show minor changes (machine truncation level); update the few AD & |
133 |
|
TLM output with 12 matching digits only (some prior to version-2 switch). |
134 |
|
|
135 |
|
checkpoint64l (2013/08/05) |
136 |
|
o model/src: |
137 |
|
- in dynamics.F, skip the call to CALC_VISCOSITY if momViscosity=F |
138 |
|
- main_do_loop.F: no longer includes additional (AUTODIFF) header files |
139 |
|
when using TAF but only if using OpenAD. |
140 |
|
o pkg/mom_common+fluxform+vecinv: |
141 |
|
- always set horiz. viscosity arrays to background value before calling |
142 |
|
MOM_CALC_VISC (in MOM_FLUXFORM & MOM_VECINV) and call S/R MOM_CALC_VISC |
143 |
|
only when using variable horiz. viscosity (useVariableVisc=T); |
144 |
|
- simplify mom_vecinv.F (only 1 block for momViscosity). |
145 |
|
o pkg/mom_common: variable horiz. viscosity in NH code |
146 |
|
- move horiz-viscosity 3-D arrays viscAh_W & viscA4_W (used in calc_gw.F) |
147 |
|
from model/inc/NH_VARS.h to pkg/mom_common/MOM_VISC.h |
148 |
|
- store in common block (in MOM_VISC.h) logical parameters: useHarmonicVisc, |
149 |
|
useBiharmonicVisc & useVariableVisc. |
150 |
|
- fix old bug (already in 1rst implementation of variable horizontal viscosity |
151 |
|
in calc_gw.F, version 1.27, 2006/06/20): |
152 |
|
horizontal bi-harmonic viscosity in gW was missing when wiscA4W=0 |
153 |
|
even if variable bi-harmonic viscosity (e.g., viscA4Grid) was non-zero. |
154 |
|
- change background horiz viscosity in vertical momentum (gW) to always be |
155 |
|
viscAhW,viscA4W (instead of switching to viscAhD, viscA4D when using |
156 |
|
any type of variable viscosity, e.g., viscAh/4Grid) |
157 |
|
- change default value of viscAhW,viscA4W to viscAhD,viscA4D (instead of |
158 |
|
viscAh,viscA4) which default to viscAh,viscA4 : this avoid missing |
159 |
|
horiz. viscosity in W eq when just setting viscAhD/Z,viscA4D/Z (since |
160 |
|
default viscAh,viscA4 is zero). |
161 |
|
o model/src: |
162 |
|
- extend length of drC & recip_drC from Nr to Nr+1. |
163 |
|
o Divided Adjoint (DIVA) with MPI: |
164 |
|
- genmake2: do not create local ./mpi_headers dir when no file to copy into. |
165 |
|
- remove option ALLOW_DIVIDED_ADJOINT_MPI (replaced by ALLOW_DIVIDED_ADJOINT |
166 |
|
and ALLOW_USE_MPI) from model/src code and from ECCO_CPPOPTIONS.h. |
167 |
|
|
168 |
|
checkpoint64k (2013/07/23) |
169 |
|
o tools/OAD_support: |
170 |
|
- avoid the need for file "oadtempflile" in insertTemplateDir.bash |
171 |
|
and remove it from genmake2. |
172 |
|
o tools/build_options: |
173 |
|
- remove MPI_HEADER_FILES_INC setting (no longer used) and comment out |
174 |
|
MPI_HEADER_FILES list (let genmake2 find the missing headers) |
175 |
|
o verification/halfpipe_streamice: |
176 |
|
- change to driving stress formulation; update both Fwd & AD output. |
177 |
|
o tools/genmake2 and Divided Adjoint with MPI: |
178 |
|
- remove default setting of MPIINCLUDEDIR from $MPIHOME (always been broken); |
179 |
|
- only create local ./mpi_headers dir if using MPI and MPIINCLUDEDIR is set; |
180 |
|
- add new variable (LOCAL_MPI_HEADERS, replace MPI_HEADER_FILES_INC) in |
181 |
|
Makefile, which is set by genmake2, and check which mpi-headers are needed. |
182 |
|
Note: need to update adjoint_options/adjoint_diva_mpi accordingly. |
183 |
|
- update target "CLEAN" (to also remove ./mpi_headers/ dir). |
184 |
|
o testreport: |
185 |
|
- changes for Divided Adjoint Run: when file "run_ADM_DIVA" is present, |
186 |
|
perform additional runs (number of additional runs is "add_DIVA_runs" taken |
187 |
|
from file run_ADM_DIVA ; should match "nchklev_3" in file "code_ad/tamc.h"). |
188 |
|
o verification/lab_sea (AD test): |
189 |
|
- change to test Divided Adjoint Run in this set-up (both standard AD test |
190 |
|
and 2 secondary AD test: noseaice + noseaicedyn); drop the evp AD test. |
191 |
|
o pkg atm_ & ocn_compon_interf: |
192 |
|
- remove cpl_earlyExpImpCall=F option (was mainly a hack added for the old |
193 |
|
staggerTimeStep implementation) and disable (retired) corresponding |
194 |
|
parameter. |
195 |
|
o pkg/offline: |
196 |
|
- comment out unused field-array: ICEM, ConvectCount, hflx[01], icem[01]; |
197 |
|
- add S/R OFFLINE_CHECK to print offline parameter summary |
198 |
|
and stop if loading a file that is not used; |
199 |
|
- enable to calculate GMRedi tensor, KPP mixing and convective index |
200 |
|
when the corresponding file(s) is/are not specified (but pkg is used). |
201 |
|
- comment out resetting of monitorFreq (to endTime) since it still useful |
202 |
|
for monitoring CFL numbers and checking offline fields. |
203 |
|
o OpenAD: |
204 |
|
- do not define OAD_DEBUG (in tools/adjoint_options/adjoint_oad) to get |
205 |
|
smaller standard output) and generate new (smaller) output (on baudelaire |
206 |
|
using gfortran with -ieee) for exp. tutorial_tracer_adjsens |
207 |
|
o model/src: |
208 |
|
- call EXTERNAL_FORCING_SURF outside bi,bj loops (in do_oceanic_phys.F), |
209 |
|
(where external_forcing_adjust was called) and change list of arguments; |
210 |
|
- merge external_forcing_adjust.F into external_forcing_surf.F |
211 |
|
- put surface relaxation of SST & SSS in new S/R (forcing_surf_relax.F) |
212 |
|
which also contains balancing surface relaxation (ALLOW_BALANCE_RELAX, |
213 |
|
previously in file "balance_relax.F", now removed); remove corresponding |
214 |
|
arrays in FFIELDS.h. |
215 |
|
- EXTERNAL_FORCING_SURF is now called when using pkg/offline; implement |
216 |
|
a hack for getting back surfaceForcingS (loaded from file) when using |
217 |
|
ALLOW_OLD_VIRTUALFLUX (pkg/dic, in DIC_OPTIONS.h) in offline set-up. |
218 |
|
- update output of AD test experiment global_ocean.cs32x15.seaice_dynmix |
219 |
|
(was getting only 11 digits for AD-grad, due to different truncation |
220 |
|
error in AD code). |
221 |
|
|
222 |
|
checkpoint64j (2013/07/04) |
223 |
|
o pkg/offline: |
224 |
|
- to enable the use of other features with pkg offline (e.g., obcs), |
225 |
|
also call S/R DO_OCEANIC_PHYS in offline run - more modifs to come. |
226 |
|
- comment out "allowFreezing" (now active) in 2 offline testing exp. |
227 |
|
o pkg/exf ALLOW_RUNOFTEMP |
228 |
|
- fix sign and make compatible with temp_EvPrRn .NE. UNSET_RL |
229 |
|
- ahdded RUNOFTEMP test to verification/global_ocean.cs32x15/input.seaice |
230 |
|
- changes verification/global_ocean.cs32x15/results/output.seaice.txt |
231 |
|
o pkg/atm_phys: |
232 |
|
- allows to add some damping on uVel,vVel (strength only function of k). |
233 |
|
o verification, ad-tests: |
234 |
|
- reduce length of the simulation for AD test: global_ocean.cs32x15.seaice, |
235 |
|
global_ocean_ebm and offline_exf_seaice.thsice. |
236 |
|
o verification/halfpipe_streamice: |
237 |
|
- found a bug in s/r pkg/streamice/streamice_advect_thickness which caused |
238 |
|
flux input boundary conditions to be ignored; a fix for this bug changed |
239 |
|
verification results for forward test. |
240 |
|
- add adjoint test. |
241 |
|
o pkg/ptracers: |
242 |
|
- allow to restart without SOM pickup (resetting SOM to zero). |
243 |
|
o pkg/gmredi: |
244 |
|
- New parameterisation for the calculation of K and (GM_PsiX,GM_PsiY) added. |
245 |
|
- It uses mixing length theory and suppression by steering level effects to |
246 |
|
calculate a diffusivity used in the Redi tensor (see Bates et al., submitted |
247 |
|
to JPO, for more details). |
248 |
|
- It also uses the diffusivity to calculate an eddy induced streamfunction |
249 |
|
based on a PV closure (rather than a buoyancy closure as in GM). |
250 |
|
- New files added to pkg/gmredi: |
251 |
|
gmredi_k3d.F calculates the diffusivity for the Redi tensor and the eddy |
252 |
|
induced overturning streamfunction (called from gmredi_calc_tensor) |
253 |
|
gmredi_calc_eigs.F calculates the eigenvalues and eigenvectors required |
254 |
|
for use in gmredi_k3d |
255 |
|
gmredi_calc_urms.F calculates the the rms eddy velocity used to calculate |
256 |
|
the eddy diffusivity |
257 |
|
|
258 |
checkpoint64i (2013/06/18) |
checkpoint64i (2013/06/18) |
259 |
o pkg/cheapaml: |
o pkg/cheapaml: |
290 |
atmospheric CFC ; fix for the case myIter < PTRACERS_iter0. |
atmospheric CFC ; fix for the case myIter < PTRACERS_iter0. |
291 |
- fix calculation of surf tendencys for partial-cell and/or Non-Lin Free-Surf |
- fix calculation of surf tendencys for partial-cell and/or Non-Lin Free-Surf |
292 |
- new routine to print summary of CFC params and check for consistency. |
- new routine to print summary of CFC params and check for consistency. |
293 |
|
o pkg/seaice: add uice/vice to the parameter list of s/r seaice_advdiff, |
294 |
|
similar to thsice_advdiff. |
295 |
|
Note that for the B-grid case the routine parameters uc/vc are overwritten. |
296 |
o pkg/cfc: |
o pkg/cfc: |
297 |
- change time interpolation for atmospheric CFC-11 (now same as for CFC-12); |
- change time interpolation for atmospheric CFC-11 (now same as for CFC-12); |
298 |
update output (CFC-11) of experiment cfc_example and tutorial_cfc_offline. |
update output (CFC-11) of experiment cfc_example and tutorial_cfc_offline. |