/[MITgcm]/MITgcm/doc/tag-index
ViewVC logotype

Diff of /MITgcm/doc/tag-index

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.1851 by jmc, Fri Apr 5 21:29:21 2013 UTC revision 1.1989 by jmc, Tue May 6 15:59:40 2014 UTC
# Line 4  $Name$ Line 4  $Name$
4      Notes on tags used in MITgcmUV      Notes on tags used in MITgcmUV
5      ==============================      ==============================
6    
7    o model/src:
8      - since we have several heat capacity (even in model/src), define "recip_Cp"
9        as local variable (no longer in common block) to avoid any confusion.
10      - add thetaConst in PARAMS.h (to be used with pStar or sigma-P coords).
11    o pkg/exf:
12      - from Jeff Scott: add option (#define EXF_CALC_ATMRHO) to calculate local
13        air density as function of air Temp, Humidity and atm pressure.
14    
15    checkpoint64w (2014/05/02)
16    o verification:
17      - update output_adm.txt files for experiment global_ocean.cs32x15 (seaice &
18        seaice_dynmix) and lab_sea (primary test & noseaicedyn): moving/changing
19        code from seaice_growth.F & seaice_advdiff.F to new ridging routines
20        affects AD gradient (down to 8-7 matching digits for global_ocean and
21        5-6 for lab_sea).
22    seaice_reg_ridge.F seaice_do_ridging.F
23    o model/src: for atmosphere in p* coords:
24      - store factor rStarFacC**atm_kappa (= pStarFacK) in common block
25      - implement more accurate p* coordinate slope term (in calc_grad_phi_hyd.F),
26        but not yet activated.
27    o pkg/seaice: fix restart problem for ITD with new ice strength parameterisation:
28      - move computation of opnWtrFrac = 1-AREA to before computing ice strength
29      - this changes the results (but not for any verification experiment, because
30        none tests this), but avoids having an extra field in the restart files
31    o pkg/seaice: remove global variable TICE (not needed)
32      - replace by TICES or local variable where necessary (cost_seaice_test,
33        seaice_diagnostics_state)
34      - move copying TICE to TICES from seaice_check_pickup to seaice_read_pickup
35      - use specific read/write routines for reading and writing individual leves
36        of a multilevel field
37    o pkg/ctrl & model/inc:
38      - move additional anomaly fields of control vars (related to options:
39         ALLOW_KAPGM_CONTROL, ALLOW_KAPREDI_CONTROL and ALLOW_BOTTOMDRAG_CONTROL)
40        from DYNVARS.h into new header file: CTRL_FIELDS.h
41    o pkg/seaice: some small modifications to the ridging code
42      - make fw2ObyRidge a global variable and add the freshwater flux to
43        seaice_growth
44      - pass actual thickness from seaice_prepare_ridging, so that it is
45        computed only in one place and compute it in the same way as in
46        seaice_growth
47      - initialise more fields in seaice_do_ridging that where cause floating
48        point exceptions over land
49    o pkg/seaice: preparations for ridging code and first real ridging code
50      - move most of "PART 1" of S/R seaice_growth into a new and separate
51        S/R seaice_reg_ridge that will both regularize the state variable after
52        advection call the actual ridging routine;
53      - requires to make 5 fields global fields: d_HEFFbyNEG,d_HSNWbyNEG,
54        d_AREAbyRLX,d_HEFFbyRLX,saltFluxAdjust;
55      - remove ridging code from seaice_advdiff
56      - clean up remaining part 1 of seaice_growth in an attempt to make it
57        more readable (this is probably subjective)
58      - call seaice_itd_redist once in the initialisation phase to have the initial
59        conditions in the correct category
60      - finally: add new ridging routine for ITD code
61    
62    checkpoint64v (2014/04/11)
63    o pkg/ecco:
64      - add runtime parameters mdt[start,end]date[1,2]
65      - rename variable "tpmean" as "mdt" and "topexmeanfile" as "mdtdatfile"
66    o pkg/seaice:
67      - make deltaC a global variable, so that it can be used in ridging code
68      - first step towards ridging: introduce new routines that compute
69        ice strength based on ridging parameters
70      - add diagnostic for HSNOWITD
71      - add opnWtrFrac as a global variable (required for ridging scheme)
72    o pkg/salt_plume + pkg/seaice/seaice_growth.F
73      - add SALT_PLUME_IN_LEADS flag to activate pkg/salt_plume only when ice
74        AREA exceeds a threshold (code contributed by I.Fenty in 2011)
75    o verification/hs94.1x64x5:
76      - leave ALLOW_AUTODIFF_TAMC undefined in code_oad/AUTODIFF_OPTIONS.h
77      - do not use ECCO_CPPOPTIONS.h anymore for TAF & OpenAD Adjoint tests.
78    o autodiff:
79      - Start to include explicitly AUTODIFF_OPTIONS.h, COST_OPTIONS.h,
80        and CTRL_OPTIONS.h in src files (to enable to skip the ECCO_CPPOPTIONS.h)
81        For now, only in pkgs used in verification/hs94.1x64x5.
82      - Replace ALLOW_AUTODIFF_TAMC by ALLOW_AUTODIFF (except for tape/storage
83        which are specific to TAF/TAMC).
84      - Replace ALLOW_AUTODIFF_OPENAD by ALLOW_OPENAD:
85        since ALLOW_OPENAD is defined in PACKAGES_CONFIG.h (any time pkg/openad
86        is compiled), this simplifies/reduces which *_OPTIONS.h file to include.
87      - OpenAD: change Makefile to generate the appropriate AD_CONFIG.h when
88        building mitgcmuv_ad (make adAll).
89    o pkg/ecco:
90      - cost_gencost_seaicev4.F:
91         reformulate proxy cost as function of sst and local param SEAICE_freeze
92         change cost names from siv4-[sst,vol] to siv4-[deconc,exconc]
93      - add stop statement if old names siv4-[sst,vol] are used
94      - add snapshots + cost reports for atmospheric longwave
95      - remove factor 0.1 in front of wtau[u,v]
96      - replace never used flag ALLOW_TMI_COST_CONTRIBUTION with
97         ALLOW_TMI_SST_COST_CONTRIBUTION
98    o pkg/atm_phys:
99      - add some diagnostics for Short-wave and for convection S/R.
100    o pkg/seaice/seaice_growth:
101      - fix a bug in the lateral melt parameterization for SEAICE_ITD
102        in seaice_growth; tempFrz needs to be computed inside the i/j-loop
103      - rearrange loop order for better vector code in the same code block
104      - rewrite the floeDiameter formula to have fewer divisions
105      -  (miraculously) none of this changes the results of seaice_itd
106    o pkg/smooth:
107      - move param smooth2Ddiffnbt to pkg/ecco
108    o pkg/salt_plume:
109      - salt_plume_frac.F:
110         clean up local param names
111         reformulate (1-frac) to frac; original 1-frac was based on swfrac code
112    o pkg/rw:
113      - add RS version of S/R READ_MFLDS_LEV.
114    o pkg/streamice:
115      - fix the restart test by writing/reading pickup_streamice files.
116    o pkg/seaice:
117      - refine checks for jfnk-related parameters
118      - comment out if statement with SEAICEuseIMEX parameter as long as there
119        is no IMEX code to avoid confusion and surprises
120    
121    checkpoint64u (2014/03/07)
122    o verification/MLAdjust:
123      - rename secondary test suffix:
124         1.leith  -> A4FlxF  + switch to flux-form & add side-drag
125         0.leithD -> AhFlxF  + switch to flux-form
126         0.smag   -> AhVrDv  (use Vorticity-Div. visc form) + add side-drag
127         0.leith  -> AhStTn  (use Strain-Tension visc form) + add side-drag
128    o pkg/mom_vecinv:
129      - remove unused arguments from S/R MOM_VI_HDISSIP & MOM_HDISSIP (as it used
130        to be before mom_calc_visc.F)
131      - skip the call to MOM_CALC_TENSION & MOM_CALC_STRAIN if not needed.
132      - add 2nd copy of vort3 & strain that knows about lateral BC (free/no slip):
133        this is simpler for the adjoint and for diagnostics.
134    o model/src + pkg/momentum:
135      - add input files for  2-D additional Western and Southern cell-edge wall
136         (e.g., to add "thin-wall" where it is =1).
137      - fix sideDrag option for thin-walls with Non-Lin Free-Surf
138        using 2nd hFacZ that is computed from initial (fix domain) hFac
139      - known limitations of thin wall implementation: not yet coded for sigma
140        coords; not working with CD-scheme neither.
141    o pkg/seaice:
142      - rename recently introduced parameters from (wrong name) AB to
143        BDF (backward difference time discretisation)
144      - retire runtime parameters SEAICEuseAB2, SEAICE_abEps
145    o tools/adjoint_options:
146      - remove setting of "OPENAD=true" (now set by command line "genmake2 -oad")
147    
148    checkpoint64t (2014/02/01)
149    o pkg/ecco
150      - add compile flag ALLOW_GENCOST_TIMEVARY_WEIGHT in ECCO_OPTIONS.h and
151        runtime logical flag gencost_timevaryweight to read daily sea-ice sigma
152      - replace hard-coded record number and period which only work for monthly
153        with read-in runtime param that works for other periods (month,day,year)
154    o pkg/thsice
155      - corrected store directive fixes thsice adjoint gradient checks
156    o genmake2 & testreport:
157      - add genmake2 option "-oad" to generate a Makefile for OpenAD built and
158        in this case, use tools/adjoint_options/adjoint_oad as default AD optfile.
159        Update testreport accordingly. No need to set "export OPENAD=true"
160        in adjoint_options/adjoint_oad anymore (will be removed later).
161    o pkg/shelfice:
162      - put T & S shelfice forcing into model surfaceForcing_T,_S (for now,
163        only if SHELFICEboundaryLayer=F); Change model/src/external_forcing.F
164        so that surface forcing applies to k=kSurf if using pkg/shelfice.
165    o pkg/ctrl, pkg/grdchk, pkg/ecco:
166      - Changes to make GENARR more modular (i.e. invisible if not used)
167    o model/src/temp_integrate.F and salt_integrate.F
168      - re-include store directives that were removed on Dec 27th.
169    o model/src/external_forcing_surf.F
170      - add storage directives for EmPmR and PmEpR to avoid recomputation of
171        seaice_model in the adjoint that is problematic when seaice_model is
172        turned off in the adjoint. The resolved issue dated back to July when
173        EXTERNAL_FORCING_SURF call was moved.
174        Update global_ocean.cs32x15/*/output_adm.seaice_dynmix.txt accordingly.
175    o pkg/exf/exf_check.F
176      - fix a small bug again (originally found by Wentao Liu, now found again)
177      - streamline error output
178    o pkg/streamice and aim_v23:
179      - replace a few "_EXCH_XY_RL (" with "_EXCH_XY_RL(", so that
180        Apple's /usr/bin/cpp knows what to do:
181        Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
182        Target: x86_64-apple-darwin13.0.0
183    
184    checkpoint64s (2014/01/05)
185    o tools/adjoint_options:
186      - switch to fastopt.net TAF server (instead of default fastopt.de) for
187        AD optfiles adjoint_diva & adjoint_f95 (similar to adjoint_default).
188    o model/src:
189      - remove some unnecessary TAF storage directives in forward_step.F and
190        in dynamics.F (note: not always removed by TAF, e.g., double storage
191        of kappaRU,kappaRV in former version of dynamics.F).
192    o model/src & pkg/ptracers:
193      - call directly GAD_IMPLICIT_R & IMPLDIFF + DWNSLP_APPLY from temp_integrate.F
194        salt_integrate.F and ptracers_integrate.F (instead of from thermodynamics.F)
195        and remove ptracers_dwnslp_apply.F & ptracers_implicit.F
196      - call MATRIX_STORE_TENDENCY_EXP for each tracer (in ptracers_integrate.F)
197      - add fZon & fMer as output argument of S/R GAD_CALC_RHS.
198      - update TAF AD-output of experiments global_ocean.90x40x15 (13 for AD-grad).
199    o useSingleCpuInput separates single-CPU input from single-CPU output;
200        for now only implemented for in exf_interp_read.F
201    o verification/advect_xy:
202      - fix missing EXCH call in local version of ini_salt.F and update output.
203    o momentum diagnostics:
204      - fix which deltaT is used in Total-Tendency diagnostics.
205      - fix typo in diagnostics for momentum tendency from AB.
206    o pkg/seaice/seaice_lsr.F: fix an initialisation bug for the
207        SEAICE_VECTORIZE_LSR_ZEBRA option that lead to NaNs on a NEC-SX8
208    
209    checkpoint64r (2013/12/08)
210    o verification/*/results:
211      - Update reference output of experiments that were passing with just 13 digits
212         (make it easier to detect future changes in results)
213    o model/src & pkg/ptracers:
214      - move calls to GAD_ADVECTION (Multi-Dim advection) from thermodynamics.F to
215        inside temp_integrate.F and salt_integrate.F and from ptracers_advection.F
216        to inside ptracers_integrate.F ; remove ptracers_advection.F
217    o coupling interface pkgs:
218        [atm_compon_interf, ocn_compon_interf & atm_ocn_coupler]
219      - change the config check to test the agreement of Ocean Depth
220        with ATM land/sea mask (instead of ATM orography);
221      - send to coupler the number of coupler time-steps to do for this run:
222        this allows to check for consistency and don't need anymore to be
223        specified in parameter file "data";
224      in coupler:
225      - check consistency of RunOff map versus Ocean Depth and ATM land/sea mask.
226      - improve report to log-file of config setting (pass log-file unit to few S/R)
227    o pkg/compon_communic:
228      - add coupling send/receive for non-tiled integer vector;
229      - add S/R to check and stop if any proc has an error (similar to
230        eesupp/src/stop_if_error.F but single thread and across Comm_World).
231    o pkg/exch2:
232      - in exch2*_get_rx[1,2]: use new list "W2_tileIndex" to replace search
233        through list of all tiles my proc owns.
234    o model/src:
235      - AUTODIFF only: in calc_adv_flow.F, recompute rTransKp (instead of copying
236        from rTrans) to simplify dependencies (no need to store rTrans anymore in
237        calling S/R); this affects AD results at machine truncation level:
238        update AD-output (TAF) of experiments: 1D_ocean_ice_column,
239        bottom_ctrl_5x5 & obcs_ctrl (12 digits for AD grad, same FWD grad).
240    o tools/build_options:
241      - simplify Warnings options (-ieee & -devel cases) in linux_amd64_gfortran
242    o coupling interface pkgs:
243        [compon_communic, atm_compon_interf & ocn_compon_interf]
244      - move declaration of local array "ibuf" out of header file "CPLR_SIG.h"
245        to each S/R that needs it; remove un-used variables.
246      - change component tile registration (cpl_register.F in both compon_interf
247        and mitcomponent_tile_register.F) to pass the full list of tiles
248        information (including bi,bj) in 1 vector (instead of in a bi,bj matrix).
249      - with pkg/exch2: adopt the same convention used for I/O to define mapping
250        towards coupler global array (unless W2_useE2ioLayOut=F):
251         a) can now use different tiling between atm & ocn comp.
252         b) no needs to modify the run-Off map when changing tiling (was needed
253            even if using the same tiling between atm & ocn).
254         c) will allow to run with blank-tiles in 1 component (e.g., for ocean
255            full land tiles); not yet tested.
256      - check for valid mapping from comp. tile to coupler global array
257      - improve report of tile registration results to log file.
258    o pkg/exch2:
259      - in eesupp/src/eeboot.F: move call to W2_EEBOOT before Coupler
260        tile-registration (CPL_REGISTER);
261      - activate (un-comment) definition and setting of "W2_tileIndex" list to
262        store the local bi,bj indices of each tile;
263      - also print bi,bj in local report to log file;
264      - fix pkg/debug/debug_cs_corner_uv.F for the case nSy > 1 (left from
265        Jun 2009 modif of pkg/exch2).
266    o testing on baudelaire:
267      - run 2 tests at a time: no significant slow down (since enough cpu) and
268        get the full set of test done earlier
269      - switch the ifort test to "-devel" ; run the OpenAD test everyday.
270    o model/src/thermodynamics.F and routines called from it:
271      - pkg/gmredi: gmredi_residual_flow.F (replacing gmredi_calc_uvflow.F &
272        gmredi_calc_wflow.F) to update eulerian velocity (input) into residual
273        velocity (outp) by adding bolus velocity.
274      - model/src: calc_adv_flow.F (replacing calc_common_factors.F) to compute
275        mass transport from velocity + lateral grid cell area
276      - rename calc_gt.F to temp_integrate.F (includes call to TIMESTEP_TRACER)
277      - rename calc_gs.F to salt_integrate.F (includes call to TIMESTEP_TRACER)
278     in thermodynamics.F
279      - remove k from thermodynamics.F and move it to temp_integrate.F
280        salt_integrate.F and ptracers_integrate.F (now done inside the tracer
281        loop).
282      - compute locally (in thermodynamics.F) 3-D velocity field that is used to
283        advect tracers; pass it as argument to GAD_ADVECTION, GAD_SOM_ADVECT,
284        PTRACERS_ADVECTION, TEMP_INTEGRATE, SALT_INTEGRATE, PTRACERS_INTEGRATE,
285        GAD_IMPLICIT_R and PTRACERS_IMPLICIT
286      - update AD-output (TAF & OAD) of experiments: 1D_ocean_ice_column,
287        global_ocean.90x40x15, tutorial_global_oce_biogeo and
288        tutorial_tracer_adjsens (+ TLM output).
289    o tools/OAD_support and (verification/*/) code_oad:
290      - OAD_support/cb2mGetModules.csh: add PACKAGES_CONFIG.h in header file to
291        module conversion ; remove unneeded CPP_EEOPTIONS.h.
292      - code_oad/CPP_OPTIONS.h: remove PACKAGES_CONFIG.h and use a more standard
293        version (closer to model/inc/CPP_OPTIONS.h).
294    o model/src:
295      - remove parameter "useOldFreezing" from PARAMS.h and push it to the
296        retired list of parameters (routine FREEZE has been replace by surface
297        freezing (10.yrs ago) and by pkg/frazil (interior freezing).
298    o pkg/gmredi:
299      - add option (GM_CALC_TRANSP_FROM_VEL) to compute transport directly from
300        velocity (same scheme but affects machine truncation) for GM_AdvForm.
301      - update output of FWD experiments: front_relax.bvp,
302        global_ocean.90x40x15.dwnslp, global_ocean.cs32x15 and ideal_2D_oce.
303    
304    checkpoint64q (2013/11/17)
305    o verification:
306      - generate new output on baudelaire (gfortran, -ieee) for OpenAD experiments
307        tutorial_global_oce_biogeo and global_ocean.90x40x15.
308      - generate new output (growth & melt) for seaice_itd experiment after
309        updating the input pickup_seaice files (previously wrong).
310    o pkg/cost:
311      - define a "final cost function" for each tile, and use GLOBAL_SUM_TILE_RL
312        (instead of _GLOBAL_SUM_RL) to get the final cost from all procs & threads:
313        o this fixes global-sum value if multi-threads (since GLOBAL_SUM_RL
314          cannot be applied to var in common block).
315        o allows to get results independent of tile-per-proc setting (if using
316          slower GLOBAL_SUM_SEND_RECV option).
317      - update accordingly: seaice_cost_final.F, shelfice_cost_final.F,
318        thsice_cost_final.F and ecco_cost_final.F (this one affects lab_sea
319        forward gradients: update output).
320      - update */code_oad/externalDummies.F by adding dummy GLOBAL_SUM_TILE_RL
321        S/R and, for most exp., also comment out GLOBAL_SUM_R8.
322    o pkg/mom_common:
323      - move to pkg/mom_common and model/src (previously in tutorial_deep_convection
324        code) 2nd version of isotropic 3-D Smagorinsky code interface: strain and
325        viscosity are locally declared in dynmics.F and pass as argument to CALC_GW;
326        ensure that all field value that are used are set.
327    o tutorial_deep_convection (smag3d):
328      - add missing scaling in mom_calc_smag_3d.F;
329      - set smag3D_coeff in input.smag3d such that results do not change.
330    o pkg/dic:
331      - change dic_cost.F to compute cost on each tile first and then apply
332        GLOBAL_SUM_TILE_RL: this affects forward gradient of AD experiments
333        tutorial_dic_adjoffline & tutorial_global_oce_biogeo; update output.
334      - remove kLev argument and use GLOBAL_SUM_TILE_RL in tracer_meanarea.
335    o eesupp/src & pkg/mdsio:
336      - remove gather/scatter_vector.F (from eesupp) and mdsio_read/writevector.F
337        (from pkg/mdsio) since they are no longer used for tape IO.
338      - move simple C subroutine "setdir.c" from pkg/compon_communic to eesupp/src
339        (+ keep a copy in pkg/atm_ocn_coupler).
340    o verification/isomip:
341      - split domain in 8 squared tiles (instead of just 2) for FWD, AD & OAD tests.
342    o tools/build_options:
343      - optfile linux_amd64_ifort11, fast (no ieee) case:
344        to get a working restart for all experiments, add "-fp-model source"
345        to FOPTIM (also remove "-opt-streaming-stores auto" <- this is the default).
346    
347    checkpoint64p (2013/10/20)
348    o pkg/autodiff:
349      - adread_adwrite.F: when type and length do not match ALLOW_AUTODIFF_WHTAPEIO
350        criteria, return to simple (default) tape IO format.
351    o pkg/mdsio (+ eesupp/src):
352      - rewrite/simplify tape-IO S/R (new S/R MDS_READ/WRITE_TAPE replace
353        previous MDSREAD/WRITEVECTOR) with 2 array argument from each type (R4/R8);
354      - fix globalFile and singleCpuIO options using simpler global mapping.
355      - new pairs of scatter/gather vector S/R (one for each type, generated from
356        template) corresponding to simpler global mapping.
357      - adread_write.F: switch to new S/R (but leave old calls commented) and write
358        to globalFile when parameter globalFiles is set to True.
359      - switch on useSingleCpuIO in AD experiments: global_ocean.90x40x15 & isomip.
360    o pkg/autodiff:
361      - adread_adwrite.F: add a hack for RS arrays (when RS=real*4);
362        with ALLOW_AUTODIFF_WHTAPEIO defined, since corresponding (real*4) is
363        missing, just add a STOP if array type do not match.
364    o pkg/exf:
365      - to allow to use seaice-fraction from pkg/exf in other pkgs than pkg/seaice:
366         rename CPP option EXF_ALLOW_SEAICE_RELAX to EXF_SEAICE_FRACTION
367         and rename array obsSIce to exf_iceFraction.
368    o tutorial_deep_convection:
369      - add 1rst version of isotropic 3-D Smagorinsky code (from Louis-Philippe),
370        for now all in this exp. code dir.
371      - add secondary test using Smag-3D viscosity (keep very low backgroud visc for
372        testing) and flux-limter advection scheme for Temp. (no explicit diffusion).
373    o eesupp/src:
374      - added SINGLE_DISK_IO option because reading of parameter files on
375        very large number of processors did not work with existing set-up
376    
377    checkpoint64o (2013/09/25)
378    o pkg/atm_phys & atm_compon_interf:
379      - allows for coupling of gray-atmosphere (atm_phys) with ocean.
380    o tools/build_options:
381      - switch from "-fPIC" to "-mcmodel=medium" in optfiles: linux_amd64_gfortran
382        & linux_amd64_ifort11 and in linux_amd64_g77 & linux_amd64_open64 also
383        remove CPP setting (was identical to genmake2 default).
384    o pkg/gmredi & model/src: Some updating and work done on the residual model.
385      - created new file model/src/calc_eddy_stress.F to calculate the eddy stress.
386      - fixed up the calculation of the eddy stress and how it is added to the
387        external forcing via taueddy_external_forcing.F
388      - at the moment, it is very experimental and only works with the variable eddy
389        diffusivity calculated in gmredi_k3d.F
390    o pkg/seaice/seaice_check.F: add a check to catch the case of specifying
391        lw/swfluxfile instead of lw/swdownfile in data.exf together with pkg/seaice
392    o testreport (& tools/do_tst_2+2):
393      - for MPI test, set default COMMAND to 'mpirun -v -np TR_NPROC ./{executable}'
394    o tools/build_options: linux_amd64_gfortran & linux_amd64_ifort11:
395      - remove CPP='cpp -traditional -P' (this is genmake2 default)
396      - add switch (for big setups) to use 'medium' memory-model (but leave it
397        commented out for now). Note: needed with FC 19 to compile big setups.
398    o pkg/atm_compon_interf:
399      - regroup per field origin (model & pkgs) the coupling storage routines
400         (which accumalate in time each coupling field)
401      - move bi,bj loops inside atm_store_my_data.F and store also wind-stress;
402        update accordingly + simplify aim_do_physics.F
403    
404    checkpoint64n (2013/08/26)
405    o pkg/bbl:
406      - update formulation to reduce dispersion of tracer properties in bbl
407      - replaced horizontal and vertical transport parameters with velocities
408      - changes results for verification/global_with_exf.yearly
409    o verification/halfpipe_streamice:
410      - change to matrix construction; update both Fwd & AD output.
411    o verification/tutorial_tracer_adjsens:
412      - OpenAD test: switch to vector-invariant momentum since fluxform with
413        rStar causes problems with OpenAD; update output.
414    o tools:
415      - genmake2: define a common prefix for all temp-file names ; move them
416        to local /tmp disk (but would be easy to move them back);
417      - xmakedepend: apply the same switch for temp-files.
418    o pkg/offline:
419      - changes for use with rStar (NLFS): assume that we continue to provide
420        UVELMASS/hFacW_ini & VVELMASS/hFacS_ini (hFacWi,S_ini as written in grid
421        output files) and apply r* scaling at each time-step (function of the time
422        varying Eta field); use normal pickup files (needed for restart with NLFS).
423    o adjoint with OpenAD:
424      - move OpenAD-specific files from verification/OpenAD/code_oad_all to a new
425        package openad.  This package has to be compiled for all runs with OpenAD
426        instead of specifying code_oad_all as a modification directory.
427      - link the fortran templates from tools/OAD_support to the build directory
428        for preprocessing to avoid conflicts between different setups compiled
429        simultaneously and simplify cleanup.
430    o pkg/exf:
431      - in exf_getforcing.F: comment out most of the EXCH calls (fields used by
432        main model or other pkgs are exchanged in EXF_MAPFIELDS).
433    o model/src:
434      - do_stagger_fields_exchanges.F: skip EXCH calls when using pkg/offline
435        (similar to do_fields_blocking_exchanges.F).
436    o tools/genmake2:
437      - remove TAF output src code just before calling staf (when not doing a fresh
438        built, will stop if things go wrong with staf).
439      - fix target "adobj" (left from TAF version-2 transition)
440    o pkg/diagnostics:
441      - add a parameter to track the status of pkg/diagnostics activation;
442        this replace/extend the use of logical param "settingDiags" (to check
443        when adding diag to the list) to also check any DIAGNOSTICS_[]FILL* call.
444        New S/R to print error message and stop when pkgStatus is not right.
445      - to try: add a warning when "data.diagnostics" exist but useDiagnostics=F.
446    
447    checkpoint64m (2013/08/13)
448    o model/inc:
449      - move FCORI_MACROS.h from PARAMS(_MACROS).h to GRID_MACROS.h (left from
450        8 yrs ago modif when Coriolis arrays were moved from PARAMS.h to GRID.h)
451    o pkg/kpp & aim_v23:
452      - only call DIAGNOSTICS_FILL when useDiagnostics=TRUE.
453    o pkg/seaice:
454      - restore (last time on 2011/12/24) ability to compile pkg/seaice with
455        undefined pkg/exf ALLOW_ATM_TEMP or ALLOW_RUNOFF CPP-options.
456      - only call DIAGNOSTICS_FILL when useDiagnostics=TRUE.
457    o eesupp/src:
458      - fix check for overlap-size argument (myOLn.GT.MAX_OLY_EXCH)
459        in exch1_rx[_ad].template (thanks to Francois Lefeuvre report).
460    o switch to TAF version-2:
461      - add flow directives to "freeze" naming convention for ad-routines that
462        are used in I/O routines of adjoint state and associated common blocks
463        that are used in adcommon.h (backward compatible with version-1)
464      - update all ad-optfiles (in tools/adjoint_options + few local to some
465        verification exp) to switch to latest TAF version (currently 2.5.5);
466        merge "*_mpi" adoptfiles into the corresponding non-mpi (but commented
467        out except for diva).
468      - the major change with TAF version-2 is that both the differentiated
469        routines and the forward routines (new) are returned as part of the TAF
470        output source code. Update genmake2 accordingly.
471      - new output for AD experiment tutorial_global_oce_biogeo (better AD gradient
472        with version-2 when compared to TLM or FWD gradient); other experiments
473        output show minor changes (machine truncation level); update the few AD &
474        TLM output with 12 matching digits only (some prior to version-2 switch).
475    
476    checkpoint64l (2013/08/05)
477    o model/src:
478      - in dynamics.F, skip the call to CALC_VISCOSITY if momViscosity=F
479      - main_do_loop.F: no longer includes additional (AUTODIFF) header files
480        when using TAF but only if using OpenAD.
481    o pkg/mom_common+fluxform+vecinv:
482      - always set horiz. viscosity arrays to background value before calling
483        MOM_CALC_VISC (in MOM_FLUXFORM & MOM_VECINV) and call S/R MOM_CALC_VISC
484        only when using variable horiz. viscosity (useVariableVisc=T);
485      - simplify mom_vecinv.F (only 1 block for momViscosity).
486    o pkg/mom_common: variable horiz. viscosity in NH code
487      - move horiz-viscosity 3-D arrays viscAh_W & viscA4_W (used in calc_gw.F)
488        from model/inc/NH_VARS.h to pkg/mom_common/MOM_VISC.h
489      - store in common block (in MOM_VISC.h) logical parameters: useHarmonicVisc,
490        useBiharmonicVisc & useVariableVisc.
491      - fix old bug (already in 1rst implementation of variable horizontal viscosity
492        in calc_gw.F, version 1.27, 2006/06/20):
493        horizontal bi-harmonic viscosity in gW was missing when wiscA4W=0
494        even if variable bi-harmonic viscosity (e.g., viscA4Grid) was non-zero.
495      - change background horiz viscosity in vertical momentum (gW) to always be
496        viscAhW,viscA4W (instead of switching to viscAhD, viscA4D when using
497        any type of variable viscosity, e.g., viscAh/4Grid)
498      - change default value of viscAhW,viscA4W to viscAhD,viscA4D (instead of
499        viscAh,viscA4) which default to viscAh,viscA4 :  this avoid missing
500        horiz. viscosity in W eq when just setting viscAhD/Z,viscA4D/Z (since
501        default viscAh,viscA4 is zero).
502    o model/src:
503      - extend length of drC & recip_drC from Nr to Nr+1.
504    o Divided Adjoint (DIVA) with MPI:
505      - genmake2: do not create local ./mpi_headers dir when no file to copy into.
506      - remove option ALLOW_DIVIDED_ADJOINT_MPI (replaced by ALLOW_DIVIDED_ADJOINT
507        and ALLOW_USE_MPI) from model/src code and from ECCO_CPPOPTIONS.h.
508    
509    checkpoint64k (2013/07/23)
510    o tools/OAD_support:
511      - avoid the need for file "oadtempflile" in insertTemplateDir.bash
512        and remove it from genmake2.
513    o tools/build_options:
514      - remove MPI_HEADER_FILES_INC setting (no longer used) and comment out
515        MPI_HEADER_FILES list (let genmake2 find the missing headers)
516    o verification/halfpipe_streamice:
517      - change to driving stress formulation; update both Fwd & AD output.
518    o tools/genmake2 and Divided Adjoint with MPI:
519      - remove default setting of MPIINCLUDEDIR from $MPIHOME (always been broken);
520      - only create local ./mpi_headers dir if using MPI and MPIINCLUDEDIR is set;
521      - add new variable (LOCAL_MPI_HEADERS, replace MPI_HEADER_FILES_INC) in
522        Makefile, which is set by genmake2, and check which mpi-headers are needed.
523        Note: need to update adjoint_options/adjoint_diva_mpi accordingly.
524      - update target "CLEAN" (to also remove ./mpi_headers/ dir).
525    o testreport:
526      - changes for Divided Adjoint Run: when file "run_ADM_DIVA" is present,
527        perform additional runs (number of additional runs is "add_DIVA_runs" taken
528        from file run_ADM_DIVA ; should match "nchklev_3" in file "code_ad/tamc.h").
529    o verification/lab_sea (AD test):
530      - change to test Divided Adjoint Run in this set-up (both standard AD test
531        and 2 secondary AD test: noseaice + noseaicedyn); drop the evp AD test.
532    o pkg atm_ & ocn_compon_interf:
533      - remove cpl_earlyExpImpCall=F option (was mainly a hack added for the old
534        staggerTimeStep implementation) and disable (retired) corresponding
535        parameter.
536    o pkg/offline:
537      - comment out unused field-array: ICEM, ConvectCount, hflx[01], icem[01];
538      - add S/R OFFLINE_CHECK to print offline parameter summary
539        and stop if loading a file that is not used;
540      - enable to calculate GMRedi tensor, KPP mixing and convective index
541        when the corresponding file(s) is/are not specified (but pkg is used).
542      - comment out resetting of monitorFreq (to endTime) since it still useful
543        for monitoring CFL numbers and checking offline fields.
544    o OpenAD:
545      - do not define OAD_DEBUG (in tools/adjoint_options/adjoint_oad) to get
546        smaller standard output) and generate new (smaller) output (on baudelaire
547        using gfortran with -ieee) for exp. tutorial_tracer_adjsens
548    o model/src:
549      - call EXTERNAL_FORCING_SURF outside bi,bj loops (in do_oceanic_phys.F),
550        (where external_forcing_adjust was called) and change list of arguments;
551      - merge external_forcing_adjust.F into external_forcing_surf.F
552      - put surface relaxation of SST & SSS in new S/R (forcing_surf_relax.F)
553        which also contains balancing surface relaxation (ALLOW_BALANCE_RELAX,
554        previously in file "balance_relax.F", now removed); remove corresponding
555        arrays in FFIELDS.h.
556      - EXTERNAL_FORCING_SURF is now called when using pkg/offline; implement
557        a hack for getting back surfaceForcingS (loaded from file) when using
558        ALLOW_OLD_VIRTUALFLUX (pkg/dic, in DIC_OPTIONS.h) in offline set-up.
559      - update output of AD test experiment global_ocean.cs32x15.seaice_dynmix
560        (was getting only 11 digits for AD-grad, due to different truncation
561         error in AD code).
562    
563    checkpoint64j (2013/07/04)
564    o pkg/offline:
565      - to enable the use of other features with pkg offline (e.g., obcs),
566        also call S/R DO_OCEANIC_PHYS in offline run - more modifs to come.
567      - comment out "allowFreezing" (now active) in 2 offline testing exp.
568    o pkg/exf ALLOW_RUNOFTEMP
569      - fix sign and make compatible with temp_EvPrRn .NE. UNSET_RL
570      - ahdded RUNOFTEMP test to verification/global_ocean.cs32x15/input.seaice
571      - changes verification/global_ocean.cs32x15/results/output.seaice.txt
572    o pkg/atm_phys:
573      - allows to add some damping on uVel,vVel (strength only function of k).
574    o verification, ad-tests:
575      - reduce length of the simulation for AD test: global_ocean.cs32x15.seaice,
576        global_ocean_ebm and offline_exf_seaice.thsice.
577    o verification/halfpipe_streamice:
578      - found a bug in s/r pkg/streamice/streamice_advect_thickness which caused
579        flux input boundary conditions to be ignored; a fix for this bug changed
580        verification results for forward test.
581      - add adjoint test.
582    o pkg/ptracers:
583      - allow to restart without SOM pickup (resetting SOM to zero).
584    o pkg/gmredi:
585      - New parameterisation for the calculation of K and (GM_PsiX,GM_PsiY) added.
586      - It uses mixing length theory and suppression by steering level effects to
587        calculate a diffusivity used in the Redi tensor (see Bates et al., submitted
588        to JPO, for more details).
589      - It also uses the diffusivity to calculate an eddy induced streamfunction
590        based on a PV closure (rather than a buoyancy closure as in GM).
591      - New files added to pkg/gmredi:
592        gmredi_k3d.F calculates the diffusivity for the Redi tensor and the eddy
593          induced overturning streamfunction (called from gmredi_calc_tensor)
594        gmredi_calc_eigs.F calculates the eigenvalues and eigenvectors required
595          for use in gmredi_k3d
596        gmredi_calc_urms.F calculates the the rms eddy velocity used to calculate
597          the eddy diffusivity
598    
599    checkpoint64i (2013/06/18)
600    o pkg/cheapaml:
601      - take src files from MITgcm_contrib/verification_other/offline_cheapaml/code
602        that enable the use of seaice (pkg/thsice thermo & pkg/seaice dynamics)
603        with pkg/cheapaml.
604    o utils/python: add subpackage for cubed sphere function, first example is
605        simple cs.pcol to plot 2D fields on a map
606    o pkg/streamice:
607      - This is a new package in MITgcm, which solves dynamic equations for ice
608         sheets and ice streams
609      - At the moment it is independent of atmosphere/ocean dynamics, or any
610        other physical packages in MITgcm, even ShelfIce (although it is anticipat-
611        ed that this will change)
612      - There is a new verification exercise that tests it, halfpipe_streamice,
613        evolves a 40x80 km ice stream/ice shelf (at coarse resolution) in a
614        rectangular embayment
615      - halfpipe_streamice is forward-only for now, will have TAF test soon
616      - for questions, email dgoldber@mit.edu
617    o pkg/thsice:
618      - fix filling of snow-precip diagnostic (SIsnwPrc) (left from the removing
619        of snowPrc from common bloc, on May 2nd, thsice_step_fwd.F revision 1.40);
620      - remove diagnostics 'SI_FrcFx' ( now identical to 'SI_Fract' with new
621         call sequence: ice-Thermo(thsice),ice-Dyn,ice-Advect );
622      - allow precip from pkg/cheapaml to make snow over seaice.
623    o pkg/cfc:
624      - move in separated header file (CFC_ATMOS.h) time-serie arrays of Atmos CFC
625      - remove atmos CFC 2-D arrays from common bloc (now local variables)
626      - change some hard-coded constant to run time parameter for reading and
627        and interpolating atmospheric CFC ; keep same default as previously.
628      - more flexible reading of Atmos CFC (number of records no longer hard-coded)
629      - put arguments in standard order: myTime, myIter, myThid
630      - use standard S/R GET_PERIODIC_INTERVAL for time interpolation of
631        atmospheric CFC ; fix for the case myIter < PTRACERS_iter0.
632      - fix calculation of surf tendencys for partial-cell and/or Non-Lin Free-Surf
633      - new routine to print summary of CFC params and check for consistency.
634    o pkg/seaice: add uice/vice to the parameter list of s/r seaice_advdiff,
635      similar to thsice_advdiff.
636      Note that for the B-grid case the routine parameters uc/vc are overwritten.
637    o pkg/cfc:
638      - change time interpolation for atmospheric CFC-11 (now same as for CFC-12);
639        update output (CFC-11) of experiment cfc_example and tutorial_cfc_offline.
640      - fix interpolation of atmphspheric CFC between Sorthern and Northern
641        hemisphere value.
642    o pkg/seaice:
643      - allow to use seaice dynamics without pkg/exf (e.g., using pkg/cheapaml)
644    o pkg/seaice: add Adams-Bashforth2 time discretization for ice dynamics;
645                  so far only for JFNK-solver, turn on with SEAICEuseAB2 = .TRUE.
646      - requires an additional time level that is stored in the pickup
647      - you can start with AB2 from a pickup without this time level with
648        pickupStrictlyMatch = .false.
649    
650    checkpoint64h (2013/05/26)
651    o pkg/cheapaml:
652      - replace one ()**.5 with SQRT + use temp var "cdu = tau/Du" (coare3_flux);
653        affect machine truncation (but exp cheapAML_box still pass with 13 digits).
654      - consistent treatment of uWind,vWind location: assume everywhere in
655        pkg/cheapaml that they are on C-grid (@ uVel,vVel location)
656        (Note: was already the case for Tair,Qair advection);
657        add option (INCONSISTENT_WIND_LOCATION) to recover old results.
658      - compute diabatic forcing only in the interior (excluding overlap regions)
659      - fill in array "Qsw" (for short-wave heating);
660      - add diagnostic for precip ; fill-in diagnostics for cheapAML state vars
661        before any update (consistent with MITgcm state var diagnostics);
662      - cheapaml_fields_load.F & cheapaml_init_varia.F : only fill outer edges if
663        non periodic ; + adjusted for uWind,vWind (C-grid).
664    o pkg/seaice:
665      - remove dependence of pkg/seaice versus pkg/exf (file: pkg/pkg_depend) and
666        add explicitly pkg/exf in experiments that currently use pkg/seaice.
667      - allows to compile pkg/seaice without pkg/exf.
668    o tools/OAD_support:
669      - use a local copy (ourRWCPinBd) to ensure index ourRWCP stays within bounds
670        of array "ourStepOf" in function rvNextAction (revolve.F90).
671    o pkg/aim_compon_interf renamed to pkg/atm_compon_interf
672      - change pkg name (to be used with other atmospheric physics pkg)
673        but by-pass CVS when making the new pkg so that we keep the CVS history.
674    o pkg/offline:
675      - call OFFLINE_FIELDS_LOAD from pkg/offline/offline_init_varia.F
676        (previously called from pkg/dic_surfforcing_init.F)
677    o model/src:
678      - re-order sequence of calls within packages_init_variables.F, using
679        standard order, except for:
680         DIAGNOSTICS_INIT_VARIA and OFFLINE_INIT_VARIA (called @ the top),
681         CTRL_MAP_INI and OBCS_INIT_VARIABLES (called @ the bottom)
682    o new pkg: atm_phys
683      - add entry point and source code (previously in contrib
684          verification_other/atm_gray/code_gray/) for new pkg "atm_phys"
685        (atmospheric physics pkg from P. O'Gorman and T. Schneider, JCl, 2008).
686      - re-order sequence of calls within packages_readparms.F,
687         packages_init_fixed.F and packages_write_pickup.F
688        (but skip packages_init_variables.F because of TAF issues).
689      - update contrib/*/atm_gray/ experiment.
690    o pkg/seaice (ITD code):
691      - simplify and fix the writing of pickup-files for ITD case
692    o pkg/seaice (ITD code):
693      - introduce floe size dependent lateral melt for ITD case;
694      - cleaning (avoid division by zero, change to f77 syntax, remove tabs)
695      - update seaice_itd experiment main output.
696    o pkg/thsice:
697      - remove snowPrc from common block THSICE_FLUX, in THSICE_VARS.h and
698        declared it locally (without bi,bj) in thsice_main.F & aim_do_physics.F;
699        changed accordingly pkg/atm2d.
700    
701    checkpoint64g (2013/05/01)
702    o pkg/exf ALLOW_RUNOFTEMP
703      - if defined,  river and glacier runoff temperature can be read-in from
704        runoftempfile; runoftempfile needs to have same format as runofffile
705    o pkg/thsice (& pkg/bulk_force):
706      - In case Energy-Reference-Level (ERL) is used (temp_EvPrRn=0), account
707        for energy content of Precip + RunOff & Evap (like with pkg/exf).
708      - change computation domain to always be the interior (without overlap).
709      - fix bug (wrong overlap) when using EXF and stressReduction > 0.
710    o verification/tutorial_global_oce_biogeo:
711      - add preliminary OpenAD setup (still has problems)
712    o pkg/seaice:
713      - turn some parameters for choosing the convergence criterion of
714        the inexact Newton method (JFNK) into runtime parameters for convenience
715      - clean up seaice_calc_viscosities.F: remove/retire two options for
716        SEAICetaZmethod (1,2), introduce area weighting for method 3; this changes
717        the results of lab_sea/input because a division has been replaced by
718        a multiplication with the reciprocal (sumNorm)
719      - modify offline_exf_seaice/input.dyn_jfnk/data.seaice to improve
720        convergence of solver (changes results, of course), and to test some
721        new features
722    o model/src:
723      - remove unused (since Aug 2006) S/R SET_WRITE_GLOBAL_PICKUP and its call.
724      - remove unused forcing field "dQdT" and associated parameter "dQdTFile".
725      - move forcing adjustment (balancing surface forcing) in specific S/R
726        where might also be applied exchanges (if needed) to forcing arrays.
727    o pkg/shelfice:
728      - allow to specify the Ice-Shelf mass per unit area (instead of
729        shelficeLoadAnomaly) and do the conversion from one to the other
730      - move loading from file of shelficeLoadAnomaly from SHELFICE_INIT_VARIA
731        to SHELFICE_INIT_FIXED: (a) avoid some TAF recompution issues and
732        (b) will be loaded in time (before calling INI_PRESSURE) in case it is
733        needed in phi0surf for initial pressure calculation when useDynP_inEos_Zc
734      - update isomip experiment forward output (get machine truncation error
735        from conversion shelficeLoadAnomaly -> shelficeMass -> shelficeLoadAnomaly)
736    o verification/offline_exf_seaice:
737      revise data.seaice in input.thermo and input_ad and update results accordingly
738        HO = 0.2, SEAICE_areaLossFormula = 2,
739        SEAICE_growMeltByConv = .TRUE.,
740        SEAICE_doOpenWaterMelt = .TRUE.,
741      Improve consistency with input.thsice and fix the spurious 500m ice corners
742    o verification/global_ocean.cs32x15:
743      - set Energy Reference Level to liq. water @ 0 degC: temp_EvPrRn=0.,
744        in icedyn (thsice+seaice-dyn) test and update output.
745    o verification/offline_exf_seaice:
746      - adjust list of tested variables (with testreport) and update
747        standard test output with better slection of monitored fields.
748    o pkg/cd_code:
749      - swtich off Adams-Bashforth on the 1rst iteration. Update output of
750        experiment lab_sea.hb87
751  o tools/genmake2:  o tools/genmake2:
752    - change default makedepend from the system default to tools/xmakedepend:    - change default makedepend from the system default to tools/xmakedepend:
753      When no makedepend is specified, select tools/xmakedepend it the test pass,      When no makedepend is specified, select tools/xmakedepend it the test pass,

Legend:
Removed from v.1.1851  
changed lines
  Added in v.1.1989

  ViewVC Help
Powered by ViewVC 1.1.22