--- MITgcm/doc/tag-index 2011/03/15 16:42:25 1.1399 +++ MITgcm/doc/tag-index 2011/05/25 23:56:29 1.1442 @@ -1,15 +1,226 @@ -$Header: /home/ubuntu/mnt/e9_copy/MITgcm/doc/tag-index,v 1.1399 2011/03/15 16:42:25 mlosch Exp $ +$Header: /home/ubuntu/mnt/e9_copy/MITgcm/doc/tag-index,v 1.1442 2011/05/25 23:56:29 gforget Exp $ $Name: $ Notes on tags used in MITgcmUV ============================== +o pkg/seaice: + - seaice_growth.F : in EVOLUTION branch, always include + a_QSWbyATM_cover in qnet (as it should be). + - verification/global_ocean.cs32x15 : update results accordingly + (output.seaice.txt output_adm.seaice.txt). +o pkg/seaice + obcs: + - use maskInW & maskInS in multi-dim advection and biharmonic diffusion: + equivalent of assuming no tracer gradient outside the OB region. + update output of seaice_obcs (uses DIFF1 <>0 => biharmonic diffusion) + - remove calls to OBCS_COPY_TRACER after EXCH calls (no longer needed + after changes above); + - obcs+seaice cleaning: apply seaice-tracer OB values to tracer field + only at OB location (instead of over a band of OLx width). +o pkg/seaice: + - fix wrong indices in old (non Flux-Form) diffusion default S/R diffus.F + (dxG(I+1, ...) changed to dxG(I, ...), no impact on Lat-Lon grid) +o pkg/obcs: + - split header file "OBCS.h" into 4 separated files: + OBCS_PARAMS.h, OBCS_GRID.h, OBCS_FIELDS.h & OBCS_SEAICE.h + Note: OBCS_PARAMS.h & OBCS_GRID.h can be included without OBCS_OPTIONS.h + (contain no conditional statement which depends on OBCS options). + - move "useOBCSYearlyFields" from "data.obcs" (hold in OBCS_PARAMS.h) + to parameter file "data.exf", namelist EXF_NML_OBCS (in EXF_PARAM.h). +o ctrl, cost, grdchk & autodiff pkgs: + - make options file more standard (like other {PKG}_OPTIONS.h file but + with AD_CONFIG.h); clean-up some of the included header files. +o pkg/obcs: + - do not mask tracer when applying OB (tracer == 0 could generate problems) + - apply tracer OB values to tracer field only at OB location (instead of + over a band of OLx width) + - clean-up obcs_apply_w.F & obcs_apply_eta.F (since less calls to these S/R) + - remove OBCS_MULTIDIM_OLD_VERSION code in gad_advection.F and remove + obcs_apply_tloc.F & obcs_apply_sloc.F +o obcs in model/src: + - call OBCS_APPLY_W only if NonHydrostatic. + - call OBCS_APPLY_ETA only if NonLinFreeSurf. + - reset dEtaHdt and wVel to zero outside OB interior region ; + - leave tracer unchanged outside OB interior region: This has no effect + on the solution but just to prevent unrealistic tracer value outside OB. + - zero out velocity outside OB interior region: This has no effect on + the solution but just to prevent unrealistic velocity outside OB. +o obcs and non-lin free-surf: + move call to OBCS_APPLY_R_STAR from update_r_star.F to calc_r_star.F + and call to OBCS_APPLY_SURF_DR from update_surf_dr.F to calc_surf_dr.F + + add argument "etaFld" to OBCS_APPLY_R_STAR & OBCS_APPLY_SURF_DR: + this fixes missing EXCH + get consistent eta OB value (+ fix restart). + update results of test-exp. exp4(nlfs). +o exp4 (nlfs) test-exp: + use OBC for Eta at Western & Eastern OB (to test prescribing Eta + with NonLin-FreeSurf); update output.nlfs.txt +o obcs and 2d/3d solver norm: + use interior masks (maskInC) to cancel out cg2d & cg3d matrix coeff at OB + and outside OB interior region (will allow to place OB further inside the + domain). Depending on the domain, can affects cg2d-Norm (previous + cancellation outside OB was only partial), e.g. in exp4 & obcs_ctrl, + and cg3d-Norm (previous Norm was computed before canceling OB terms), + e.g. in tutorial_plume_on_slope. + - update output of exp.: exp4 (x2), obcs_ctrl and tutorial_plume_on_slope. +o pkg rbcs: + - split RBCS.h into 3 files: RBCS_SIZE.h, RBCS_PARAMS.h & RBCS_FIELDS.h + - add capability to apply relaxation to horizontal velocity uVel & vVel. +o pkg/grdchk: add gradient check for control variable xx_shifwflx +o pkg/shelfice/shelfice_init_fixed.F + fix CPP-flag combinations +o pkg/seaice: Merge iceage code of Pierre Rampal + * update/change/correct ice age calculations + * add age updates for pathological cases + Probably needs more testing... + +checkpoint62x (2011/05/13) +o pkg/mom_vecinv: + high-order vorticity scheme: use interior masks (maskInW & S) + to zero-out (outside OB) gradient of vorticity. +o verification exp.: + turn on "useEnergyConservingCoriolis" (better discretisation) in exp. + hs94.128x64x5 and seaice_obcs ; update results. +o pkg/obcs: + fix bug in OBeta for YZ sections in obcs_exf_load.F +o pkg/ctrl, pkg/shelfice, and optim: + - add new control variable xx_shifwflx (fresh water flux underneath ice + shelves). This is almost as tedious as obcs-ctrl, because the + variables needs its own mask. + - add a cost function term that penalizes the deviation of xx_shifwflx + from the first guess (zero) in analogy to other control variables +o pkg/shelfice: + - start basic adjoint +o pkg/ctrl: + - remove extra 2D field "for good measure" when initializing in + ctrl_set_globfld_[xy/xz/yz].F + - replace hard coded precision 32 (a bug) in ctrl_map_ini_gen by ctrlprec + - improve error messages in ctrl_set_unpack_* +o OBC implementation in momentum: + use interior masks (maskInC,W & S) in momentum S/R: + - multiply divergence, tension and some del^i.u or del^j.v by maskInC + - multiply del2u,del2v by maskInW/S (biharmonic viscosity) + - multiply horiz. grad of vorticity by maskInW/S (in Leith scheme) + - multiply gradient of wVel by maskInW/S in del2w calculation (NonHyd) + Motivation: fix/clean implementation of OBC with biharmonic-viscosity + (and also with Leith/Smagorinsky harmonic-viscosity). + Update output of experiment dome and exp4 (+nlfs). +o exp4 test-exp: + - turn on: nonHydrostatic, exactConserv, viscA4 (with momDissip_In_AB=F) + and prescribe time-varying OB (without pkg/exf) for zonal-velocity + at Western & Eastern Boundaries (+/- 1 per-cent); Also prescribe + time-varying OB at Western-side for wVel (NonHyd); update output. + - add secondary set-up (.nlfs) using NonLin FreeSurf (z*) + mom_vecinv + and biharmonic-viscosity ; also use prescribed time varying OB. +o pkg/obcs: + fix bug in OBWeta,OBWeta indices in obcs_apply_r_star.F +o model/src: + - fix startTime setting when baseTime<>0 & nIter0=0 are specified ; + - initialise startTime & nIter0 with unlikely values: allows to set one + from the other without ambiguity. +o seaice_obcs test-exp.: + add small diffK4T,S to test biharmonic diffusivity with OBCS ; update output. +o pkg/obcs: + - remove calls to OBCS_COPY_TRACER after EXCH for T,S & pTracer: + no longer needed with maskInC,W,S in pkg/generic_advdiff. +o pkg/seaice: + - retired SEAICE_SALINITY and SEAICE_salinity in favor of + SEAICE_VARIABLE_SALINITY and SIsalFRAC, respectively. + - fixed bug in the initialization of sea ice salinity variable HSALT + in seaice_init_varia.F (removed dependence on ICE2WATR) +o fizhi-cs test exp.: + switch reference output convention for these 2 non-standard test-exp, + from: pgi 6.1-5 on faulks (FC.6, -of linux_ia32_pgf77+authors_fc5) + to: ifort 11.1 on baudelaire (FC.13, -of linux_amd64_ifort11) + reason: faulks might get retired soon and pkg/fizhi has still Pb with gfortran +o model/inc: + - change type of PmEpR array (from _RS to _RL) to fix restart (with "-use_r4") + of exp. global_ocean.90x40x15 (Suncronous time-stepping + Real-FW + NonLin-FS) +o pkg/seaice: + - fix calculation of saltFlux and saltPlumeFlux when using SEAICE_SALINITY +o verification/lab_sea, 1D_ocean_ice_column, seaice_obcs, global_ocean.cs32x15 + - updated output*.txt files due to bug fixes in salt, saltPlumeFlux, + and initial HSALT + +checkpoint62w (2011/04/26) +o pkg/mom_fluxform: + - fix calculation of del2u & del2v (no-slip BC) when using Non-Lin Free-Surf. + - use parameter "sideDragFactor" in no-slip BC side-drag part. + - update output of exp. global_ocean.90x40x15 +o pkg/mom_vecinv: + mask del2u & del2v (no effect on results, but cleaner & closer to mom_fluxform) +o update seaice exp.: + use more consistent parameter values (remove "backward compatability only": + ICE2WATR, SEAICE_lhSublim, SEAICE_cpAir, SEAICE_rhoAir + set rhoConstFresh) + related to thermodynamics seaice. Update output (fwd+AD) of exp.: + 1D_ocean_ice_column (x2), lab_sea (x8), ioffline_exf_seaice (x2) & seaice_obcs +o update test-exp global_ocean.90x40x15: + o use default CD_CODE_OPTIONS file (Adams-Bashforth on CD Mom & Coriolis). + o increase Overlap size from 2 to 3 (to allow to test bi-harmonic Visc.) + o new pickup-files from a 100.yr run with pkg/down_slope (input.dwnslp params) + o turn on zStar & viscA4 in standard set-up (dir input/) + and update output files: output.txt & output.dwnslp.txt +o new AD-test experiment: obcs_ctrl + (From Matt MITgcm_Contrib/SOSE/BoxAdj) to test OBCS as control vector. +o pkg/dic: + fix two bugs in handling water vapour pressure in carbonate chemistry + and air-sea fluxes. Found by Val Bennington and Galen McKinley + (add DIC Option = WATERVAP_BUG to recover old results) + update output of tutorial_global_oce_biogeo (fwd+AD) & tutorial_dic_adjoffline +o adding allowInteriorFreezing option to check for water below freezing point + at depth and bring the negative heat anomaly to the surface level +o pkgs _fields_load: + - extend GET_PERIODIC_INTERVAL to deal with non-periodic case (from pkg/rbcs) + - use new S/R GET_PERIODIC_INTERVAL in pkgs: + bulk_force, cheapaml, cfc, dic, obcs (+ ctrl/ctrl_get_gen_rec), offline and + rbcs to get interpolation weights and time reccord number. + - fix multi-threading in aim_fields_load.F + - apply EXCH to temp arrays [0,1] after reading in dic_fields_load.F +o external_fields_load: + new S/R GET_PERIODIC_INTERVAL to calculate which time-record (and linear + interpolation weights) to use in a periodic time-series ; do not divide by + time-step to convert to integer: + - this fixes case where externForcingPeriod is not multiple of time-step + (Thanks to Christopher L. Wolfe) + - this fixes case where externForcingPeriod is an odd multiple of time-step + (was wrong by half of time-step); update results of tutorial_global_oce_in_p. + store index of time-record which is currently loaded: + - works without any assumption on sequence of calls to EXTERNAL_FIELDS_LOAD ; + - needed for the adjoint but not yet used because of extensive recomputations; + (to be fixed soon) + +checkpoint62v (2011/04/02) +o verification/1D_ocean_ice_column added to test Ian Fenty's + pkg/seaice_growth.F modifications for improving sea ice code differentiability +o update output of exp4, internal_wave, seaice_obcs, tutorial_plume_on_slope + (new velocity statistics after changing maskInW & maskInS definition) +o pkg/generic_advdiff with OBCS: + use maksInW & maskInS in advective flux and in biharmonic diffusion calculation: + equivalent to assumption of no tracer gradient outside the OB region. + This will affect the results if using obcs+biharmonic diffusion. + update output_adm.txt of experiment bottom_ctrl_5x5 (not expected since no obc) +o pkg/obcs: + change definition of maskInW & maskInS: leave OB edges inside (maskIn=1) + (e.g., maskInW(OB_Ie)=1 ) so that velocity normal-component at OB is still + in Interior region. No impact on solution but affects Velocity monitor stats. +o pkg/ptracers (adjoint) + New option AUTODIFF_PTRACERS_SPLIT_FILES for writing separate + tape file for each tracer +o model/inc/src and pkg/autodiff: add parameters that allow to turn + of parts of the adjoint code at run time. For now, there are only + useKPPinAdMode, useGMrediInAdMode, and useSEAICEinAdMode. These + parameters are set in data.pkg. + This is the lazy coward's version of doing this, but still useful for + debugging. In order to do it right, everything needs to be moved to + pkg/autodiff. +o pkg/autodiff: fix global_sum_tile_ad.F by resetting adsumPhi at + the end; this fixes the adjoint balancing code for open boundaries. o pkg/ctrl: - change behavior of xx_${varname}period to be analogous to exf-conventions: xx_${varname}period = 0., means time-independent control part - xx_${varname}period = -12., means one-year-periodic monthly control part + xx_${varname}period = -12., means one-year-periodic monthly control part - introduce helper routine ctrl_init_rec (part of ctrl_init.F) to clean up ctrl_init a little, remove unused variables + - ctrl_init: fixed the handling of the start/endrec for obcs-variables - move "call cal_GetMonthsRec" from s/r ctrl_get_gen to s/r ctrl_get_gen_rec checkpoint62u (2011/03/15)