--- MITgcm/doc/tag-index 2010/10/16 19:33:41 1.1315 +++ MITgcm/doc/tag-index 2010/12/19 23:20:01 1.1353 @@ -1,9 +1,186 @@ -$Header: /home/ubuntu/mnt/e9_copy/MITgcm/doc/tag-index,v 1.1315 2010/10/16 19:33:41 heimbach Exp $ +$Header: /home/ubuntu/mnt/e9_copy/MITgcm/doc/tag-index,v 1.1353 2010/12/19 23:20:01 jmc Exp $ $Name: $ Notes on tags used in MITgcmUV ============================== +o towards more F95 syntax for array specification in namelist: + - change "data.diagnostics" (data.ptracers was changed before checkpoint62p) + of all verification experiments. + e.g.: line: fields(1,3)='ETAN ','ETANSQ ', + was changed to: fields(1:2,3)='ETAN ','ETANSQ ', + - finish adding "-DNML_EXTENDED_F77" to DEFINES list in pgf77 and g77 optfiles +o global_ocean.cs32x15: additional input.seaice experiment + that uses pkg/seaice rather than pkg/thsice. + +checkpoint62p (2010/12/17) +o pkg/thsice: rename (ad tape index) iicekey as ticekey, and move it + to THSICE_SIZE.h to avoid conflict with pkg/seaice. +o pkg/seaice: add seaice_diffusion.f seaice_map_thsice.f to adjoint. + allow for use of multim. advection in seaice adjoint. +o pkg/seaice: add diagnostics for snow precipitation and sublimation flux + - first attempt to close budgets by taking into account the freshwater + flux implied by the sublimation of snow and ice. So far only the + volume budget is closed, turn on with soon-to-be-retired-again CPP-Flag + SEAICE_ADD_SUBLIMATION_TO_FWBUDGET +o eesupp/src: + new S/R with new option (NML_EXTENDED_F77) to change array specification + from F95 standard to commonly accepted extended F77 form. + This would allow to use F95 syntax in namelist (needed with gfortran 4.4.5) + and to revert back to the original syntax (with -DNML_EXTENDED_F77) + for less tolerant f77 compiler (e.g., pgf77, g77). +o globalFiles: + commented out in parameter file "data" since it's not safe with MPI + (e.g., wrong on aces); keep it if useSingleCpuIO=T (but not doing much + in this case); no longer commented out in restart test (tst_2+2). +o add adTapeDir to specify a special directory where adjoint tapes are + written/read (adread_adwrite.F). adTapeDir is specified in data/PARM05 + and cannot be used together with mdsioLocalDir. +o nesting pkgs: + - packages_init_variables : put call to OBCS_INIT_VARIABLES in last position + - update Gianmaria's Nesting pkgs (from Contrib/nesting_sannino) + - add parameter files + utils dir + output from short run on beagle. +o pkg/seaice: + fix seaice_growth.F store directives; update results of exp. lab_sea.ad +o pkg/seaice: explicitly store tsurfloc in seaice_solve4temp.F to avoid + unnecessary copying in adjoint code, requires new parameter NMAX_ITER + +checkpoint62o (2010/11/25) +o pkg/exf: + - change CPP option EXF_VERBOSE to run-time logical param exf_verbose. +o pkg/seaice: + - seaice_ocean_stress: split a loop for better vectorization of the + adjoint code + - seaice_growth.F: fix bug in conservation of freshwater connected to + capping of heff, put contribution into d_HEFFbyNEG + - replace irritating parameters SEAICE_latentWater/Ice and SEAICE_sensHeat + by something more sensible (parameters that are what their name implies) + - change some defaults, so that by default exf-parameters are used for + things like rhoAir, cpAir,latent/sensible heat parameters, in order + to reproduce the old results, many data.seaice now contain funny values + for cpAir and latent heat of sublimation +o packages_readparms.F: move exf_readparms up in line so that + exf-parameters are visible for other packages (e.g. seaice) +o debugMode & debugLevel=2: + - differentiate between debugMode & debugLevel=2: + debugMode: controls printing of debug messages (sequence of S/R calls). + debugLevel: controls printing of algorithm intermediate results and stats. + - remove "if debugLevel=2 => debugMode" but keep "debugMode => debugLevel=2"; + => allows to print debug-stats without all sequence of call messages. + - switch control of debug print from debugLevel to debugMode in many S/R. +o pkg/obcs (obcs-sponge): + fix bug that was introduced on Oct 25 (in dynamics.F v1.151): put back the + call to OBCS_PRESCRIBE_EXCHANGES (need to exch gU,gV when using obcs-sponge) +o pkg/generic_advdiff: + - record overlap minimum size for each advection scheme; + - refine criteria on overlap minimum size; + - check and stop (in gad_check) if overlap size is too small. +o pkg/obcs: + - with ptracers: remove multiple calls to obcs_apply_ptracer (only done + once, in ptracers_implicit.F) + - with seaice: remove test on empty file name in obcs_apply_seaice (always + apply OB values when tile has OB) +o model/src, coriolis setting: + - integer parameter "selectCoriMap" (=0,1,2) replaces 3 logical + useConstantF, useBetaPlaneF, useSphereF ; can now read coriolis from + files (selectCoriMap=3) with any grid. + - add parameter "fPrime" for constant second Coriolis coeff (default=0). +o pkg/seaice/seaice_growth.F: + a few cosmetic changes that reduce the number of lines of code +o pkg/obcs: add boundary conditions following Stevens (1990) + - the code follows old MOM/NAOSIM code + - so far it is only implemented for the eastern and western boundaries + and NOT for pTracers +o pkg/rbcs: + - replace rbcsInIter by rbcsForcingOffset, the time in seconds at the + beginning of the first rbcs forcing period. + - add option rbcsSingleTimeFiles that makes rbcs read forcing data like the + offline package, i.e., one file per time, labeled by iteration number; + deltaTrbcs sets the timestep with which the data was generated; + rbcsIter0 is the forcing iteration corresponding to rbcsForcingOffset. + - rbcsForcingCycle=0 makes forcing non-cyclic. + - make arithmetic safe for negative times and odd forcing periods. + +checkpoint62n (2010/11/09) +o pkg/seaice: + fix masking in free-drift S/R ; update results of exp. lab_sea.fd +o pkg/obcs: + New S/R to copy tracer value from the OB location to narrow band region + (width = same as overlap) beyond the OB: preserve OB value (needed for + high-order scheme) which were overwritten by EXCH call if in overlap + region. Applied to theta, salt, ptracer and advected seaice variables. + With seaice: use maskInC in similar way as in gad_advection.F, + in seaice_advection.F and advect.F. + Update output of experiment seaice_obcs and change exp4 to test OBCS with + 4th order Adv.Scheme. for pasive salt and ptracer. +o tools/genmake2: + - when looking for an optfile (not specified), only search for Fortran compiler + (remove sym-link test + setting of CPP + makedepend check + C-compiler check) + - in get_fortran_c_namemangling: use "$CC $CFLAG" to compile C test programm + (instead of "$MAKE genmake_test.o" since an existing Makefile can be wrong) + - set default for CPP to "cpp -traditional -P" (was the case without specifying + an optfile, but otherwise default was just "cpp". + - comment out PLATFORM=$p_PLATFORM (no idea where p_PLATFORM comes from) + - when "CC" is not set in the optfile, look for possible C compiler + (instead of just setting CC=cc) + - put back version v.169 modif (from 2008/02/15), was dropped in v.173 changes: + => add a ".F" to ".o" rule for source files with no "#include" (such as + port_rand.F); otherwise, default ignores FOPTIM and just uses FFLAGS. + - move gfortran before g77 in list of possible Fortran compiler (consistent + with reference compiler switch from g77 to gfortran) +o pkg/seaice: + o remove SEAICE_OLD_AND_BAD_DISCRETIZATION-code, add a test to + seaice_check that stops the model, when the CPP flag is used. + o seaice_growth.F: make capping of ice volume conserving by returning the + capped ice as freshwater to EmPmR. This does not change the verification + experiments but will change runs where the capping is acutally active +o change reference platform+compiler from faulks+g77 to baudelaire+gfortran + (except the 2 fizhi test exp.); update output of exp.: bottom_ctrl_5x5, + global_ocean.cs32x15 (icedyn, thsice, AD thsice), global_ocean_ebm (AD), + lab_sea (fd, hb87, salt_plume), MLAdjust (3/5) and vermix (dd) +o tools/genmake2: + - merge genmake_warnings & genmake_errors into 1 log file: "genmake.log") + - change DUMPSTATE default to false (can use "-ds" option to switch it to T) + - clean previous genmake log files before anything else. + - change Makefile to remove testreport log files (*.tr_log) and genmake log + files only with "CLEAN" target (instead of "Clean"); +o pkg/generic_advdiff: + Change OBCS in multiDim advection (gad_advection.F): + Use maskInC to prevent intermediate update of tracer-field in OB regions, + thus keeping current-time-step OB values; and remove the call to OBCS_APPLY + which were applying future time-step OB values. + This way, all explicit calculations use current-time-step OB values + (simpler and more consistent). + Affects results when set-up uses time-varying OBC and multi-dim advection; + update output of experiment seaice_obcs. +o pkg/seaice: + move OPTIONS (formerly locally defined) to SEAICE_OPTIONS.h: + this includes SEAICE_GROWTH_LEGACY (+ SEAICE_DO_OPEN_WATER_GROWTH & + SEAICE_OCN_MELT_ACT_ON_AREA ) and SEAICE_SOLVE4TEMP_LEGACY. + Default (pkg/seaice/SEAICE_OPTIONS.h) is to define SEAICE_SOLVE4TEMP_LEGACY + but leave SEAICE_GROWTH_LEGACY undef ; For now, keep verification exp + unchanged (SEAICE_GROWTH_LEGACY defined in */code*/SEAICE_OPTIONS.h) +o pkg aim (2010/10/26): + - Introduce ALLOW_INSOLATION, moving toward a more general incoming solar radiation + formulation with obliquity, eccentricity, ... as run-time parameters, + - Introduce diagnostics for top-of-the-atmaophere incoming solar radiation and + upward shortwave radition at the surface (all-sky and clear-sky). +o pkg/obcs: + - writing sections with globalFiles=T does not work: switch to tiled-files + when writing sections for OBCS (change pkg/rw/write_rec.F accordingly). + - fix index bug (OB_Ie -> OB_Iw_) in obcs_apply_uvice.F + - apply OBCS_SEAICE_COMPUTE_UVICE to both uice and vice at all obcs + +checkpoint62m (2010/10/21) +o pkg/seaice: vectorize seaice_solve4temp.F + - move iterations loops outside of i/j-loops + - requires 2D arrays for TB and effConduct + - add 2D iceOrNot to replace HICE_ACTUAL.GT.0, as HICE_ACTUAL is + modified in this routine + - a little bit of clean up, adjusting indentation, etc. + - replaced a few TEN**a by exp(a*log(10.)) in new code for better + performance and '**TWO' by '**2' (because TWO is a float), + replaced ONE, ZERO o eesupp/src: fix flow dir for exch1_z_RX_cube, exch1_uv_RX_cube & exch1_bg_RX_cube o pkg/seaice/seaice_growth.F @@ -39,6 +216,10 @@ experiments that have this flag undefined (not tested in verification); a little reorganization to save a few 2D fields and recomputations - 1st step of revisiting thsice adjoint (major recomp. sorted out) + - 2nd step: fix some store dirs + o seems to work somewhat, i.e. using ifort but not g77 + o likely cause are incomplete init. or recomputation + o start verification/global_ocean.cs32x15/input_ad.thsice o pkg/obcs: add support for exch2 - the position of the boundary and prescribed values are specified using a global domain with exch2 facets stacked @@ -400,8 +581,8 @@ but keep the former optfile for few weeks for smooth transition o pkg/ecco - allow user defined cost function contributions - CPP: ALLOW_USERCOST_CONTRIBUTION - USAGE: compute contributions in cost_usercost_all.F + CPP: ALLOW_USERCOST_CONTRIBUTION + USAGE: compute contributions in cost_usercost_all.F - note: this is identical to what ALLOW_GENCOST_CONTRIBUTION once was. the two options are complementary. o pkg/smooth