--- MITgcm/doc/tag-index 2003/02/15 14:22:39 1.53.2.29 +++ MITgcm/doc/tag-index 2003/01/26 21:38:04 1.124 @@ -1,39 +1,85 @@ -$Header: /home/ubuntu/mnt/e9_copy/MITgcm/doc/tag-index,v 1.53.2.29 2003/02/15 14:22:39 dimitri Exp $ +$Header: /home/ubuntu/mnt/e9_copy/MITgcm/doc/tag-index,v 1.124 2003/01/26 21:38:04 jmc Exp $ Notes on tags used in MITgcmUV ============================== -untagged -o Added missing /* */ to CPP comments in pkg/seaice, pkg/exf, - kpp_transport_t.F, forward_step.F, and the_main_loop.F -o pkg/seaice: - - adjoint-friendly modifications - -release1_p12_pre -o Updated useSingleCpuIO option in mdsio_writefield.F to - work with multi-field files, e.g., for single-file pickup. -o pkg/seaice: - - bug fix in growth.F: QNET for no shortwave case - - added HeffFile for specifying initial sea-ice thickness - - changed SEAICE_EXTERNAL_FLUXES wind stress implementation - -release1_p11 -o Modifications for using pkg/exf with pkg/seaice - - improved description of the various forcing configurations - - added basic radiation bulk formulae to pkg/exf - - units/sign fix for evap computation in exf_getffields.F - - updated verification/global_with_exf/results/output.txt -o Added pkg/sbo for computing IERS Special Bureau for the Oceans - (SBO) core products, including oceanic mass, center-of-mass, - angular, and bottom pressure (see pkg/sbo/README.sbo). -o Lower bound for viscosity/diffusivity in pkg/kpp/kpp_routines.F - to avoid negative values in shallow regions. - - updated verification/natl_box/results/output.txt - - updated verification/lab_sea/results/output.txt -o MPI gather, scatter: eesupp/src/gather_2d.F and scatter_2d.F -o Added useSingleCpuIO option (see PARAMS.h). +o r* coordinate added in #ifdef NONLIN_FRSURF block. + (modification to pressure gradient not yet implemented) +o mom_fluxform: new S/R mom_calc_rtrans.F computes vertical transports + (for U & V) that are used for vertical advection of momentum. + +checkpoint48a_post +o In preparation for r*, use temp. array to compute vertical transport + in flux-form momentum pkg. => change results of few test-exp. + Update output of: exp4, exp5, front_relax, global_ocean_pressure, + lab_sea, natl_box & plume_on_slope + +checkpoint48 +o fix small bug that was causing lot of warning (TIMER_STOP 'UPDATE_CG2D') + +checkpoint47j_post +o add new exp. (ideal_2D_oce) to test "exotic" parameters and options. +o moved adexch from forward_step to addummy_in_stepping +o added exch in ctrl_map_... +o aveFreq.=0. at end of cost_final to avoid overwrite in + reverse checkpointing loop +o Yet more changes in gmredi: + * adgmredi_calc_tensor + avoiding all recomputation of gmredi_slope_limit + * adgmredi_x/y/rtransport + added flag for excessive storing to avoid recomp. of + u/v/rtans, dTdx/y/z + -> this is not really necessary and very memory-consuming + * adgmredi_slope_psi: + consistency with gmredi_slope_limit in treatment of GM_slopeSqCutoff + * gmredi_slope_limit + re-activated full calculation of taperfct for case 'ac02' +o updating verification/ adjoints of carbon, global_ocean.90x40x15 + +checkpoint47i_post +o GM_EXCLUDE_() replace GM_TAPER_(): by default, all the code is compiled. +o add GM_Small_Number & GM_slopeSqCutoff as run-time parameters (data.gmredi) + default values = 1.D-12 & 1.D+48 (=> give same results as checkpoint47f_post) +o cg2dTargetResWunit: define tolerance using deltaTmom (and not deltaTfreesurf) +o gmredi: fix few bugs. + +checkpoint47h_post (duplicate tag for PH's c48 tag, in order to move c48) +This will be a good checkpoint to plug into the ecco-branch. +o few modif.'s to get latest version adjointed + (mainly kick out code in ini_linear_phisurf) +o modif's to run adjoint with exactConserv +o case GM_BOLUS_ADVEC should be cleaned + S/R gmredi_slope_psi should be cleaned +o verification/carbon now has exactConserv=.TRUE. + +checkpoint47g_post +o time-average AIM output: becomes independent from statvars time-average + (can be used with #undef ALLOW_TIMEAVE) ; add new variables (e.g., RH) +o After TAF bug fix: + Tested adjoint of gmredi package. + Tests were done with checkpoint47 rather than with latest + checkpoint47f_post since the latter is broken for the adjoint + verification/carbon/ contains both ADM and TLM gradient checks. +Here they are, before they get changed/lost/stolen. +Mostly modif.'s to fix numerical sensitivities. +Gradient checks OK for +- GM_taper_scheme: + * clipping + * ac02 + * linear + * glw91 + * dm95 + * ldd97 +- GMREDI_OPTIONS: + * GM_VISBECK_VARIABLE_K + * GM_NON_UNITY_DIAGONAL + * GM_EXTRA_DIAGONAL + * GM_BOLUS_ADVEC +in conjunction with data.gmredi parameters to be checked in +in a few minutes under verification/carbon/code/ -release1_p10 +checkpoint47f_post +Merging from release1_p10: o modifications for using pkg/exf with pkg/seaice - pkg/seaice CPP options SEAICE_EXTERNAL_FORCING and SEAICE_EXTERNAL_FLUXES @@ -44,7 +90,32 @@ - verification/lab_sea default experiment now uses pkg/gmredi, pkg/kpp, pkg/seaice, and pkg/exf -release1_p9 +checkpoint47e_post +o created a tag prior to creating a branch + +checkpoint47d_post +o fixed bug in the oceanic pressure coordinates code: vertical viscosity + at the bottom boundary had an erroneous half slip boundary condition +o added bottom drag and no slip boundary condition capabilities to + oceanic pressure coordinates code +o added new verification experiment global_ocean_pressure, this experiment is + also described in the tutorial section of the manual +checkpoint47d_pre + +checkpoint47c_post +o Added a verification experiment for a global cubed-sphere ocean run + - verification/global_ocean.cubed32x32x30 + - uses pkg/therm_seaice and pkg/bulk_forcing + +o allow to run AIM physics with SPEEDY input files (from Franco Molteni) +o allow a more accurate definition of Ro_Surf (selectFindRoSurf=1) + when using P-coordinate; only implemented for atmospheric config. +o OCEANICP & realFreshWater: include P-E direct effect on wVel ; + NOTES: requires option NONLIN_FRSURF to be "#define". +o update advect_xz/results/output.txt (left from checkpoint44g_post) + +checkpoint47b_post +Merging from release1_p9: o pkg/seaice - removed GOTO's and added taf directives - double precision constants to reduce the g77 (Linux) @@ -60,7 +131,54 @@ - added missing matlab routines - added test of thermodynamics parallelization -release1_p8 +checkpoint47a_post +o new pkg: aim_v23 + = F. Molteni atmos.physics (SPEEDY, ver23) adapted to MITgcm. + for now, keep the same surface forcing as before. + - Part-Cell implemented into AIM; check that Heat & Water are conserved + - aim.5l_cs: use new aim pkg (run 10yr & get better results than before) + - aim.5l_LatLon & aim.5l_Equatorial_Channel are still using old aim pkg +o add diagnostic of surface correction term in monitor output + +o bulk_force and therm_seaice +- Two packages: bulk_force (Bulk forcing) + and therm_seaice (thermodynamic_seaice) - adopted from LANL CICE.v2.0.2 +- Earlier integration from Stephaine Dutkiewicz + and Patrick Heimbach. +- Two ifdef statements for compile time, + ALLOW_THERM_SEAICE and ALLOW_BULK_FORCE + +checkpoint47 +differentiable version of checkpoint46n_post +o bug fix in quasihydrostaticterms +o * "clean" adjoint code (in terms of extensive recomputations) + can now be obtained for all GMREDI options (i.e. for + - GM_VISBECK_VARIABLE_K + - GM_NON_UNITY_DIAGONAL + - GM_EXTRA_DIAGONAL + - GM_BOLUS_ADVEC ) + * However, wrong gradient check problem remains unsolved. + * New CPP options have been introduced for different + tapering schemes +o external_fields_load now part of differentiation list +o pressure needs multiple storing; + would be nice to have store_pressure at beginning or + end of forward_step, e.g. by having phiHyd global (5-dim.) + (NB: pressure is needed for certain cases in find_rho, + which is also invoked through convective_adjustment). +o recomputations in find_rho for cases + 'JMD95'/'UNESCO' or 'MDJWF' are OK. +o #define ATMOSPHERIC_LOADING should be differentiable +o ini_forcing shifted to begining of initialise_varia +o Incorporating QNVS line search routines into MITgcm + (this is separate code, and therefore not under pkg) + lsopt/, optim/ +o Updated verification/carbon/ + - #define GM_VISBECK_VARIABLE_K + - GM_taper_scheme = 'ldd97' + +checkpoint46n_post +Merging from release1_p8: o verification/natl_box: updating new external_fields_load routine o New package: pkg/seaice @@ -87,8 +205,6 @@ g d e n d n x n . n x n . n x n . n x n . Y Y Y Y 5 5 7 7 7 8 10 9 6 6 6 6 7 5 7 5 7 FAIL lab_sea - -release1_p7 o GAD: - generated new common blocks to account for call of same gad routines with differing traceridentities @@ -115,45 +231,198 @@ the exf (and cal) package instead of the external_fields_load routine (cf README file). -release1_p6 +checkpoint46m_post +o modified testscript to return -- when there are no lines of "%MON" output +o added new flag "quasiHydrostatic" for QH mode + and new routine quasihydrostaticterms() +o added 2*Omega*Cos(phi)*W to u equations (non-hydrostatic Coriolis term) + New routine: mom_u_coriolis_nh() +o fixed sign of non-hydrostatic metric terms in u and v equations. + Depend on correct sign of gravitySign. +o added work.pc* to .cvsignore in aim directories using ifc +o introduced flag for controllin non-hydrostatic metric terms +o removed gravitySign from PARM04 +o switched to g77/ifc from pgf77 in aim experiments + +checkpoint46l_post +o made convective adjustment work with pressure coordinates: + - changed the direction of k-loop in convective_adjustment.F for the + case of pressure coordinates (OCEANICP,ATMOSPHERIC buoyancyRelation) + - adjusted the reference pressure k-index in convective_adjustment.F + - adjusted the convection condition in convect.F (in analogy to + calc_ivdc.F) + - convective_adjustment no longer computes anything on the halos + - removed the warnings about negative salinity from find_rho.F and + find_alpha.F; instead the new routine look_for_neg_salinity, called + at the beginning of find_rho, find_alpha, and find_beta, does a + check of the entire slice, if CPP-option + CHECK_SALINITY_FOR_NEGATIVE_VALUES is defined +checkpoint46l_pre + +checkpoint46k_post o fixed the verification/global_ocean.90x40x15 experiment: - new bathymetry (the world according to A., JMC, and M.) - new initial fields and forcing fields (*.bin files) - new POLY3.COEFFS (for the next release one should switch to a full - equation of state) + equation of state: JMD95P or MDJWF) - fixed several errors and redundancies in the data file - experiment uses looped cells - added matlab directory with diagnostic scripts for plotting of output -release1_p5 -o import recent fix from MAIN branch: - - use recip_dx*,recip_dy* instead of /dx*,/dy* in orlanski_E,W,N,S - - change phiMin in exp1 (to agree with documentation) - from checkpoint45 to checkpoint45a_post: - - specific exchange for X-slice domain (case Ny=1) - - argument futureIter of S/R obcs_calc missing in - exp4 & internal_wave /code - - solve_for_pressure : set cg2d_x to zero where OBCS are applied - from checkpoint44f_post to checkpoint44g_post: - - fix surface correction term in multiDimAdvection - (affects plume_on_slope results -o bug fix in packages_readparms (missing ALLOW_CALENDAR) -o bug fix in CG2D.h (correct array size for LETS_MAKE_JAM -o Adjoint-related bug fixes in kpp: - - kpp_calc: sore of kpphbl avoids recomputation/call to S/R kppmix - - kpp_routines: store of Rib avoids partial recomputation bug of TAF. -o added Eliassen-Palm flux hooks (dynamics,ini_fields) -o removed unused TAF keys iikey, idkey (dynamics,thermodynamics) -o flow directives: - - new for S/R do_the_model_io - - enhanced for S/R checkpoint -o added Eliassen Palm flux controls to gradient check package +o S/R aim_initialise.F replace S/R aim_init from file aim_do_inphys.F: + - read AIM physics parameters from a file (data.aimphys) + - set defaults values = F.Molteni paper (Clim.Dyn., 2002) + +checkpoint46j_post +o split calc_exact_eta in 2 S/R : integr_continuity & update_etaH +o move wVel computation at the end of the time step, in S/R integr_continuity +o create specific S/R to exchange T,S before DYNAMICS (for stagger time step) +o update timeave pkg for wVel diagnostic. +checkpoint46j_pre + +checkpoint46i_post +o Clean up AIM package (and keep the results unchanged): + include CPP_OPTION and use IMPLICT NONE in all routines ; + declare all the variables _RL ; use _d 0 for all numerical constants. + use ifdef ALLOW_AIM everywhere. And now AIM can be used with g77 ! + +checkpoint46h_post +o cleaned up the use of rhoNil and rhoConst. + - rhoNil should only appear in the LINEAR equation of state, everywhere + else rhoNil is replaced by rhoConst, e.g. find_rho computes rho-rhoConst + and the dynamical equations are all divided by rhoConst +o introduced new parameter rhoConstFresh, a reference density of fresh + water, to remove the fresh water flux's dependence on rhoNil. The default + value is 999.8 kg/m^3 +o cleanup up external_forcing.F and external_forcing_surf.F + - can now be used by both OCEANIC and OCEANICP +checkpoint46h_pre + + Added code to convert surface volume flux (fresh water) into + a mass flux when using P coordinates in the ocean (OCEANICP). + Note: It assumes you have set rho0=rhoConst=density of fresh water. + +checkpoint46g_post +o Include a new diagnostic variable phiHydLow for the ocean model + - in z-coordinates, it is the bottom pressure anomaly + - in p-coordinates, it is the sea surface elevation + - in both cases, these variable have global drift, reflecting the mass + drift in z-coordinates and the volume drift in p-coordinates + - included time averaging for phiHydLow, be aware of the drift! +o depth-dependent computation of Bo_surf for pressure coordinates + in the ocean (buoyancyRelation='OCEANICP') + - requires a new routine (FIND_RHO_SCALAR) to compute density with only + Theta, Salinity, and Pressure in the parameter list. This routine is + presently contained in find_rho.F. This routine does not give the + correct density for 'POLY3', which would be a z-dependent reference + density. +o cleaned up find_rho + - removed obsolete 'eqn' from the parameter list. +o added two new verification experiments: gop and goz + (4x4 degree global ocean, 15 layers in pressure and height coordinates) +checkpoint46g_pre + +checkpoint46f_post +o Enable tangent linear (forward mode) gradient checks: + - extended active file handling to g_... files + - added TANGENT_SIMULATION to theSimulationMode + - extended grdchk package accordingly +o added tangent linear setup in verification/carbon/code_ftl +o added adjoint setup in verification/front_relax/code_ad + +checkpoint46e_post +o Added new equation of state -> MDJWF + - EOS of McDougall et al., 2002, JAOT, submitted + - caveat: the equation of state is only valid for a smaller (more + realistic?) range of values than JMD95P/Z and UNESCO + - added masks to the calculation of pressure in store_pressure + - added more check values for density in check_eos (ini_eos.F), some of + the old check values are out of the range of the MDJWF-eos, so don't + expect perfect matches for those +checkpoint46e_pre + +checkpoint46d_post +o fixed store_pressure to work with both buoyancy relation = 'OCEANIC' and + 'OCEANICP', also initialised field pressure correctly in ini_eos in the + case of pressure coordinates. eosType='JMD95Z' in + combination with buoyancyRelation='OCEANICP' now causes an error. +o Changed p = pressure(i,j,k,bi,bj) to p = pressure(i,j,kRef,bi,bj) + in find_alpha/beta. +checkpoint46d_pre + +o Changed p = pressure(i,j,k,bi,bj) to p = pressure(i,j,kRef,bi,bj) + so that JMD95Z and JMD95P give approptiate static stability in find_rho. + +checkpoint46c_post +o Changes necessary for ocean in p-coordinates + - Added new buoyancy relation = 'OCEANICP' + - Added new parameters = gravitySign (this used to be contained inside + the factor dRdZ which I added when we first switched to R coordinates). + X GM/Redi is not compatible (yet) + X bottom drag and no-slip need to be debugged. +checkpoint46c_pre + +checkpoint46b_post +o Added new equation of state -> JMD95Z and JMD95P + - EOS of Jackett and McDougall, 1995, JAOT + - moved all EOS parameters into EOS.h + - new routines ini_eos.F, store_pressure.F +o Added UNESCO EOS, but not recommended because it requires + in-situ temperature (see JMD95) +o Modified formatting for knudsen2.f in utils/knudsen2 and added + unesco.f to be used with POLY3 +checkpoint46b_pre + +checkpoint46a_post +o Added (atmospheric) pressure loading + - new field in FFIELDS.h, etc... + - new cpp flag ATMOSPHERIC_LOADING +o Changed hFacC to _hFacC in calc_phi_hyd.F +o Added SHORTWAVE_HEATING to some files for consistency +checkpoint46a_pre + +checkpoint46 +further merges from release1_p5 o new ctrl package - adopted from ECCO environment to enable optimization - added Eliassen Palm fluxes to controls - - adjusted global_ocean.90x40x15/ and carbon/ accordingly +o added Eliassen Palm flux controls to gradient check package +o cost package + - Compatible with new ctrl package + - added Eliassen Palm cost hooks + - modif's of existing cost functions +o Adjoint-related bug fixes in kpp: + - kpp_calc: sore of kpphbl avoids recomputation/call to S/R kppmix + - kpp_routines: store of Rib avoids partial recomputation bug of TAF. +o autodiff package + - flow directives: + + new for S/R do_the_model_io + + enhanced for S/R checkpoint + + new gmredi.flow + - Introduced CPP option ALLOW_AUTODIFF_MONITOR to + disable adcommon.h/g_common.h by default. + - fixed problem for adjoint of global_max +o modified verification/carbon/ +o New setup for adjoint of global_ocean +o added hooks for Eliassen Palm fluxes (dynamics.F, ini_fields.F) +o cleaned TAF keys iikey, idkey (dynamics.F, thermodynamics.F) +o incorporated hooks for sponge layer code (external_forcing.F) + +checkpoint45d_post +o import 2 fixes from release1_p5 (CG2D.h & packages_readparms.F) +o use recip_dx*,recip_dy* instead of /dx*,/dy* in orlanski_E,W,N,S + (affects plume_on_slope "cg2d" output) +o add new parameter deltaTfreesurf for free-surface time stepping +o exchange gT,gS when using staggerTimeStep & GM & Oly<4 +o NONLIN_FRSURF: rescale gNm1 to get a better conservation with A-B +o change phiMin in exp1 (to agree with documentation) +o add new flags: + - T,S forcing inside/outside Adams-Bashforth + - turn off temp,salt advection and/or forcing + - for each tracer, define internal flag for multiDimAdvection & A-B +o monitor: change definition of KE to check conservation of Energy -release1_p4 +checkpoint45c_post o Removed f90 comments ("!") o Modified initialisations to enable exf package for MITgcm (without invoking ECCO_PACKAGE). @@ -161,38 +430,74 @@ - enable centered differences - modified format of standard output -release1_p3 -o added tangent linear setup to verification/carbon/ -o added adjoint sensitivity setup to verification/global_ocean... -o moved packages_init_variables before convective_adjustment -o output of verif. which use GMRedi brought up-to-date with - MAIN trunk (those were re-created after changes in GMRedi) -o included CPP option SINGLE_LAYER_MODE - to configure barotropic setup (Martin Losch). -o Removed auxiliary variable in impldiff - (caused numerical differences with MAIN trunk routine). -o Introduced CPP option ALLOW_AUTODIFF_MONITOR to - disable adcommon.h/g_common.h by default. -o Cleaned exchange calls in cg2d. - -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 - -release1_p1 -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 - - modified test cost function and carbon verif. - -release1_chkpt44d_post = chkpt44d_post +checkpoint45b_post +o cleaned exchange calls in cg2d +o Included CPP option ALLOW_AUTODIFF_MONITOR in forward_step +o included CPP option SINGLE_LAYER_MODE in thermodynamics + to configure barotropic setup (Martin Losch) +o moved some initialisations within bi,bj loop in dynamics + (TAF flow dependency) +o in initialise_varia, moved call packages_init_variables + before convective_adjustment_init + (corresponding adjustment of TAF tape initialisation). +o in calc_diffusivity/calc_viscosity extended domain to full overlap. + +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 @@ -203,6 +508,8 @@ 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.