/[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.7 by adcroft, Mon Jun 22 16:24:50 1998 UTC revision 1.192 by dimitri, Wed Oct 22 16:35:47 2003 UTC
# Line 3  $Header$ Line 3  $Header$
3      Notes on tags used in MITgcmUV      Notes on tags used in MITgcmUV
4      ==============================      ==============================
5    
6    untagged
7    o added "#undef ALLOW_USE_MPI" support to eesupp/src/gather_2d.F
8    
9    checkpoint51m_post
10    o incorporating changes to get TAMC/TAF working in genmake2
11      - added new TAMC/TAF targets to the Makefile
12      - various cleanups related to package handling
13      - these changes should have no impact on the forward model
14    
15    checkpoint51l_post
16    o changes to pkg/cal and pkg/exf that allow and speed-up long integrations
17     - faster algorithm for cal_addtime.F
18     - higher precision arithmetic, where needed
19     - pkg/exf *startdate variables changed from calendar date to
20       model integration time
21    
22    checkpoint51l_pre
23    o add salt flux to forcing fields (used when salty sea-ice forms or melts)
24    o enable to apply restoring on S & T only in a latitude band.
25    o update output (external_forcing_surf modif. change truncation errors)
26       global_ocean.cs32x15, global_ocean_pressure, lab_sea, natl_box
27    
28    checkpoint51k_post
29    o change default to: useNHMTerms=.FALSE.
30     - new output.txt for atmos. exp (NHMTerms were wrong but now turned off):
31       adjustment.128x64x1, aim.5l_Eq_Ch, aim.5l_LatLon, hs94.128x64x5, hs94.1x64x5
32     - new output.txt for idealized oceanic exp (NHMTerms are now turned off):
33        exp1, ideal_2D_oce
34     - change data file of oceanic exp (leave the results unchanged for now)
35       exp2, global_ocean[90x40x15,pressure,with_exf], lab_sea, natl_box
36    o set gravitySign automatically according to the vertical coordinate used
37      (and change sign: back to "logical" value: +1 when R increases downward)
38    o added an include barrier to the default CPP_OPTIONS.h and
39      removed the #include "PACKAGES_CONFIG.h" from it
40    o fix a bug in mom_fluxform (from chk51j_post)
41    
42    checkpoint51j_post
43    o Added some AD-related initialisations in mom_vecinv/ mom_fluxform/
44    o adjusted some flow directives (dynamics, thermodynamics)
45    o added cubed-sphere case to test cost function
46    o heckpoint_lev?_directives.h now include
47      pkg-specific directives, whenever those are enabled.
48    o Moving pkg-specific flow directives to corresponding pkg
49      Moving pkg-specific differentiation list to corresponding pkg
50      Moving pkg-specific checkpoint-lev storing to corresponding pkg
51      ---> conventions are
52           - pkg_ad.flow
53           - pkg_ad_diff.list
54           - pkg_ad_check_lev?_dir.h
55    
56    checkpoint51i_post
57    o merge of the branch-genmake2
58      - knowingly breaks the older genmake
59      - automatic generation of all ALLOW_${PKG_NAME} defines
60      - new testreport supersedes older testscript
61    o large number of package inclusion and header cleanups
62    checkpoint51i_pre
63    
64    o new output for adjoin of global ocean vector invariant
65    o fix for checkpoint of thermodynamic seaice and bulk_force
66    o Steph gchem various cleanups
67    
68    checkpoint 51h_pre
69    o fixed some single quotes
70    o modify gchem pkg to be more versatile
71    o modifications to clean up dic pkg
72    o add pkg/cfc
73    
74    checkpoint51g_post
75    o provide links for ARPACK and ADM*TLM
76    o start removing verification/vero/
77    o update AD-related stuff
78      (in particular some IF-statements in model/src/ routines)
79    o adding to verification/global_ocean.90x40x15/ adjoint of
80      vector invariant setup
81    
82    checkpoint51f_post
83    o update advect_xz/output.txt (left from chekpoint50f_pre, ini_vel modif)
84    o Mods and bug fixes to pkg/cal, pkg/exf, etc., needed for computation
85      of tracer Green's fucntions for ocean inversion project.
86    
87    checkpoint51f_pre
88    o Added on-the-fly spatial interpolation capability
89        "USE_EXF_INTERPOLATION" to pkg/exf.
90      - This is a temporary Cartesian-grid hack until
91        the super-duper ESMF coupler becomes available.
92      - See verification/global_with_exf/README for usage example.
93      - Removed obsolete EXFwindOnBgrid and SEAICEwindOnCgrid
94        flags and modified pkg/seaice accordingly.
95    o Bug fix to pkg/ptracers, pkg/generic_advdiff/gad_calc_rhs.F,
96        and pkg/kpp/kpp_transport_ptr.F for dealing with tracer
97        non-local transport term.
98    
99    checkpoint51e_post
100    o pkg/mom_vecinv:
101      - changes related to hFac: use S/R from aim.5l_cs/code (coriolis & vort.advec)
102      - add time-ave diagnostic of vorticity advection.
103    o add diagnostic (instantaneous) of Shapiro Filter effect for T,S & UV.
104    o atmospheric geopotential: - include water vapor effect;
105                                - use p^kappa in p* scaling.
106    o land pkg: read initial state from files.
107    o AIM : add stratospheric drag in the upper level
108    
109    checkpoint51d_post
110    o change function ILNBLNK (=> last non-blank char.) to return zero
111      (instead of the string length) when the string. char is empty
112    o fix bug in dxV,dyU definition of cubed-sphere grid (ini_curvilinear_grid)
113    o modif's to restore TAMC compatibility
114      - avoid "_d" constructs in PARAMETER declarations
115      - avoid interrupting lines by comment lines
116    o Use cluster local disks for purely local I/O
117      vs. globally visible disks needed for ctrl stuff
118      (merged from ecco-branch)
119      - new active_file_loc... and mdsio_..._loc routines
120      - affected packages: autodiff, ctrl, grdchk, mdsio
121    
122    checkpoint51c_post
123    o introducing integer flag debugLevel
124      - debLevZero: suppress all output
125      - debLevA: standard
126      - debLevB: equivalent to current debugMode=.TRUE.
127    o introducing pathname variable mdsioLocalDir for mdsio
128      that can be specified at runtime
129      (relevant for cluster I/O to local disk)
130    `
131    >>>checkpoint51b_post
132    adjoint of ptracers
133    o disentangled ALLOW_PTRACERS using new ALLOW_GCHEM
134    o extended state in checkpoint_lev?, etc.
135    o alternative ctrl/cost with tr1 or ptracer
136    o new comlev1_bibj_ptracers
137    o new ptracers.flow
138    o made ptracers_forcing same as external_forcing_s
139    o added verification for adjoint with ptracers
140      - adm. grdchk fail so far
141      - tlm. grdchk OK
142      - checked tapelev/comlev recomputations: OK
143    <<<checkpoint51b_pre
144    
145    checkpoint51a_post
146    o added code for biogeochemistry package
147      - new pkgs: dic, gchem
148      - new subroutine in ptracers
149    o modify code for biogeo packages
150      - in model/src and pkg/ptracers
151    
152    checkpoint51
153    o merged improved packages from ecco-branch (ecco_c51_e34) to MAIN
154      - autodiff, ctrl, exf, grdchk, seaice
155      kept separate packages
156      - cost, ecco, obcs
157    o updating verification/internal_wave, verification/lab_sea
158      (all verif's pass on faulks.lcs.mit.edu RH7.3, g77)
159    
160    checkpoint50i_post
161    o Preparing next differentiable checkpoint and sync
162      of MAIN vs. ecco-branch
163      - 1st step: this one is differentiable
164      - 2nd step: next(! not this) checkpoint will have updated packages
165                  from ecco-branch)
166    
167    checkpoint50h_post
168    o new package "land": provide surface BC for AIM.
169    o pkg/ptracers: apply exchange to all tracers after reading a pickup.
170    o AIM: use true log-P extrapolation for near surface temp (= as in
171        F.Molteni paper) ; update aim.5l_cs output.
172    o New variable in PARM03 for more flexible pickups
173    o somewhat cleaned package initialisation sequence for
174      ctrl/ cost/ ecco/ in packages_... routines
175    
176    checkpoint50g_post
177    o merged with release1_p17 (pkg/seaice and verification/lab_sea)
178      - added SEAICE_MULTILEVEL for 8-category sea-ice thermodynamics
179      - LSR sea-ice dynamic solver moved to SouthWest B-grid location and
180        made the default because of faster convergence than ADI
181    
182    checkpoint50f_post
183    o exf totally restructured
184      - replaced all exf_set_ routines by one generic exf_set_gen.F
185        and made sure it's still differentiable
186      - split exf_getffields.F into new exf_bulkformulae.F
187      - exf_inscal_/exf_outscal_ suffixes consistent with field names
188      - updated adjoint/makefile and relevant verif. accordingly
189    
190    checkpoint50f_pre
191     o AIM: near surface temp evaluated from Pot.Temp: fixed for Part Cell ;
192          + change Evap over land. (update aim.5l_cs output)
193     o added missing .cvsignores and made uniform across expts
194     o changed configuration of tidal_basin_2d expt
195     o added pkg/debug functions for tracing code in fatal crashes
196     o tidied pkg/monitor to use MONITOR_OPTIONS.h
197     o new fn in pkg/monitor to stop model if solution grows too big
198     o removed lots of single quotes from comments
199    
200    checkpoint50e_post
201    o make KPP work with PTRACERS
202     - fix gad_calc_rhs to call new routine kpp_transport_ptr, which is
203       nearly a copy of kpp_transport_s
204     - there is no analogue to SurfaceTendencyS, so I have to use
205       gPtr(of the surface layer) instead
206    o add a new platform SunFire+mpi (SunFire 15000) to genmake
207    checkpoint50e_pre
208    
209    checkpoint50d_post
210    o change kpp output from multiple-record state files to single-record state
211      files analogous to write_state.F
212    o reduce the output frequency of cg3d-related stuff to the monitor frequency,
213      analogous to the cg2d-related output.
214    o fix small problem with in ptracers_write_checkpoint.F: len(suff)=512,
215      so that writing to internal file fn (with length 512) fails.
216    checkpoint50d_pre
217    
218    checkpoint50c_post
219    o fix problem in ini_procs.F when using MPI (was there since checkpoint48f)
220    o add monitor diagnostic of vorticity (mon_vort3.F) and potential energy.
221    o add time-average diagnostic of U*V and vertical diffusive flux for theta.
222    o bug fixed in convective adjustment diagnostic (multi-tile set-up).
223    o 4th Order Adv scheme: return to previous (c40pre7) masking near boundaries.
224    
225    checkpoint50c_pre
226    Merging from release1_p13:
227    o bug fix for pkg/seaice dynamic solver
228    o Added SEAICE_initialHEFF to pkg/seaice
229    
230    checkpoint50b_post
231    o store u*,v* in gU,V instead of in guNm1,gvNm1
232    o in order to put the momForcing out of the Adams-Bashforth:
233      move forcing & CD-scheme calls from mom_fluxform & mom_vecinv
234      to timestep.F
235    o new flag "useCDscheme" (default=F); replace guCD,gvCD by local arrays
236    o re-generate output for highly sensitive test-exp:
237       global_ocean_pressure, ideal_2D_oce, lab_sea, natl_box
238    
239    checkpoint50b_pre
240    o restore the use of momAdvection & useCoriolis flags (mom_vecinv)
241    o corrected CPP option mismatch in exf_Bulk... functions for case
242      #define ALLOW_ATM_WIND && #undef ALLOW_ATM_TEMP
243    
244    checkpoint50a_post
245    o Bug fix for merging between c50 and KPP.
246      ikey was passed from thermodynamics to kpp_calc via
247      common block rather than being recomputed in kpp_calc,
248      in contradiction with new key itdkey.
249      New key ikppkey created, and tamc.h headers updated.
250    
251    checkpoint50
252    - 2nd step of merge with ecco-branch:
253      merge changes in ecco-branch back into main trunk
254    - bug fix in find_alpha
255    - more storing in gmredi_calc_tensor.F, kpp_routines.F
256    - avoid iterative loop in ini_pressure for ALLOW_AUTODIFF_TAMC
257    - merged some sliced AD support routines
258    
259    checkpoint49
260    merged from ecco-branch:
261    o exf:
262      - Enable initialisation of forcing fields to constant
263        (runtime) values.
264      - in exf_getffields.F
265        Reduce i-/j-loop to interior domain, discarding overlaps.
266        That also fixes wrong TAF-key computations for key_1, key_2
267        with bulf formulae.
268      - exf_init.F modify #ifdef for exf_init_evap
269      - exf_getffieldrec.F, ctrl_getrec.F
270        The following INT-usages are not safe:
271          fldsecs  = int(fldsecs/fldperiod)*fldperiod
272          fldcount = int(fldsecs/fldperiod) + 1
273        and were modified.
274    o autodiff: checkpoint_lev...
275      - updated storing for bulk formulae (some arrays were missing)
276      - added state for seaice package
277      - synchronized with main branch
278    o DIVA:
279      Modif.s in
280      - the_main_loop.F
281      - the_model_main.F
282      and added cost_final_restore.F cost_final_store.F
283      o With these changes, it is possible to fully separate
284        the first forward run to compute the cost function (mdthe_main_loop)
285        and adjoint runs over individual DIVA intervals (adthe_main_loop)
286        into separate model executions.
287        This enables better tuning of DIVA to given queue sizes.
288      o Loss of cost function value in consecutive DIVA runs is
289        fixed by storing to 'costfinal' file.
290      o Appropriate call of ctrl_unpack/_pack,grdchk_main at
291        beginning/end of adjoint integration is accounted for.
292      The current changes apply to TAF-1.4.26.
293      TAF has one remaining bug, requiring one manual change
294      (see MITgcm manual).
295    o cal: synchronized between MAIN and ecco-branch
296    
297    checkpoint48i_post
298    o Changes to restore differentiability of code w.r.t. previous tag
299      (mostly adding new routines to make list and replacing
300      pressure by totPhiHyd).
301    o Updated and merged grdchk package
302      - has both ADM and TLM checks
303      - works for single- and multi-proc.
304      - output cleaned
305      - worked successfully for parallel DIVA
306    o genmake:
307      - Adding -platform=SP4
308      - Modif. for DEC Alpha (many don't have makedepend; use mkdep instead).
309    o Modif. for DIVA:
310      ctrl_unpack should not be called in intermediate DIVA interval.
311      (similar thing would apply for active files such as
312      tbar, sbar, psbar, which should not be reinitialised;
313      only relevant for ecco-branch)
314    
315    checkpoint48h_post
316    o improve "ini_p_ground" when using finite difference form for calc_phi_hyd
317    o Added net flux to downward flux conversion to pkg/exf/exf_getffields.F
318    o Added SEAICE_initialHEFF to pkg/seaice
319    o ecco_the_model_main.F: SEAICE_WRITE_PICKUP must precede WRITE_CHECKPOINT
320    
321    checkpoint48g_post
322    --- EOS:
323    o compute locally the pressure for use in EOS: UNESCO, JMD95P, MDJWF
324      store total Potential in totPhyHyd for diagnostics & EOS.
325    o fix restart and overlap Pb when using Z-coord and EOS funct. of P
326    --- Pressure/geopotential gradient:
327    o use Ro_surf & R_low instead of hFac in cal_phi_hyd:
328    o NLFS + p-coord.: eta*Alpha' is not longer lagging 1.time-step behind
329      ( changes results of global_ocean_pressure )
330    o NLFS + z-coord.: add eta*Rho' contribution.
331    o accurate phiHyd when using interface-W at the middle between 2 centers
332     ( changes results of ideal_2D_oce )
333    o includes r* 2nd term in potential gradient.
334    
335    checkpoint48f_post
336    Merging from release1_p12:
337    o Modifications for using pkg/exf with pkg/seaice
338      - improved description of the various forcing configurations
339      - added basic radiation bulk formulae to pkg/exf
340      - units/sign fix for evap computation in exf_getffields.F
341      - updated verification/global_with_exf/results/output.txt
342    o Added pkg/sbo for computing IERS Special Bureau for the Oceans
343      (SBO) core products, including oceanic mass, center-of-mass,
344      angular, and bottom pressure (see pkg/sbo/README.sbo).
345    o Lower bound for viscosity/diffusivity in pkg/kpp/kpp_routines.F
346      to avoid negative values in shallow regions.
347      - updated verification/natl_box/results/output.txt
348      - updated verification/lab_sea/results/output.txt
349    o MPI gather, scatter: eesupp/src/gather_2d.F and scatter_2d.F
350    o Added useSingleCpuIO option (see PARAMS.h).
351    o Updated useSingleCpuIO option in mdsio_writefield.F to
352      work with multi-field files, e.g., for single-file pickup.
353    o pkg/seaice:
354      - bug fix in growth.F: QNET for no shortwave case
355      - added HeffFile for specifying initial sea-ice thickness
356      - changed SEAICE_EXTERNAL_FLUXES wind stress implementation
357    o Added missing /* */ to CPP comments in pkg/seaice, pkg/exf,
358      kpp_transport_t.F, forward_step.F, and the_main_loop.F
359    o pkg/seaice:
360      - adjoint-friendly modifications
361      - added a SEAICE_WRITE_PICKUP at end of the_model_main.F
362    
363    checkpoint48e_post
364    o New S/R for diagnostic of bottom pressure (phi0surf was missing in c48d_post)
365    o dynamics: change definition of computational domain & adapt mom_fluxform
366      accordingly ; when viscA4=0, allows to run the dynamics with Olx=Oly=2.
367    o following exp works with Olx=Oly=2 (and pass through checkbounds option):
368        adjust_nlfs.cs-32x32x1 adjustment.128x64x1 adjustment.cs-32x32x1
369        exp0 exp1 exp2 exp4 exp5 hs94.cs-32x32x5 hs94.128x64x5 hs94.1x64x5
370        global_ocean.90x40x15 global_with_exf global_ocean_pressure
371        inverted_barometer solid-body.cs-32x32x1
372      (high order AdvScheme and/or multiDimAd works with Olx=Oly=2 ? not sure)
373    
374    checkpoint48d_post
375    o in preparation for r*:
376     a) use pre-computed gradient of hydrostatic potential:
377        changes in timestep.F & mom_cdscheme.F affects results of ideal_2D_oce
378     b) move phi0surf from calc_phi_hyd to calc_grad_phi_hyd:
379        => affects results of glob_oce_pressure (different truncation error)  
380      update output.txt of ideal_2D_oce & global_ocean_pressure
381    
382    checkpoint48d_pre
383    o in preparation for r*:
384      new S/R (calc_grad_phi_hyd.F) to compute Hydrostatic potential gradient.
385      pass the 2 comp. of the grad. as arguments to momentum S/R.
386      but for the moment, only used if it does not change the results.
387    o add finite volume form of calc_phi_hyd for buoyancyRelation OCEANIC & OCEANICP
388    
389    checkpoint48c_post
390    Modifications in treatment of initial flux forcing controls
391    to avoid extra storing of flux fields.
392    
393    checkpoint48c_pre
394    o Added tidal_basin_2d experiment (currently 1D!)
395    o can use r* Coordinate with OBC (but Orlanski Rad. BC not yet implemented)
396    
397    checkpoint48b_post
398    o r* coordinate added in #ifdef NONLIN_FRSURF block.
399     (modification to pressure gradient not yet implemented)
400    o mom_fluxform: new S/R mom_calc_rtrans.F computes vertical transports
401      (for U & V) that are used for vertical advection of momentum.
402    
403    checkpoint48a_post
404    o In preparation for r*, use temp. array to compute vertical transport
405       in flux-form momentum pkg. => change results of few test-exp.
406      Update output of: exp4, exp5, front_relax, global_ocean_pressure,
407                        lab_sea, natl_box & plume_on_slope
408    
409    checkpoint48
410    o fix small bug that was causing lot of warning (TIMER_STOP 'UPDATE_CG2D')
411    
412    checkpoint47j_post
413    o add new exp. (ideal_2D_oce) to test "exotic" parameters and options.
414    o moved adexch from forward_step to addummy_in_stepping
415    o added exch in ctrl_map_...
416    o aveFreq.=0. at end of cost_final to avoid overwrite in
417      reverse checkpointing loop
418    o Yet more changes in gmredi:
419      * adgmredi_calc_tensor
420        avoiding all recomputation of gmredi_slope_limit
421      * adgmredi_x/y/rtransport
422        added flag for excessive storing to avoid recomp. of
423        u/v/rtans, dTdx/y/z
424        -> this is not really necessary and very memory-consuming
425      * adgmredi_slope_psi:
426        consistency with gmredi_slope_limit in treatment of GM_slopeSqCutoff
427      * gmredi_slope_limit
428        re-activated full calculation of taperfct for case 'ac02'
429    o updating verification/ adjoints of carbon, global_ocean.90x40x15
430    
431    checkpoint47i_post
432    o GM_EXCLUDE_() replace GM_TAPER_(): by default, all the code is compiled.
433    o add GM_Small_Number & GM_slopeSqCutoff as run-time parameters (data.gmredi)
434      default values = 1.D-12 & 1.D+48 (=> give same results as checkpoint47f_post)
435    o cg2dTargetResWunit: define tolerance using deltaTmom (and not deltaTfreesurf)
436    o gmredi: fix few bugs.
437    
438    checkpoint47h_post (duplicate tag for PH's c48 tag, in order to move c48)
439    This will be a good checkpoint to plug into the ecco-branch.
440    o few modif.'s to get latest version adjointed
441      (mainly kick out code in ini_linear_phisurf)
442    o modif's to run adjoint with exactConserv
443    o case GM_BOLUS_ADVEC should be cleaned
444      S/R gmredi_slope_psi should be cleaned
445    o verification/carbon now has exactConserv=.TRUE.
446    
447    checkpoint47g_post
448    o time-average AIM output: becomes independent from statvars time-average
449      (can be used with #undef ALLOW_TIMEAVE) ; add new variables (e.g., RH)
450    o After TAF bug fix:
451      Tested adjoint of gmredi package.
452      Tests were done with checkpoint47 rather than with latest
453      checkpoint47f_post since the latter is broken for the adjoint
454      verification/carbon/ contains both ADM and TLM gradient checks.
455    Here they are, before they get changed/lost/stolen.
456    Mostly modif.'s to fix numerical sensitivities.
457    Gradient checks OK for
458    - GM_taper_scheme:
459      * clipping
460      * ac02
461      * linear
462      * glw91
463      * dm95
464      * ldd97
465    - GMREDI_OPTIONS:
466      * GM_VISBECK_VARIABLE_K
467      * GM_NON_UNITY_DIAGONAL
468      * GM_EXTRA_DIAGONAL
469      * GM_BOLUS_ADVEC
470    in conjunction with data.gmredi parameters to be checked in
471    in a few minutes under verification/carbon/code/
472    
473    checkpoint47f_post
474    Merging from release1_p10:
475    o modifications for using pkg/exf with pkg/seaice
476      - pkg/seaice CPP options SEAICE_EXTERNAL_FORCING
477        and SEAICE_EXTERNAL_FLUXES
478      - pkg/exf CPP options EXF_READ_EVAP and
479        EXF_NO_BULK_COMPUTATIONS
480      - usage examples are Experiments 8 and 9 in
481        verification/lab_sea/README
482      - verification/lab_sea default experiment now uses
483        pkg/gmredi, pkg/kpp, pkg/seaice, and pkg/exf
484    
485    checkpoint47e_post
486    o created a tag prior to creating a branch
487    
488    checkpoint47d_post
489    o fixed bug in the oceanic pressure coordinates code: vertical viscosity
490      at the bottom boundary had an erroneous half slip boundary condition
491    o added bottom drag and no slip boundary condition capabilities to
492      oceanic pressure coordinates code
493    o added new verification experiment global_ocean_pressure, this experiment is
494      also described in the tutorial section of the manual
495    checkpoint47d_pre
496    
497    checkpoint47c_post
498    o Added a verification experiment for a global cubed-sphere ocean run
499      -  verification/global_ocean.cubed32x32x30
500      -  uses pkg/therm_seaice and pkg/bulk_forcing
501    
502    o allow to run AIM physics with SPEEDY input files (from Franco Molteni)
503    o allow a more accurate definition of Ro_Surf (selectFindRoSurf=1)
504      when using P-coordinate; only implemented for atmospheric config.
505    o OCEANICP & realFreshWater: include P-E direct effect on wVel ;
506      NOTES: requires option NONLIN_FRSURF to be "#define".
507    o update advect_xz/results/output.txt (left from checkpoint44g_post)
508    
509    checkpoint47b_post
510    Merging from release1_p9:
511    o pkg/seaice
512      - removed GOTO's and added taf directives
513      - double precision constants to reduce the g77 (Linux)
514        to F77 (SGI) differences reported in release1_p8
515    o tools/genmake
516      - added SGI options
517    o verification/testscript
518      - updated to that of checkpoint47a_post
519    o verification/global_ocean.90x40x15/input/eedata
520      - modified for SGI f77 compatibility
521    o verification/lab_sea
522      - added description of sea-ice model
523      - added missing matlab routines
524      - added test of thermodynamics parallelization
525    
526    checkpoint47a_post
527    o new pkg: aim_v23
528     = F. Molteni atmos.physics (SPEEDY, ver23) adapted to MITgcm.
529       for now, keep the same surface forcing as before.
530     - Part-Cell implemented into AIM; check that Heat & Water are conserved
531     - aim.5l_cs: use new aim pkg (run 10yr & get better results than before)
532     - aim.5l_LatLon & aim.5l_Equatorial_Channel are still using old aim pkg
533    o add diagnostic of surface correction term in monitor output
534    
535    o bulk_force and therm_seaice
536    - Two packages:  bulk_force (Bulk forcing)
537      and therm_seaice (thermodynamic_seaice) - adopted from LANL CICE.v2.0.2
538    - Earlier integration from Stephaine Dutkiewicz
539      and Patrick Heimbach.
540    - Two ifdef statements for compile time,
541       ALLOW_THERM_SEAICE and ALLOW_BULK_FORCE
542    
543    checkpoint47
544    differentiable version of checkpoint46n_post
545    o bug fix in quasihydrostaticterms
546    o * "clean" adjoint code (in terms of extensive recomputations)
547        can now be obtained for all GMREDI options (i.e. for
548        - GM_VISBECK_VARIABLE_K
549        - GM_NON_UNITY_DIAGONAL
550        - GM_EXTRA_DIAGONAL
551        - GM_BOLUS_ADVEC )
552      * However, wrong gradient check problem remains unsolved.
553      * New CPP options have been introduced for different
554        tapering schemes
555    o external_fields_load now part of differentiation list
556    o pressure needs multiple storing;
557      would be nice to have store_pressure at beginning or
558      end of forward_step, e.g. by having phiHyd global (5-dim.)
559      (NB: pressure is needed for certain cases in find_rho,
560      which is also invoked through convective_adjustment).
561    o recomputations in find_rho for cases
562     'JMD95'/'UNESCO' or 'MDJWF' are OK.
563    o #define ATMOSPHERIC_LOADING should be differentiable
564    o ini_forcing shifted to begining of initialise_varia
565    o Incorporating QNVS line search routines into MITgcm
566      (this is separate code, and therefore not under pkg)
567      lsopt/, optim/
568    o Updated verification/carbon/
569      - #define GM_VISBECK_VARIABLE_K
570      - GM_taper_scheme    = 'ldd97'    
571    
572    checkpoint46n_post
573    Merging from release1_p8:
574    o verification/natl_box:
575      updating new external_fields_load routine
576    o New package: pkg/seaice
577      Sea ice model by D. Menemenlis (JPL) and Jinlun Zhang (Seattle).
578      The sea-ice code is based on Hibler (1979-1980).
579      Two sea-ice dynamic solvers, ADI and LSR, are included.
580      In addition to computing prognostic sea-ice variables and diagnosing
581      the forcing/external data fields that drive the ocean model,
582      SEAICE_MODEL also sets theta to the freezing point under sea-ice.
583      The implied surface heat flux is then stored in variable
584      surfaceTendencyTice, which is needed by KPP package (kpp_calc.F and
585      kpp_transport_t.F) to diagnose surface buoyancy fluxes and for the
586      non-local transport term.  Because this call precedes model
587      thermodynamics, temperature under sea-ice may not be "exactly" at
588      the freezing point by the time theta is dumped or time-averaged.
589      N.B.: fairly large differences in accuracy occur across
590            different platforms/compilers; comparison between
591            g77 (Linux) and F77 (SGI Origin 2000/MIPSpro)
592            generated output gives:
593       T           S           U           V
594      C D M    c        m  s        m  s        m  s        m  s
595      n p a R  g  m  m  e  .  m  m  e  .  m  m  e  .  m  m  e  .
596      f n k u  2  i  a  a  d  i  a  a  d  i  a  a  d  i  a  a  d
597      g d e n  d  n  x  n  .  n  x  n  .  n  x  n  .  n  x  n  .
598    
599      Y Y Y Y  5  5  7  7  7  8 10  9  6  6  6  6  7  5  7  5  7 FAIL  lab_sea
600    o GAD:
601      - generated new common blocks to account for call of
602        same gad routines with differing traceridentities
603        (needed to modify tracerIdentity indices in GAD.h)
604      - generated separate common blocks for case useCubedSphereExchange
605        (Department of Futurology)
606      - parameter lists to gmredi_?transport: added tracerIdentity
607      - added new key indices to tamc.h
608    o external_fields_load:
609      - added this routine to TAF list
610      - needed to make some common blocks global and additional storing
611        along the same lines as exf package (checkpoint_lev?_directives.h)
612    o exf:
613      updated external forcing package
614      - bug fixes carried over from ecco-branch
615        (missing OBCS_OPTIONS.h in two routines)
616      - enable easy to use "no forcing".
617      - added exf I/O for atmospheric loading
618      - added exf I/O for runoff data
619      - transfered scaling between exf <-> MITgcm to exf namelist
620    o Adding new verification experiment global_with_exf.
621      This verification experiment is almost identical to the
622      global_ocean.90x40x15 experiment, except that it uses
623      the exf (and cal) package instead of the
624      external_fields_load routine (cf README file).
625    
626    checkpoint46m_post
627    o modified testscript to return -- when there are no lines of "%MON" output
628    o added new flag "quasiHydrostatic" for QH mode
629      and new routine quasihydrostaticterms()
630    o added 2*Omega*Cos(phi)*W to u equations (non-hydrostatic Coriolis term)
631      New routine: mom_u_coriolis_nh()
632    o fixed sign of non-hydrostatic metric terms in u and v equations.
633      Depend on correct sign of gravitySign.
634    o added work.pc* to .cvsignore in aim directories using ifc
635    o introduced flag for controllin non-hydrostatic metric terms
636    o removed gravitySign from PARM04
637    o switched to g77/ifc from pgf77 in aim experiments
638    
639    checkpoint46l_post
640    o made convective adjustment work with pressure coordinates:
641     - changed the direction of k-loop in convective_adjustment.F for the
642       case of pressure coordinates (OCEANICP,ATMOSPHERIC buoyancyRelation)
643     - adjusted the reference pressure k-index in convective_adjustment.F
644     - adjusted the convection condition in convect.F (in analogy to
645       calc_ivdc.F)
646     - convective_adjustment no longer computes anything on the halos
647     - removed the warnings about negative salinity from find_rho.F and
648       find_alpha.F; instead the new routine look_for_neg_salinity, called
649       at the beginning of find_rho, find_alpha, and find_beta, does a
650       check of the entire slice, if CPP-option
651       CHECK_SALINITY_FOR_NEGATIVE_VALUES is defined
652    checkpoint46l_pre
653    
654    checkpoint46k_post
655    o fixed the verification/global_ocean.90x40x15 experiment:
656     - new bathymetry (the world according to A., JMC, and M.)
657     - new initial fields and forcing fields (*.bin files)
658     - new POLY3.COEFFS (for the next release one should switch to a full
659       equation of state: JMD95P or MDJWF)
660     - fixed several errors and redundancies in the data file
661     - experiment uses looped cells
662     - added matlab directory with diagnostic scripts for plotting of output
663    
664    o S/R aim_initialise.F replace S/R aim_init from file aim_do_inphys.F:
665     - read AIM physics parameters from a file (data.aimphys)
666     - set defaults values = F.Molteni paper (Clim.Dyn., 2002)
667    
668    checkpoint46j_post
669    o split calc_exact_eta in 2 S/R : integr_continuity & update_etaH
670    o move wVel computation at the end of the time step, in S/R integr_continuity
671    o create specific S/R to exchange T,S before DYNAMICS (for stagger time step)
672    o update timeave pkg for wVel diagnostic.
673    checkpoint46j_pre
674    
675    checkpoint46i_post
676    o Clean up AIM package (and keep the results unchanged):
677      include CPP_OPTION and use IMPLICT NONE in all routines ;
678      declare all the variables _RL ; use _d 0 for all numerical constants.
679      use ifdef ALLOW_AIM everywhere. And now AIM can be used with g77 !
680    
681    checkpoint46h_post
682    o cleaned up the use of rhoNil and rhoConst.
683      - rhoNil should only appear in the LINEAR equation of state, everywhere
684        else rhoNil is replaced by rhoConst, e.g. find_rho computes rho-rhoConst
685        and the dynamical equations are all divided by rhoConst
686    o introduced new parameter rhoConstFresh, a reference density of fresh
687      water, to remove the fresh water flux's dependence on rhoNil. The default
688      value is 999.8 kg/m^3
689    o cleanup up external_forcing.F and external_forcing_surf.F
690      - can now be used by both OCEANIC and OCEANICP
691    checkpoint46h_pre
692    
693     Added code to convert surface volume flux (fresh water) into
694     a mass flux when using P coordinates in the ocean (OCEANICP).
695     Note: It assumes you have set rho0=rhoConst=density of fresh water.
696    
697    checkpoint46g_post
698    o Include a new diagnostic variable phiHydLow for the ocean model
699      - in z-coordinates, it is the bottom pressure anomaly
700      - in p-coordinates, it is the sea surface elevation
701      - in both cases, these variable have global drift, reflecting the mass
702        drift in z-coordinates and the volume drift in p-coordinates
703      - included time averaging for phiHydLow, be aware of the drift!
704    o depth-dependent computation of Bo_surf for pressure coordinates
705      in the ocean (buoyancyRelation='OCEANICP')
706      - requires a new routine (FIND_RHO_SCALAR) to compute density with only
707        Theta, Salinity, and Pressure in the parameter list. This routine is
708        presently contained in find_rho.F. This routine does not give the
709        correct density for 'POLY3', which would be a z-dependent reference
710        density.
711    o cleaned up find_rho
712      - removed obsolete 'eqn' from the parameter list.
713    o added two new verification experiments: gop and goz
714      (4x4 degree global ocean, 15 layers in pressure and height coordinates)
715    checkpoint46g_pre
716    
717    checkpoint46f_post
718    o Enable tangent linear (forward mode) gradient checks:
719      - extended active file handling to g_... files
720      - added TANGENT_SIMULATION to theSimulationMode
721      - extended grdchk package accordingly
722    o added tangent linear setup in verification/carbon/code_ftl
723    o added adjoint setup in verification/front_relax/code_ad
724    
725    checkpoint46e_post
726    o Added new equation of state -> MDJWF
727      - EOS of McDougall et al., 2002, JAOT, submitted
728      - caveat: the equation of state is only valid for a smaller (more
729        realistic?) range of values than JMD95P/Z and UNESCO
730      - added masks to the calculation of pressure in store_pressure
731      - added more check values for density in check_eos (ini_eos.F), some of
732        the old check values are out of the range of the MDJWF-eos, so don't
733        expect perfect matches for those
734    checkpoint46e_pre
735    
736    checkpoint46d_post
737    o fixed store_pressure to work with both buoyancy relation = 'OCEANIC' and
738      'OCEANICP', also initialised field pressure correctly in ini_eos in the
739      case of pressure coordinates. eosType='JMD95Z' in
740      combination with buoyancyRelation='OCEANICP' now causes an error.
741    o Changed p = pressure(i,j,k,bi,bj)  to  p = pressure(i,j,kRef,bi,bj)
742      in find_alpha/beta.
743    checkpoint46d_pre
744    
745    o Changed p = pressure(i,j,k,bi,bj)  to  p = pressure(i,j,kRef,bi,bj)
746      so that JMD95Z and JMD95P give approptiate static stability in find_rho.
747    
748    checkpoint46c_post
749    o Changes necessary for ocean in p-coordinates
750     -  Added new buoyancy relation = 'OCEANICP'
751     -  Added new parameters = gravitySign (this used to be contained inside
752        the factor dRdZ which I added when we first switched to R coordinates).
753     X GM/Redi is not compatible (yet)
754     X bottom drag and no-slip need to be debugged.
755    checkpoint46c_pre
756    
757    checkpoint46b_post
758    o Added new equation of state -> JMD95Z and JMD95P
759      - EOS of Jackett and McDougall, 1995, JAOT
760      - moved all EOS parameters into EOS.h
761      - new routines ini_eos.F, store_pressure.F
762    o Added UNESCO EOS, but not recommended because it requires
763      in-situ temperature (see JMD95)
764    o Modified formatting for knudsen2.f in utils/knudsen2 and added
765      unesco.f to be used with POLY3
766    checkpoint46b_pre
767    
768    checkpoint46a_post
769    o Added (atmospheric) pressure loading
770      - new field in FFIELDS.h, etc...
771      - new cpp flag ATMOSPHERIC_LOADING
772    o Changed hFacC to _hFacC in calc_phi_hyd.F
773    o Added SHORTWAVE_HEATING to some files for consistency
774    checkpoint46a_pre
775    
776    checkpoint46
777    further merges from release1_p5
778    o new ctrl package
779      - adopted from ECCO environment to enable optimization
780      - added Eliassen Palm fluxes to controls
781    o added Eliassen Palm flux controls to gradient check package
782    o cost package
783      - Compatible with new ctrl package
784      - added Eliassen Palm cost hooks
785      - modif's of existing cost functions
786    o Adjoint-related bug fixes in kpp:
787      - kpp_calc: sore of kpphbl avoids recomputation/call to S/R kppmix
788      - kpp_routines: store of Rib avoids partial recomputation bug of TAF.
789    o autodiff package
790      - flow directives:
791        + new for S/R do_the_model_io
792        + enhanced for S/R checkpoint
793        + new gmredi.flow
794      - Introduced CPP option ALLOW_AUTODIFF_MONITOR to
795        disable adcommon.h/g_common.h by default.
796      - fixed problem for adjoint of global_max
797    o modified verification/carbon/
798    o New setup for adjoint of global_ocean
799    o added hooks for Eliassen Palm fluxes (dynamics.F, ini_fields.F)
800    o cleaned TAF keys iikey, idkey (dynamics.F, thermodynamics.F)
801    o incorporated hooks for sponge layer code (external_forcing.F)
802    
803    checkpoint45d_post
804    o import 2 fixes from release1_p5 (CG2D.h & packages_readparms.F)
805    o use recip_dx*,recip_dy* instead of /dx*,/dy* in orlanski_E,W,N,S
806      (affects plume_on_slope "cg2d" output)
807    o add new parameter deltaTfreesurf for free-surface time stepping
808    o exchange gT,gS when using staggerTimeStep & GM & Oly<4
809    o NONLIN_FRSURF: rescale gNm1 to get a better conservation with A-B
810    o change phiMin in exp1 (to agree with documentation)
811    o add new flags:
812     - T,S forcing inside/outside Adams-Bashforth
813     - turn off temp,salt advection and/or forcing
814     - for each tracer, define internal flag for multiDimAdvection & A-B
815    o monitor: change definition of KE to check conservation of Energy
816    
817    checkpoint45c_post
818    o Removed f90 comments ("!")
819    o Modified initialisations to enable exf package for MITgcm
820      (without invoking ECCO_PACKAGE).
821    o modifications to gradient check package (Martin Losch)
822      - enable centered differences
823      - modified format of standard output
824    
825    checkpoint45b_post
826    o cleaned exchange calls in cg2d
827    o Included CPP option ALLOW_AUTODIFF_MONITOR in forward_step
828    o included CPP option SINGLE_LAYER_MODE in thermodynamics
829      to configure barotropic setup (Martin Losch)
830    o moved some initialisations within bi,bj loop in dynamics
831      (TAF flow dependency)
832    o in initialise_varia, moved call packages_init_variables
833      before convective_adjustment_init
834      (corresponding adjustment of TAF tape initialisation).
835    o in calc_diffusivity/calc_viscosity extended domain to full overlap.
836    
837    checkpoint45a_post
838    o compute Rho over the whole domain (extend iMin,jMin indices)
839    o specific exchange for X-slice domain (case Ny=1)
840    o argument futureIter of S/R obcs_calc missing in exp4 & internal_wave /code
841    o solve_for_pressure : set cg2d_x to zero where OBCS are applied
842    
843    checkpoint44h_post = checkpoint45
844    o Fix to restore differentiability:
845      place at which packages_init_variables is called in
846      initialise_varia is crucial for reverse control flow.
847    o modifications in GMRedi to enable stable adjoint
848      (corresponding modif's in thermodynamics, dynamics)
849    o added missing hook for sponge layer code in external_forcing
850    o modified test cost functions
851    o storing in gad_advection (plus removal of write(0,*)!
852    o missing headers TR1.h added in convective_adjustment routines
853    o errorMessageUnit set non-equal zero in eeboot
854      (conflict on some platforms, e.g. IBM SP3)
855    o modified carbon verif.
856    
857    checkpoint44h_pre
858    o vertical grid option: allow to put the Interface at the middle between
859      2 cell-centers ; replace delZ in pkg/kpp by drF.
860    o GM Advective form: Tracers are advected using the residual transport (=
861      Euler+GM-bolus); set param GM_AdvSeparate=T to return to previous form.
862    
863    checkpoint44g_post
864    o fix surface correction term in multiDimAdvection (affects plume_on_slope
865      results) ; ifdef missing in thermodynamics.F
866    
867    checkpoint44f_pre,checkpoint44f_post
868    o added PTRACERS package
869      This allows an arbitrary number of passive tracers to be integrated
870      forward simultaneously with the dynamicaly model.
871      + Implemented so far:
872        - basic forward algorithm (time-stepping, advection, diffusion, convection)
873        - I/O and checkpointing
874        - GM/Redi  *but*  using the GM/Redi coefficient of Salt
875      + Not implemented so far:
876        - KPP
877        - OBCS
878      + No specific example supplied (yet) but global_ocean.90x40x15 has the
879        necessary data.ptracer file. Simply use -enable=ptracers and uncomment
880        line in data.pkg.
881      + This package is disabled by default since it increases storage.
882    
883    
884    o testscript: added -cleanup option
885    o Shap_filt: a) new shap_filt S/R to use no-slip BC with S2 filter
886                 b) enable to filter 2D fields.
887    
888    checkpoint44e_pre,post
889    o re-wrote convective adjustment to use pre-calculated weights
890      Affects: model/src/convective_adjustment.F, convective_adjustment_ini.F
891      Adds:    model/src/convective_weights.F, convectively_mixtracer.F
892      Original calls to convect() still in place.
893    
894    chkpt44d_pre,post
895    o added missing EXCLUDE_MONITOR flags
896    o changed "e" to "_d" in gmredi_slope_limit, gmredi_slope_psi
897      (incompatible typ in MIN/MAX expressions caused problems
898      on IBM SP3)
899    o in genmake added variable MAKEDEPEND
900      plus resetting for case SunOS
901    o added timer_stats.c routine for IBM SP3
902    o removed variables in dynamics
903    !!! I forgot to create tag chkpt44d_pre !!!
904    !!! But chkpt44d_pre = chkpt44c_post    !!!
905    
906    o real fresh water flux implemented with non-linear free-surface.
907    
908    chkpt44c_pre,post
909    o few fix (mask in shap_s2, EmPmR in external_field_load,
910      USE_NATURAL_BCS in solve_for_P);
911    o add arguments myIter & myTime to S/R obcs_calc & solve_for_P
912    
913    checkpoint44b_pre/_post
914    o merge of relevant stuff from the ecco-branch:
915      - genmake: removed $S64 overwrite for case SunOS
916      - pkg/exf: update and corrections for field swapping and obcs
917      - pkg/ecco: parameter lists for the_model_main, the_main_loop
918                  harmonized between ECCO and MITgcm
919      - pkg/autodiff: added flow directives for obcs, mdsio_gl_slice
920                      updated checkpointing_lev... lists for obcs
921      - model/src: minor changes in forward_step, plot_field
922                   added directive for divided adjoint in the_main_loop
923      - pkg/mdsio: added mdsio_gl_slice
924    
925    o check parameters & config (chkpt44a_pre,post)
926    o OBC and NonLin_FrSurf.
927    
928    checkpoint44
929    o fix bug in mom_vi_del2uv
930    o select when filters are applied ; add options to zonal_filter (data.zonfilt)
931    o gmredi: fix Pb in the adiabatic form ; add options (.e.g. Bolus advection)
932    o update AIM experiments (NCEP input files)
933    o improve and extend diagnostics (Monitor, TimeAve with NonLin-FrSurf)
934    o added some stuff for AD
935    
936    checkpoint43
937    o added two new advection tests
938    o added global 4x4 degree ocean test
939    o added test of H&S94 with free surface on cube
940    o some final mods for gradient check, adjoint,...
941    
942    checkpoint42
943      Fixed AD-related problems:
944    o Store directives up-to-date with re-arranged Adams-Bashforth
945      (mainly thermodynamics.F)
946    o New store directives for multi-dim. advection schemes
947      * new CPP flag ALLOW_MULTI_DIM_ADVECTION
948      * new common block and key passkey
949      (mainly gad_advection.F)
950    o Modified store directives for split of dynamics/thermodynamics
951      for the case ALLOW_KPP
952    o Cleaned argument list for timestep_tracer.F
953    
954    checkpoint41
955    o re-formatted/added comments in prologues of key subroutines
956      to work with protex
957    
958    checkpoint40
959    o moved calc_gs, calc_gt and calc_tr1 back to model/src
960    o added FLT (floats) package from Arne along with demo. experiment
961    o re-arranged Adams-Bashforth scheme for tracers to allow easier
962      implementation of forward-in-time forcing terms
963    o more mods for non-linear free-surface including new variable
964    o modified multi-dim method to work on cube
965    o bug fix in KPP (from DM)
966    
967    checkpoint40pre9
968    o added DST advection schemes
969    o fix MPI bug on SGI's
970    o modifications for non-linear free-surface
971    o fixed conditionals for fixed flow/passive tracer only mode
972    o added tension/strain form of stress tensor
973    o changes to commenting of arguments for TAF/TAMC
974    o added/updated many matlab scripts
975    o added multi-dimensional advection method for tracers
976      
977    checkpoint40pre8
978    o new package rw/
979      Added method for dumping intermediate local arrays:
980      mdsio_writetile - same as mdsio_writefield except works from inside
981                        bi,bj loop
982      mdsio_writelocal - same as mdsio_writetile except works for local
983                         arrays
984      write_local_r? - higher-level wrapper for mdsio_writelocal
985      Controlled by diagFreq. Defaults to zero (ie. no dumps)
986      Example given at end of mom_vecinv.F that dumps some local arrays.
987    o replaced calc_mom_rhs.F by mom_fluxform.F/mom_vecinc.F to
988      control flux-form versus vector invariant code.
989      Switch is runtime flag vectorInvariantMomentum (defaults to false)
990      or genmake -DISABLE ...
991    o TAMC-related update to cope with mom_fluxform.F/mom_vecinc.F
992      (additional storing is now needed for case vecinv;
993      currently nothing implemented to switch this storing off
994      in case fluxform is used since no CPP flag available).
995    
996    checkpoint40pre7
997    o bug fix in dynamics.F
998      calc_viscosity called before k=1,Nr loop.
999    o added some #ifdef's ALLOW_PASSIVE_TRACER
1000    o cleaned initialisations in ctrl_map_ini
1001      related to TAF
1002    
1003    checkpoint40pre6
1004    o split dynamics into thermodynamics & dynamics
1005    o corresponding split of calc_diffusivity into
1006      calc_diffusivity, calc_viscosity
1007      (kpp_calc_diff, kpp_calc_visc).
1008    o Added diffkr, kapgm to control variables
1009    o bug fix in gmredi_slope_limit for ldd97
1010    
1011    checkpoint40pre5
1012    o proper initialization of Adams-Bashforth time stepping
1013      + uses forward step for very first step of model (iter=0)
1014    o re-generated *all* output since almost all output is modified by this
1015      change (sorry but we've been putting this one off for about 2 years)
1016      + natl_box, aim.5l_Equatorial_Channel and aim.5l_zon-ave were
1017        *not* regenerated since they are already out of date and I don't
1018        want to create the impression that they are suddenly working.
1019    o removed KAP stuff for DEC's
1020    o modified/added many .cvsignore files in */code and */input
1021    o added new expt "solid-body.cs-32x32x1"
1022      + this uses an alternative form of ini_curvilinear_grid.F which
1023        is not necessarily any better than the current one...
1024    
1025    checkpoint40pre4
1026    o added re-initialisations of utrans,vtrans,rtrans in
1027      calc_common_factors which are crucial for TAF.
1028    o extended iMin,jMin range for calc_common_factors,
1029      calc_diffusivity
1030    o added option ALLOW_PASSIVE_TRACER
1031    o a few minor updates and fixes
1032    
1033    checkpoint40pre3
1034    o created calc_gtr1.F for gad package
1035    o split the_main_loop and re-introduced forward_step
1036    o some recomputations of nIter0 for TAMC
1037    
1038    checkpoint40pre2
1039    o Updated to latest branch of AJA, JMC
1040    o Added gradient check package
1041    o Added routines for passive tracer handling
1042    o Added carbon sequestration sensitivity experiment
1043    
1044    checkpoint39
1045     o Modifications and fixes to support TAMC
1046       (mainly missing or wrong directives)
1047     o Corrected common blocks when fooling TAMC to produce adjoint I/O
1048       in addummy_in_stepping
1049     o Updated verification/vero/ (bug fixes in code/, correct pickups in input/)
1050     o Enabled "sliced" (xz-,yz-) exchanges, needed for obcs.
1051     o Included following packages:
1052       cal: calendar
1053       exf: external forcing
1054       ecco: essential routines to control use of cal, exf
1055             (NB: this is not the full ECCO environment)
1056     o disabled some packages by default in genmake
1057    
1058    checkpoint38
1059     o see notes_c37_adj.txt
1060     o corrected wrong layer index in external_forcing_t
1061     o replaced the_main_loop/forward_step by the_main_loop
1062     o removed forceoutput from write_state
1063       (replaced criteria for initial/final state)
1064     o added runtime flag for pre-C35 pickups: usePickupBeforeC35
1065    
1066    checkpoint37
1067     o mdsio.F routine split and packaged in pkg/mdsio
1068       (mdsio.F and mdsio_gl.F still exist in eesupp/src but are not
1069        used unless genmake -disable=mdsio)
1070     o allow a more precise surface-geopotential gradient for the atmosphere
1071       taking into account the change in space of Alpha (=1/rho) at the surface.
1072     o variable "etaN" (replace cg2d_x) is the surface R-anomaly [r unit]
1073       (ocean: sea surface height [m] / atmos: surface pressure anomaly [Pa])
1074     o Change units: Phi_Hydrostatic (=phiHyd), Phi_Surface(=cg2d_x) and
1075       Phi_NonHydrostatic (=cg3d_x), all have now the dimension of a potential
1076       [m2/s2] (pressure/rhoConst in the ocean ; Geo-Potential in the atmosphere).
1077     o Time-Average diagnostics defined as a pseudo package "timeave".
1078     o pickup files : old pickup (before c35) did not work with new code (c35
1079       and after) unless activating 2 commented lines in initialise-varia.
1080     o Non-Hydrostatic pickup file Pb fixed.
1081     o bug with Rigid-lid version (since c35) fixed.  
1082    
1083    checkpoint36
1084     o implement Crank-Nickelson barotropic time-stepping
1085     o recover Time-Average diagnostics
1086     o fix Pb in checkpoint (PR#19)
1087     o AIM become a standard package ; clean unused CPP_kees
1088    
1089    checkpoint35
1090     o subtantial rewrite of dynamics.f
1091     o allows staggered time-stepping
1092     o packaged obcs, aim (Atmospheric Physics), zonal_filt, shap_filt
1093     o added bottom drag (linear + quadratic)
1094    
1095    checkpoint34
1096     o Modified exchange routines for correct reverse simulation.
1097     o Added verification output to comply with bug fix in impldiff.F
1098       as of c33 (exp2, natl_box).
1099     o Corrected store directives in dynamics.F
1100     o Corrected array boundaries in impldiff.F
1101     o Corrected array dimensions in gmredi.
1102       Added temporary scalars to avoid storage by TAMC (gmredi, kpp).
1103     o Added routine GLOBAL_SUM_INT to global_sum.F
1104     o Added mdsio_gl.F for ECCO purposes.
1105    
1106    checkpoint33
1107     o Fixed bug in lower BC in impldiff.F
1108     o Fixed confusion about units of forcing arrays in FFIELDS.h
1109       namely Fu,Fv,Qnet,Qsw,EmPmR:
1110       - Removed verification/natl_box/code/external_fields_scale.F
1111         (did not differ from that in model/src)
1112       - Changed units of fu,fv,Qnet,Qsw,EmPmR back to proper units
1113         (see FFIELDS.h for description)
1114       - Scale fu,fv,Qnet,Qsw,EmPmR when used in external_forcing_surf.F,
1115         kpp_calc.F and kpp_transport_t.F
1116       - Removed model/src/external_fields_scale.F and calls to it
1117       - verification/natl_box uses flux data with "atmospheric" sign so
1118         a special version of external_fields_load.F is used to
1119         change the data as it's read in. This way, the arrays
1120         have the right units and signs at all times tha a user could
1121         possibly use them.
1122     o Corrected genmake to delete a temporary file during configuration
1123    
1124    checkpoint32
1125     o Scaling of forcing fields moved from external_forcing.F to
1126       external_fields_scale.F, called directly after loading fields.
1127     o Surface relaxation terms added to surface tendency fields in
1128       extra subroutine.
1129     o impldiff.F changed to avoid storing by TAMC of huge intermediate
1130       fields.
1131     o Changes in GMRedi to comply with packaging structure.
1132     o Modifications and bug fixes in KPP package.
1133     o Verification experiment for KPP added (verification/nat_box/)
1134    
1135    checkpoint31
1136     o Packages interface brought in line with defined standard
1137       -> new routines packages_...F
1138       -> changes in initialise_fixed.F, initialise_varia.F
1139       -> enables initialisation interface for ECCO package
1140     o Rescaling of external forcing fields immediately after read
1141       (removed from external_forcing.F)
1142       -> new: surface_fields_scale.F
1143       -> affects ini_foorcing.F, external_fields_load.F
1144     o Computation of surface tendencies before tendency updates.
1145       -> new: external_forcing_surf.F
1146     o Change of variable names useGMRedi, useKPP, useECCO
1147     o Further changes in dynamics.F, impldiff.F for TAMC
1148     o Tested for experiments 0, 2, 4.
1149       - not yet tested for GMRedi.
1150       - not yet tested for KPP.
1151    
1152    checkpoint30
1153     o Updates for OBCs
1154     o New experiment for test OBCs (internal_wave)
1155     o New output.txt in verification/exp4/results/
1156     o Updates for KPP: calculation of viscosity corrected, new variables
1157       kpp_dumpFreq and kpp_taveFreq
1158     o CPP'd calls to system routines for TARGET_CRAY_VECTOR (P.H.)
1159       and entry for T90 in genmake
1160    
1161    checkpoint29
1162     o packaged KPP and GM/Redi
1163    
1164    checkpoint28
1165     o Corrected initialization of hFacMin for difference vertical coordinates
1166     o Modified calculation of partial cell thickness to more robust algorithm
1167     o config_summary.F: replaced write_1D_... by write_0D_...
1168       read_write.F: added subroutines write_0D_...
1169     o routines calc_common_factors, calc_gs, calc_gt, calc_phi_hyd, find_rho:
1170       included some initialisations required for TAMC.
1171     o routine calc_isoslopes: modified sqrt computation to make it
1172       differentiable for zero argument.
1173     o routines dynamics, impldiff:
1174       included store directives and tape key computations required for TAMC.
1175     o ALL TAMC related changes are between ifdef ALLOW_AUTODIFF_TAMC
1176    
1177    checkpoint27
1178     o fixed calc_isoslopes() to so that cancellation of terms in tensor
1179       formulation works properly with variable resolution.
1180     o restructured the calling tree between the_model_main() and dynamics()
1181     o split initialise() into initialise_fixed() and initialise_varia()
1182     o introduced initialization file pSurfInitFile for free surface (cg2d_x)
1183       in new routine ini_psurf()
1184    
1185    checkpoint26
1186     o moved some #ifdef in optional routines to encompass everything
1187       except the argument declarations. This was using up some memory.
1188     o fixed macros like _ADT to work with both versions of Linux cpp
1189     o cleaned up some unused and uninitialized variables
1190       (helps when debugging with strict compile options)
1191     o split up CPP_EEOPTIONS.h into options and macros
1192       (macros are now in eesupp/inc/CPP_EEMACROS.h)
1193     o patch for 2 processor JAM mode
1194    
1195    checkpoint25
1196     o updates for OBCs and NH
1197     o dramatically reduced memory usage
1198     o added "JAM" routines for use on Artic network
1199     o parameterization of convection by implicit vertical diffusion
1200     o added a diagnostic of convective index
1201     o moved call to calc_divg_hat() from dynamics() to solve_for_pressure()
1202       (this is was partly for OBCs and NH but also in anticipation of
1203        an explicit free-surface option)
1204     o initial state input files for U and V
1205    
1206    checkpoint24
1207     o Removed some spurious "REAL"s
1208     o Updated KPP to latest version from JPL
1209     o Added a COS(latitude) in horizontal viscosity
1210    
1211    checkpoint23
1212     o Added del^4 diffusion for salt and temperature
1213     o Multiple minor fixes (implicit none's, arguments to global_sum, etc.)
1214    
1215    checkpoint22
1216     o Made many small changes: implicit none, format(i5), etc...
1217     o Introduced KPP mixing scheme (compiles and runs but *not* tested)
1218    
1219    checkpoint21
1220     o Introduced new I/O package that supports direct-access records (mdsio.F)
1221     o Split-up mid-level I/O routines
1222     o Updated input data for experiments 0,1,2,4 and 5
1223     o Finally removed the genmake.* scripts (everyone seems happy with genmake)
1224    
1225    checkpoint20
1226     o Tidied up open-boundaries some more
1227     o Added non-hydrostatic code
1228     o Fixed some input data
1229     o Modified MPI start-up to work in "coupled" context.
1230    
1231    checkpoint19
1232     o Tidied up directory structure for verification experiments.
1233     o Added new code for open boundaries.
1234     o Corrected advective terms near boundaries.
1235     o Added CPP flag for "old UV" geometry and corrected spherical geometry.
1236     o Implemented free-slip/no-slip BCs and del^4 dissipation.
1237     o Split default parameters out of ini_parms.F into set_defaults.F.
1238    
1239    checkpoint18
1240     o Further changes for optional code generation with
1241       CPP - ugh!
1242    
1243    checkpoint17
1244     o Beginning to incorporating modularity
1245       for supporting atmos. and ocean configs.
1246     o Small changes for TAMC complinace
1247     o New ultra simple test case. Barotropic box
1248       configuration "exp0".
1249    
1250    checkpoint16
1251     o Minor changes to exchange routines to support
1252       accumulation in reverse mode. Adjoint of an
1253       assignment is an addition.
1254     o Changes to support compilation by TAMC (LR(1)
1255       syntax) and by g77 under Linux ( 72 character
1256       limit ).
1257    
1258    checkpoint15
1259     Rewrote exchange routines to allow
1260     o General tile <-> tile connectivity.
1261     o TAMC reverse mode flag ( is this really needed? )
1262     o Variable width overlap and exchange region widths.
1263     o Hooks for sharing data via DMA, Arctic, Memory Channel,
1264       shmput/shmget, VIA, SYSV shmem and every other cool
1265       communication method.
1266    
1267    checkpoint14
1268     Consistent isomorphism chages made. These allow dynamical core
1269     to support both pressure and meters as a vertical coordinate.
1270    
1271    checkpoint13
1272     Release which corrects global_max problem and a couple
1273     of KGM time-averaging diagnostic errors. Also contains
1274     a double-gyre experiment setup as well as the baseline
1275     4 degree global template. The double gyre template is
1276     organised to allow it to be applied automatically to
1277     the baseline configuration.
1278    
1279    branch-point-rdot
1280     A few tidy-ups have been made bt the real point of this
1281     check-point (excuse the pun) is to allow a branch to be
1282     made for the purposes of adding the rDot alterations.
1283     I don't want to commit the rDot to the main-trunk until
1284     we've actually tested it...
1285    
1286    checkpoint12
1287     Tidy up and added generic genmake script (formerly
1288     configure script).
1289     Released to testers.
1290    
1291    checkpoint11
1292     Re-arranged initialise() and introduced ini_vertical_grid()
1293     and ini_masks_etc().
1294    
1295    checkpoint10
1296     Introduced the configure script.
1297     Separated out the diags package.
1298     Added template for writing time-averages of tile/intermediate quantities.
1299     Updated SIZE.h in exp2 and made the data big-endian.
1300    
1301  checkpoint9  checkpoint9
1302   MPI fix. Filename changes (meta/data). salbin*y stuff.   MPI fix. Filename changes (meta/data). salbin*y stuff.
1303   General tidy-up.   General tidy-up.

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.192

  ViewVC Help
Powered by ViewVC 1.1.22