--- MITgcm/doc/tag-index 2009/05/13 21:35:21 1.1097 +++ MITgcm/doc/tag-index 2009/08/10 09:21:10 1.1149 @@ -1,15 +1,213 @@ -$Header: /home/ubuntu/mnt/e9_copy/MITgcm/doc/tag-index,v 1.1097 2009/05/13 21:35:21 jmc Exp $ +$Header: /home/ubuntu/mnt/e9_copy/MITgcm/doc/tag-index,v 1.1149 2009/08/10 09:21:10 mlosch Exp $ $Name: $ Notes on tags used in MITgcmUV ============================== +o ini_mnc_vars.F: if available (ALLOW_CAL), use startTime_1 and 2 to + create a meaningful unit attribute for the time coordinate variable +o pkg/ebm: add plenty of missing "_d 0" ; + update results of experiment global_ocean_ebm (fwd + adjoint tests) + Notes: several pieces of code only works for (very) specific set up + (domain size, lat range, etc ...); should be documented & stop if one + of those assumptions is not meet. +o pkg/seaice: add missing "_d 0" in HSNOW initialisation + update results of experiments: lab_sea (3 fwd tests + 2 adjoint tests) + and offline_exf_seaice (seaicetd + adjoint). +o add missing "_d 0" in ShortWave flux penetration (S/R SWFRAC): + update results of experiments: lab_sea (4 fwd tests + 3 adjoint), + seaice_obcs, global_ocean.cs32x15 (icedyn & thsice) and natl_box (x2). +o few changes to pass when compiling with strick checking of arguments + across S/R (allow to find few bugs in S/R calls). +o pkg/seaice: + - seaice_evp: move if-statement out of loop (TEM) at the cost of 11 new + 2d-fields, for slightly better performance + +checkpoint61t +o pkg/seaice: + - remove unused variables in seaice_evp + - reduce number of SQRT in seaice_evp and seaice_calc_viscosities +o eeset_parms.F, open_copy_data_file.F & ini_parms.F: + named file replacing SCRATCH files (for TARGET_BGL & TARGET_CRAYXT): + each processor opens a different file (a fix from Matt). +o cg2d: + use simple EXCH (overlap size = 1 and ignore corners), like in cg3d.F : + this reduces number of EXCH calls by 2 when using exch2. + For now, keep previous size array for gc2d_nsa.F to avoid Pb with store + directives and missing simple EXCH (exch_s3d_rx) adjoint code. +o pkg/thsice: + add code for Near Infra-Red albedo (from Jeff) + (turned on with run-time flag: thSIce_calc_albNIR, in data.ice). +o ini_model_io: + move (from packages_readparms.F & initialise_fixed.F) to ini_model_io.F + MNC & MONITOR initialisation calls; move MNC calls from {pkg}_readparms.F + to {pkg}_init_fixed.F for {pkg}= kpp, seaice & shelfice. + +checkpoint61s +o pkg/exch2 (exch2_rxN_cube*): + remove last BARRIER (no need to synchronise after getting data from shared + buffer (get) as long as any change to buffer (put,recv) is between BARRIER) +o change tiling of natl_box (from 2 to 4 tiles) to get it tested with MPI+MTH + and generate new output (for the 2 tests) using default rotationPeriod. +o pkg/exch2: + - always call exch2_*_cube, not exch-1 anymore, if useCubedSphereExchange=F + (was already the case with AUTODIFF_EXCH2 defined) + - add bj in exch2 arrays and S/R. + - can now use pkg/exch2 for regular (non CS) set-up; switch test experiment + MLAdjust to exch2 (identical results except with MPI -> truncation diff); +o add pkg/longstep for ptracer timestep a multiple of U/V/T/S timestep + - adds deltaT argument to the subroutines TIMESTEP_TRACER DWNSLP_APPLY + GAD_ADVECTION GAD_CALC_RHS GAD_IMPLICIT_R GAD_SOM_ADVECT + - verification experiment natl_box.longstep +o build_options: ifort+mpi_aces optfile (following Constantinos advise): + allow different versions of ifort (8 or 9) and different versions + of mpi (mpich or mpich2) to be used with the same optfile. + requires to load a netcdf module and set MPI_INC_DIR (see comments inside + optfile). Change testing scripts (example_scripts/ACESgrid) accordingly. +o pkg/seaice: + fix previous modif (3-level field removed) for old-pickup reading + +checkpoint61r +o pkg/seaice: + - clean up the 3-time levels of UICE,VICE,HEFF,AREA in three steps: + 1. introduce fields for time step (N-1) + 2. do not use levels 2 and 3 anymore (but keep them) + 3. replace 3D versions of UICE,VICE,HEFF,AREA by 2D versions. This + includes changes to pkg/thsice/thsice_get_velocity.F, + model/src/external_forcing_surf.F, pkg/obcs/obcs_apply_seaice.F, and + pkg/obcs/obcs_apply_uvice.F. + - completely remove code for leap-frog time stepping for second order + advection + - adjusted adjoint accordingly; + gradient checks have improved by an order of magnitude! + +checkpoint61q +o pkg/seaice: fix bug in free slip boundary conditons for LSOR solver + - the boundary conditions along open boundaries are unclear, because the + associated masks are set to zero and are thus treated as closed when + applying the slip-boundary conditions. + - move initialisation of grid variables from seaice_init_varia to _fixed +o adding doc/diags_changes.txt +o model/src: + do_the_model_io: rename few pkg S/R which are called from do_the_model_io, + to avoid "_diags" naming if no relation to pkg/diagnostics. + ini_theta,ini_salt: fix (at least compile the code) reading from NetCDF + file and only call PLOT_FIELD_XYZ if debugMode=T. + remove few PLOT_FIELD_XY calls outside initialisation. + remove few unnecessary BARRIER. +o pkg/salt_plume: add SaltPlumeSouthernOcean to allow disabling + of salt_plume package in Southern Ocean +o pkg/thsice: + - fix hOceMxL in overlap (needed for sea-ice advection); + update output of experiment global_ocean.cs32x15.icedyn. +o pkg/seaice: + - make the (placeholder-)tracer IceAge a little more meaningful + by avoiding ridging of age due to convergent ice flow + - add diagnostics for surface temperature, atmospheric and oceanic + heat flux, and atmospheric and oceanic ice growth + +checkpoint61p +o eesupp (global_max & global_sum): + - add one more element to buffer (start at index 0) for GL_MAX/SUM output; + - remove starting & endding barrier (no longer needed) +o pkg/mdsio, writelocal: + works also in multi-threaded when LOCBIN_IO_THREAD_SAFE is undefined + (remove the STOP): uses shared buffer IO to store data from all threads + and then let master-thread write nThreads tiles. +o pkg/mdsio (read/write field): + - tiled IO done in 1 piece (all levels at a time); + - new header file "MDSIO_BUFF_3D.h" with 3-D buffers. + - multi-threaded: allow to read/write local (non-shared) array + (was already working with singleCpuIO ; now works also without); + => no longer needs barrier call after reading a file (added inside + mds_read/write field). + - move barrier calls outside gather/scatter_2d to mds_read/write_field +o pkg/obcs/exf + - exf_getffieldrec.F: add a few ". _d 0" and + add code to catch the case fldperiod = 0. + - obcs_precribe_read.F: change if statements so that they match + the variable type (_RL) + - add a separate exf_iprec_obcs to exf_set_obcs (by default equal to + exf_iprec) as part of namelist EXF_NML_01 +o pkg/mdsio: + - read/write tiled (local) files: read/write 1-level tile chunk at a time + (instead of segment of length sNx); expected to speed up tiled IO. +o pkg/exch2: + - take buffer copy from/to array out of S/R exch2_send/recv into new + S/R exch2_put/get ; Exch of local variable now works with MPI+MTH + (tested by removing commom block statement in SOLVE_FOR_PRESSURE.h). + - ad version of send/recv no longer needed (but needs exch2_ad_put/ad_get) + - simplify argument list of S/R exch2_get_uv_bounds and exch2_get_scal_bounds + (which replaces exch2_get_recv_bounds & exch2_get_send_bounds) by + including Topology header file (and common blocks). + - implement EXCH_IGNORE_CORNERS in scalar exchange (rx1); + remove 2nd exch call in exch2_s3d_rx (no longer needed). + - document S/R arg. list (+ update some comments) +o pkg/seaice: + - added SEAICE_CLIM_AIR code, which permits modulation of surface air + temperature and humidity over sea ice based on climatological values. + - clean up computation of Hibler+Bryan (1987) stress coupling for the case + of LSR (this change is expected to change the results slightly because now + it uses slightly difference moduli from the second last LSR solution, but + that is more consistent with the stress computations; this part of the code + is not tested in the verification experiments) + - fix diagnostics for flux of ice in case of B-grid + - turn strain rates eij and press into global fields within global + common block in SEAICE.h for more straighforward diagnostics + - fix diagnostics for principal stress components, press, zeta, eta + to give something meaning full +o change tiling of global_ocean.cs32x15 (12 tiles, 32x16) and generate + new output (all 4 tests) using default rotationPeriod. +o pkg KPP: + - add flag (LimitHblStable) to avoid limiting BL depth under stable conditions + - fix vertical indices in RI_IWMIX (match between KPP grid from 0 to Nr+1 + and normal grid from 1 to Nr) +o Fix computations of L4rdt in mom_calc_visc.F +o eesupp: + new S/R ALL_PROC_DIE (like EEDIE, without irrelevant threads err msg): + should be called before a "stop" if we know that all process are going + to stop; if one Proc does call this S/R, will hang in MPI_FINALISE. + +checkpoint61o +o pkg/exch2: change check_depths to issue just a warning (instead of error+stop) +o model/src/ini_curvilinear_grid.F: + compute angleSin/CosC when they are not read from a file +o pkg/seaice: + add pseudo time stepping for LSOR +o pkg/exch2: + temporary fix for exch2_s3d_rx; update results of exp. hs94.cs-32x32x5.impIGW +o pkg/seaice: + Adding separate sea ice albedo, drag coefficients, and HO in Southern + Ocean from those in Arctic Ocean. See *_south in SEAICE_PARAMS.h +o SingleCpuIO: + fix bug put before chkp61n (May 11), when more than 2 MPI cpu are used. +o pkg/seaice: + put exchanged variable in (local) common block for MPI+Multi-Threads + to work (necessary with exch1, and for now with exch2 too). +o verification: to get more experiments tested with mpi, mth and mpi+mth, + change tiling of: + aim.5l_Equatorial_Channel, aim.5l_LatLon, dome, exp4, global_ocean.90x40x15, + hs94.cs-32x32x5, MLAdjust, offline_exf_seaice & tutorial_plume_on_slope + update output of exp: + exp4, global_ocean.90x40x15(+.dwslp), MLAdjust(all 5), + tutorial_plume_on_slope and hs94.cs-32x32x5 (use default rotationPeriod) + + ideal_2D_ocean: use default rotation period + test Global_Sum_SINGLECPU + (note: output.txt generated on faulks using only 1 tile) +o eesupp & mdsio (SingleCpuIO): + - remove MISSING_TILE_IO (from MDSIO_OPTIONS.h), replaced by run-time + parameter "W2_useE2ioLayOut" (read from file "data.exch2"). + Note: was not effective for globalFile & useSingleCpuIO=F; now fixed. + - move MDSIO_SCPU.h (pkg/mdsio) to EEBUFF_SCPU.h (eesupp/inc). + - fix GLOBAL_SUM_SINGLECPU when using Exch2; re-use same buffers and same + gather/scatter S/R as with SingleCpuIO (=> 1 less 2D global RL array). o pkg/exch2: - new code to set-up W2-Exch2 topology (replace matlab-topology-generator): read parameter file "data.exch2" if it exists; otherwise try default regular cube without blank-tile; new header file "W2_EXCH2_SIZE.h"; - update matlab-topology-generator (exch2_setup_cs6_print.m) to be compatible with new code (not to be used, just as a backup solution). + - add examples (e.g., for lat-lon-cap_120) of parameter file "data.exch2" + in utils/exch2/input. checkpoint61n o eesupp & mdsio (SingleCpuIO):