--- MITgcm/doc/tag-index 2001/07/30 20:47:52 1.43 +++ MITgcm/doc/tag-index 2002/12/02 13:28:30 1.107 @@ -1,8 +1,507 @@ -$Header: /home/ubuntu/mnt/e9_copy/MITgcm/doc/tag-index,v 1.43 2001/07/30 20:47:52 heimbach Exp $ +$Header: /home/ubuntu/mnt/e9_copy/MITgcm/doc/tag-index,v 1.107 2002/12/02 13:28:30 cheisey Exp $ Notes on tags used in MITgcmUV ============================== +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 + Sea ice model by D. Menemenlis (JPL) and Jinlun Zhang (Seattle). + The sea-ice code is based on Hibler (1979-1980). + Two sea-ice dynamic solvers, ADI and LSR, are included. + In addition to computing prognostic sea-ice variables and diagnosing + the forcing/external data fields that drive the ocean model, + SEAICE_MODEL also sets theta to the freezing point under sea-ice. + The implied surface heat flux is then stored in variable + surfaceTendencyTice, which is needed by KPP package (kpp_calc.F and + kpp_transport_t.F) to diagnose surface buoyancy fluxes and for the + non-local transport term. Because this call precedes model + thermodynamics, temperature under sea-ice may not be "exactly" at + the freezing point by the time theta is dumped or time-averaged. + N.B.: fairly large differences in accuracy occur across + different platforms/compilers; comparison between + g77 (Linux) and F77 (SGI Origin 2000/MIPSpro) + generated output gives: + T S U V + C D M c m s m s m s m s + n p a R g m m e . m m e . m m e . m m e . + f n k u 2 i a a d i a a d i a a d i a a d + 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 +o GAD: + - generated new common blocks to account for call of + same gad routines with differing traceridentities + (needed to modify tracerIdentity indices in GAD.h) + - generated separate common blocks for case useCubedSphereExchange + (Department of Futurology) + - parameter lists to gmredi_?transport: added tracerIdentity + - added new key indices to tamc.h +o external_fields_load: + - added this routine to TAF list + - needed to make some common blocks global and additional storing + along the same lines as exf package (checkpoint_lev?_directives.h) +o exf: + updated external forcing package + - bug fixes carried over from ecco-branch + (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 +o Adding new verification experiment global_with_exf. + This verification experiment is almost identical to the + global_ocean.90x40x15 experiment, except that it uses + the exf (and cal) package instead of the + external_fields_load routine (cf README file). + +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: 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 + +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 +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 + +checkpoint45c_post +o Removed f90 comments ("!") +o Modified initialisations to enable exf package for MITgcm + (without invoking ECCO_PACKAGE). +o modifications to gradient check package (Martin Losch) + - enable centered differences + - modified format of standard output + +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 +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 + harmonized between ECCO and MITgcm + - 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 + +o check parameters & config (chkpt44a_pre,post) +o OBC and NonLin_FrSurf. + +checkpoint44 +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 + +checkpoint43 +o added two new advection tests +o added global 4x4 degree ocean test +o added test of H&S94 with free surface on cube +o some final mods for gradient check, adjoint,... + +checkpoint42 + Fixed AD-related problems: +o Store directives up-to-date with re-arranged Adams-Bashforth + (mainly thermodynamics.F) +o New store directives for multi-dim. advection schemes + * new CPP flag ALLOW_MULTI_DIM_ADVECTION + * new common block and key passkey + (mainly gad_advection.F) +o Modified store directives for split of dynamics/thermodynamics + for the case ALLOW_KPP +o Cleaned argument list for timestep_tracer.F + +checkpoint41 +o re-formatted/added comments in prologues of key subroutines + to work with protex + +checkpoint40 +o moved calc_gs, calc_gt and calc_tr1 back to model/src +o added FLT (floats) package from Arne along with demo. experiment +o re-arranged Adams-Bashforth scheme for tracers to allow easier + implementation of forward-in-time forcing terms +o more mods for non-linear free-surface including new variable +o modified multi-dim method to work on cube +o bug fix in KPP (from DM) + +checkpoint40pre9 +o added DST advection schemes +o fix MPI bug on SGI's +o modifications for non-linear free-surface +o fixed conditionals for fixed flow/passive tracer only mode +o added tension/strain form of stress tensor +o changes to commenting of arguments for TAF/TAMC +o added/updated many matlab scripts +o added multi-dimensional advection method for tracers + +checkpoint40pre8 +o new package rw/ + Added method for dumping intermediate local arrays: + mdsio_writetile - same as mdsio_writefield except works from inside + bi,bj loop + mdsio_writelocal - same as mdsio_writetile except works for local + arrays + write_local_r? - higher-level wrapper for mdsio_writelocal + Controlled by diagFreq. Defaults to zero (ie. no dumps) + Example given at end of mom_vecinv.F that dumps some local arrays. +o replaced calc_mom_rhs.F by mom_fluxform.F/mom_vecinc.F to + control flux-form versus vector invariant code. + Switch is runtime flag vectorInvariantMomentum (defaults to false) + or genmake -DISABLE ... +o TAMC-related update to cope with mom_fluxform.F/mom_vecinc.F + (additional storing is now needed for case vecinv; + currently nothing implemented to switch this storing off + in case fluxform is used since no CPP flag available). + +checkpoint40pre7 +o bug fix in dynamics.F + calc_viscosity called before k=1,Nr loop. +o added some #ifdef's ALLOW_PASSIVE_TRACER +o cleaned initialisations in ctrl_map_ini + related to TAF + +checkpoint40pre6 +o split dynamics into thermodynamics & dynamics +o corresponding split of calc_diffusivity into + calc_diffusivity, calc_viscosity + (kpp_calc_diff, kpp_calc_visc). +o Added diffkr, kapgm to control variables +o bug fix in gmredi_slope_limit for ldd97 + +checkpoint40pre5 +o proper initialization of Adams-Bashforth time stepping + + uses forward step for very first step of model (iter=0) +o re-generated *all* output since almost all output is modified by this + change (sorry but we've been putting this one off for about 2 years) + + natl_box, aim.5l_Equatorial_Channel and aim.5l_zon-ave were + *not* regenerated since they are already out of date and I don't + want to create the impression that they are suddenly working. +o removed KAP stuff for DEC's +o modified/added many .cvsignore files in */code and */input +o added new expt "solid-body.cs-32x32x1" + + this uses an alternative form of ini_curvilinear_grid.F which + is not necessarily any better than the current one... + checkpoint40pre4 o added re-initialisations of utrans,vtrans,rtrans in calc_common_factors which are crucial for TAF.