--- MITgcm/doc/tag-index 2003/06/20 05:43:06 1.53.4.44 +++ MITgcm/doc/tag-index 2002/05/01 01:35:30 1.71 @@ -1,334 +1,86 @@ -$Header: /home/ubuntu/mnt/e9_copy/MITgcm/doc/tag-index,v 1.53.4.44 2003/06/20 05:43:06 heimbach Exp $ +$Header: /home/ubuntu/mnt/e9_copy/MITgcm/doc/tag-index,v 1.71 2002/05/01 01:35:30 jmc Exp $ Notes on tags used in MITgcmUV ============================== -untagged: -o minor changes to pkg/seaice pkg/cost/cost_ice.F - and verification/natl_box_adjoint/README -o Modif's to enable tangent linear run in ECCO environment - including time-dependent forcing - * main problem is missing call mdsreadfield out of exf_set_gen - (i.e. computation of trajectory in TLM mode) - * incorrect g_active_write_... - * (re-) init of bar files and g_bar files - * still a problem for TLM of seaice code... later. -o Reverted back to 3-dim. tbar, sbar for SST, SSS bar files. -o MERGES: - * obcs/ ctrl/ G. Gebbie code - (major changes in ctrl handling, volume flux balancing etc.) - * cost/ ctrl/ A. Koehl code - - new cost contributions (new data types) - - efficient pack/unpack for time-dependent 2-d fields -o replaced mutiple ctrl_get... by single generic ctrl_get_gen.F - (except obcs) -o somewhat cleaned package initialisation sequence for - ctrl/ cost/ ecco/ - -ecco_c50_e32 -o Patrick's adjoint-model storage directives for pkg/seaice -o merged with checkpoint50g_post (pkg/seaice and verification/lab_sea) - - added SEAICE_MULTILEVEL for 8-category sea-ice thermodynamics - - LSR sea-ice dynamic solver moved to SouthWest B-grid location and - made the default because of faster convergence than ADI -o Modifications for adjoint of SEAICE_ALLOW_DYNAMICS - - extended state in checkpoint_lev... - - in lsr.F, replaced GO TO by fixed loop index (also avoid DO WHILE) - - YEAH: in lsr.F, (first) successful use of CADJ LOOP = ITERATION - - avoid stoing in S/R budget for now - - in dynsolver.F, avoid NPSEUDO loop for adjoint - - new comlev1_lsr in the_main_loop -o Small modif's in lsopt/, optim/ to ease compilation - New script to run optim (lsopt) - -ecco_c50_e31 -o exf totally restructured - - replaced all exf_set_ routines by one generic exf_set_gen.F - and made sure it's still differentiable - - split exf_getffields.F into new exf_bulkformulae.F - - exf_inscal_/exf_outscal_ suffixes consistent with field names -o New cost function: Tini-Tfin to do model spinup optimization. -o Started new verification exp for Tini-Tfin optimization. - -ecco_c50_e30 -o corrected CPP option mismatch in exf_Bulk... functions for case - #define ALLOW_ATM_WIND && #undef ALLOW_ATM_TEMP -o Merging from release1_p13 and from icebear5 - - bug fix for pkg/seaice dynamic solver - - Added SEAICE_initialHEFF to pkg/seaice - - Additional options for pkg/cost/cost_ice.F - - Updates to verification/natl_box_adjoint - - pkg/ctrl/ctrl_init.F - Fix for determination of startrec and endrec. - - pkg/cal/cal_toseconds.F - Fix for negative intervals shorter than 1 day. - -ecco_c50_e29 -Bug fix for merging between c50 and KPP. -ikey was passed from thermodynamics to kpp_calc via -common block rather than being recomputed in kpp_calc, -in contradiction with new key itdkey. -New key ikppkey created, and tamc.h headers updated. - -ecco_c50_e28 -o major merge: - ecco-branch merged with checkpoint50 - gmredi now available, grdchk, DIVA up-to-date for MPI - However, two outstanding problems: - - kpp adjoint is broken, needs fixing! - - a few minor modif's in handling of CPP option - ALLOW_TANGENTLINEAR_RUN in conjunction with - ALLOW_ECCO_OPTIMIZATION are necessary to enable - TLM runs with ECCO setup - -ecco_c44_e27 -o exf: - - Enable initialisation of forcing fields to constant - (runtime) values. - - in exf_getffields.F - Reduce i-/j-loop to interior domain, discarding overlaps. - That also fixes wrong TAF-key computations for key_1, key_2 - with bulf formulae. - - exf_init.F modify #ifdef for exf_init_evap - - exf_getffieldrec.F, ctrl_getrec.F - The following INT-usages are not safe: - fldsecs = int(fldsecs/fldperiod)*fldperiod - fldcount = int(fldsecs/fldperiod) + 1 - and were modified. - - added repeatPeriod (from MAIN branch) -o grdchk: updated and merged - - has both ADM and TLM checks - - works for single- and multi-proc. - - output cleaned - - worked successfully for parallel DIVA - Needed one update in EEPARAMS.h and updates in ctrl package - More modif's may be necessary for ECCO code to support TLM. -o autodiff: checkpoint_lev... - - updated storing for bulk formulae (some arrays were missing) - - added state for seaice package - - synchronized with main branch -o DIVA: - Modif.s in - - cost_init.F - - cost_averagesfields.F - - ecco_the_main_loop.F - - ecco_the_model_main.F - and added cost_final_restore.F cost_final_store.F - o With these changes, it is possible to fully separate - the first forward run to compute the cost function (mdthe_main_loop) - and adjoint runs over individual DIVA intervals (adthe_main_loop) - into separate model executions. - This enables better tuning of DIVA to given queue sizes. - o Loss of cost function value in consecutive DIVA runs is - fixed by storing to 'costfinal' file. - o Appropriate call of ctrl_unpack/_pack,grdchk_main at - beginning/end of adjoint integration is accounted for. - The current changes apply to TAF-1.4.26. - TAF has one remaining bug, requiring one manual change - (see MITgcm manual). -o bug fix plus modif for ubar, vbar in cost_averagesfields -o cal: synchronized between MAIN and ecco-branch - -icebear4 -o Added cost_ice for sea-ice volume sensitivity experiment. -o ecco_the_model_main.F: SEAICE_WRITE_PICKUP must precede WRITE_CHECKPOINT -o Reduced derivative singularities in pkg/seaice. -o Updated verification/natl_box_adjoint - -icebear3 -o Removed spurious iikey and idkey -o pkg/exf - - bug fix in treatment of downward radiation -o pkg/seaice - - added initial sea-ice thickness parameter SEAICE_initialHEFF -o updated verification/natl_box_adjoint - -icebear2 -o Added missing /* */ to CPP comments in pkg/seaice, pkg/exf, - kpp_transport_t.F,and ecco_the_main_loop.F -o adjoint-friendly modifications to pkg/seaice -o added verification/lab_sea as per release1_p12_pre - -ecco_c44_e26 -o Merging pkg/exf and pkg/seaice from cvs tag ecco_ice2 -o exf: Modifications to correctly handle evap field for adjoint -o grdchk: - Added code to perform gradient checks for bulk formulae/atmos. state - (atemp, aqh, uwind, vwind). - NOTE: - This package is out of synch with c48 package. - The latter also has the tangent linear gradient checks. - Need to be merged. -o verification/natl_box_adjoint: - * added new setup: code_bulk/, input_bulk, results_bulk - (Experiment 2, described in README) - uses bulk formulae and atmos. state as control instead of - air-sea fluxes. - Performs gradient checks for first 4 elements of atemp control. - * changed standard verification to perform - gradient checks on first 4 elements on hflux control. - * gmredi switched off (will come after merge with c48). - -ecco_c44_e25 -o Merging some GM changes from main trunk (c47) to ecco-branch. -o Updating verif. natl_box_adjoint with GMRedi. -o Adding setup with explicit differentiaton of pressure solver. -o Bug fix: missing OBCS_OPTIONS.h for sponge layer code. -o (Re-?) Commiting old bug fixes in kpp to ecco-branch - (kpp_calc.F, kpp_routines.F) -o exf: - updated external forcing package - - cleaned old exfa stuff - - bug fixes - (missing OBCS_OPTIONS.h in two routines) - - enable easy to use "no forcing". - - added exf I/O for atmospheric loading - - added exf I/O for runoff data - - transfered scaling between exf <-> MITgcm to exf namelist - -ecco_c44_e24 -o modifications to gradient check package (Martin Losch) - - enable centered differences - - modified format of standard output -o bug fix for nwettile contents - so far assumed global sum in first entry (1,1,k), - needed for global control vector - -> introduced new variable nwet[c/w/s]global(nr) -o shifts of calls to cal/exf package to be accessible - in MITgcm stand-alone -o shifted packages_init_variables before convective_adjustment_ini - (corresponding update of TAF tape initialisation). -o removed auxiliary field in impldiff - (caused numerical differences for GMRedi cases) -o updated obcs control part (G. Gebbie) -o removed some f90 comments ("!") -o Bug fixes and updates in cost package - * cost_final: correct multiplier mult_tauv, mult_sflux - * cost_hyd: added call cost_ssh - * cost_init_barfiles.F: replaced arrays by tmpfld's - * cost_readtopexmean.F: ersmask -> tpmeanmask - * cost_weights.F: corrected wtheta[2], wsalt[2] -o cleaned exchanges in cg2d.F - -ecco_c44_e23 -merged patches between release1_p1 and release1_p2: -o fixed array boundary problem for adjoint - (related to partial recomputation within subroutine - related to dynamics -> calc_viscosity -> mom_... -o fixed recomputation in thermodynamics -o prepare (but not complete) recomputation problem in impldiff -o fixed problem for adjoint of global_max -o switched off sponge layer code in external_forcing -Bug fix in ctrl_mask_set_yz (spotted by G. Gebbie) - -ecco_c44_e22 -o Finally, the merges with the Scripps cost function terms: - Various additions, modifications, quality checks. -o Plus: Included switch ALLOW_AUTODIFF_MONITOR to handle - monitoring of adjoint state. -o Plus: removed comm_stats, ini_communication_patterns from diff. list - (no more need to "keep" MPI headers for adjoint generation) -o Plus: exf changes: - o added run-off routine - o additional storing needed for ustress,vstess - because of state-dependent quality check - o added missing initialisations -o Plus: genmake with MAKEDEPEND variable was still missing in ecco-branch -NB: - verification/natl_box_adjoint/ 240 steps run - * looks ok under Linux (twain.lcs.mit.edu) - * looks ok on MIT SUN's (fjord.mit.edu) - * NaN in reverse mode on Scripps SUN's at iter=214 - * NaN in reverse mode on IBM SP3 (BlueHorizon) at iter=204 - - 1 year forward int. global 2x2 deg. produces similar cost functions - * all cost terms of new code are slightly smaller (0.5 to 3%). - -ecco_c44_e21 -o reversed order of ctrl/cost initialisation -o gmredi_slope_psi.F: Inconsistent types in MIN/MAX expressions -o modified to enable ctrl field swapping -o bug fix for global sum of ncvarlength in ctrl_init -o no more call to ctrl_unpack from ctrl_init -o no more write of ctrl vector in ctrl_pack - however, init. of control vector from ctrl_unpack -o various bug fixes & consistent nobcs handling in - ctrl_pack/unpack routines (by G. Gebbie) -o optim package: Added obcs control part for lsopt I/O - (by G. Gebbie) -o missing call to obcs_diags -o moved calls in packages_init_fixed to packages_readparms - because some quantities are needed earlier. - -ecco_c44_e20 -o before major merges from the Scripps setup - here are two small updates: - - field swapping for surface flux controls enabled - (remains t.b.d. for atmos. state plus obcs) - - bug fix in active_file.F for xz-/yz- routines - - added missing xz-/yz- routines to active_file_ad.F - -ecco_c44_e19 -o merged necessary patches: - - AD-related changes for GMRedi - - fixes i KPP (delZ -> drF) - - hook to OBCS songe layer code in external_forcing - - errorMessageUnit non-zero in eeboot.F - - included GMREDI, EXACT_CONSERV to natl_box_adjoint verif. - -ecco_c44_e18 -o sponge layer code for obcs was missing - - added hook in external_forcing.F - - added storing for TAF -o new routine cost_init_barfiles to initialise - adjoint fields adtbar, adsbar, adpsbar - (needed in conjunction with corrected ladinit for active I/O) -o cleaned up and corrected order in packages_readparms, ecco_readparms -o corrected and simplified weights for obcs controls - - weight fields simplified - - bug fix in ctrl_pack - - no more write of control vector in ctrl_pack -o i/j index bug fixes in cost_ssh_mean - -ecco_c44_e17 -o bug fixes in cost package - * wrong identifier for active I/O of monthly mean psbar - (cost_averagesfields, cost_ssh) xx_psbar_dummy - * cleaned all identifier for active I/O of monthly fields - * wrong ladinit in various cost routines -o merge with interval (chkpt44c_post - chkpt44d_post) - * added missing EXCLUDE_MONITOR flags - * changed "e" to "_d" in gmredi_slope_limit, gmredi_slope_psi - (incompatible typ in MIN/MAX expressions caused problems - on IBM SP3) - * in genmake added variable MAKEDEPEND - plus resetting for case SunOS - added timer_stats.c routine for IBM SP3 - * removed variables in dynamics - -ecco_c44_e16 -o new ECCO checkpoint, the first since ecco_c43_e15 - which is branched from MITgcm. - All changes were merged in between (see ecco-branch-mod? tags). -o last changes: - * assuming path for TAF and TAMC are known (e.g. in $path) - * genmake: - - added tools/xmakedepend to circumvene shortcoming of - SUN's makedepend (size too small) - - invoking ../tools/xmakedepend instead of makedepend - - changed compiler flags for case SunOS - -ecco-branch-mod5 -o mod's to reproduce open boundary run -o enable field swapping for OB's and climatology -o update store directives for OB control -o added option ALLOW_OBCS_PRESCRIBE -o call of getobcs now out of obcs_calc (param. list modified) - -ecco-branch-mod4 -o this is the second part of changes necessary to reconcile - the natl_box_adjoint verification (with and without grdchk). - >>>!!! CHANGES BETWEEN THE TAGS ecco-branch-mod3 !!!<<< - >>>!!! AND ecco-branch-mod4 !!!<<< - >>>!!! SHOULD BE MERGED INTO THE MAIN TRUNK !!!<<< +checkpoint45a_post +o compute Rho over the whole domain (extend iMin,jMin indices) +o specific exchange for X-slice domain (case Ny=1) +o argument futureIter of S/R obcs_calc missing in exp4 & internal_wave /code +o solve_for_pressure : set cg2d_x to zero where OBCS are applied + +checkpoint44h_post = checkpoint45 +o Fix to restore differentiability: + place at which packages_init_variables is called in + initialise_varia is crucial for reverse control flow. +o modifications in GMRedi to enable stable adjoint + (corresponding modif's in thermodynamics, dynamics) +o added missing hook for sponge layer code in external_forcing +o modified test cost functions +o storing in gad_advection (plus removal of write(0,*)! +o missing headers TR1.h added in convective_adjustment routines +o errorMessageUnit set non-equal zero in eeboot + (conflict on some platforms, e.g. IBM SP3) +o modified carbon verif. + +checkpoint44h_pre +o vertical grid option: allow to put the Interface at the middle between + 2 cell-centers ; replace delZ in pkg/kpp by drF. +o GM Advective form: Tracers are advected using the residual transport (= + Euler+GM-bolus); set param GM_AdvSeparate=T to return to previous form. + +checkpoint44g_post +o fix surface correction term in multiDimAdvection (affects plume_on_slope + results) ; ifdef missing in thermodynamics.F + +checkpoint44f_pre,checkpoint44f_post +o added PTRACERS package + This allows an arbitrary number of passive tracers to be integrated + forward simultaneously with the dynamicaly model. + + Implemented so far: + - basic forward algorithm (time-stepping, advection, diffusion, convection) + - I/O and checkpointing + - GM/Redi *but* using the GM/Redi coefficient of Salt + + Not implemented so far: + - KPP + - OBCS + + No specific example supplied (yet) but global_ocean.90x40x15 has the + necessary data.ptracer file. Simply use -enable=ptracers and uncomment + line in data.pkg. + + This package is disabled by default since it increases storage. + + +o testscript: added -cleanup option +o Shap_filt: a) new shap_filt S/R to use no-slip BC with S2 filter + b) enable to filter 2D fields. + +checkpoint44e_pre,post +o re-wrote convective adjustment to use pre-calculated weights + Affects: model/src/convective_adjustment.F, convective_adjustment_ini.F + Adds: model/src/convective_weights.F, convectively_mixtracer.F + Original calls to convect() still in place. + +chkpt44d_pre,post +o added missing EXCLUDE_MONITOR flags +o changed "e" to "_d" in gmredi_slope_limit, gmredi_slope_psi + (incompatible typ in MIN/MAX expressions caused problems + on IBM SP3) +o in genmake added variable MAKEDEPEND + plus resetting for case SunOS +o added timer_stats.c routine for IBM SP3 +o removed variables in dynamics +!!! I forgot to create tag chkpt44d_pre !!! +!!! But chkpt44d_pre = chkpt44c_post !!! + +o real fresh water flux implemented with non-linear free-surface. + +chkpt44c_pre,post +o few fix (mask in shap_s2, EmPmR in external_field_load, + USE_NATURAL_BCS in solve_for_P); +o add arguments myIter & myTime to S/R obcs_calc & solve_for_P + +checkpoint44b_pre/_post +o merge of relevant stuff from the ecco-branch: - genmake: removed $S64 overwrite for case SunOS - pkg/exf: update and corrections for field swapping and obcs - pkg/ecco: parameter lists for the_model_main, the_main_loop @@ -336,41 +88,20 @@ - pkg/autodiff: added flow directives for obcs, mdsio_gl_slice updated checkpointing_lev... lists for obcs - model/src: minor changes in forward_step, plot_field + added directive for divided adjoint in the_main_loop - pkg/mdsio: added mdsio_gl_slice -ecco-branch-mod3 -o this is the first part of changes necessary to reconcile - natl_box_adjoint verification (with and without grdchk). - This set of changes is relevant for ECCO only. - The next set/tag of changes (ecco-branch-mod4) - should be merged into the main trunk. - - update some options - - parameter lists of ecco_the_model_main and ecco_the_main_loop - differed from those of the MITgcm counterparts. - -ecco-branch-mod2 -o update ecco-branch-mod1 to checkpoint44 -o exclude from updates: - - verification/ - - adjoint/ - - pkg/cost - - pkg/ctrl - - pkg/ecco - - pkg/obcs - - model/src/the_model_main.F - - model/src/the_main_loop.F +o check parameters & config (chkpt44a_pre,post) +o OBC and NonLin_FrSurf. checkpoint44 -o apply Shapiro filter on T&S before calc_PhiHyd (stagger time stepping) o fix bug in mom_vi_del2uv +o select when filters are applied ; add options to zonal_filter (data.zonfilt) +o gmredi: fix Pb in the adiabatic form ; add options (.e.g. Bolus advection) +o update AIM experiments (NCEP input files) +o improve and extend diagnostics (Monitor, TimeAve with NonLin-FrSurf) o added some stuff for AD -ecco-branch-mod1 -o based on c43 -o replaced packages cost, ctrl, ecco, obcs -o removed MITgcm verif.'s, added ECCO verif.'s -o added lsopt, optim for line search optimization. - checkpoint43 o added two new advection tests o added global 4x4 degree ocean test