/[MITgcm]/MITgcm/doc/tag-index
ViewVC logotype

Diff of /MITgcm/doc/tag-index

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.893 by jmc, Fri Oct 19 19:10:24 2007 UTC revision 1.1008 by mlosch, Mon Jun 30 14:26:26 2008 UTC
# Line 4  $Name$ Line 4  $Name$
4      Notes on tags used in MITgcmUV      Notes on tags used in MITgcmUV
5      ==============================      ==============================
6    
7    o pkg/mnc: small fix in mnc_handle_err: make sure that length of msgbuf
8      is exceeded
9    o testreport: modify syntax of awk, so that it works also with
10      awk, and not only with nawk and gawk
11    
12    checkpoint61
13    o autodiff
14      Change default for TAF usage by removing argument '-nonew_arg'
15      This changes TAF subroutine argument list (ordering of active var.)
16      Omission of this flag leads to incompatibility w.r.t. TAMC
17      To restore TAMC-compatibility, need following modifs:
18      * use adoptfile tools/adjoint_options/adjoint_tamc_compatibility
19      * use CPP option #define AUTODIFF_TAMC_COMPATIBILITY
20      Tested TAF version is 1.9.22
21      N.B.: exch2 hand-written adjoint code currently not TAMC compatible
22    
23    checkpoint60
24    --->>> This is the last checkpoint for which generating the adjoint
25    --->>> is done via the TAMC-compatibility TAF-flag "-nonewarg"
26    --->>> by default.
27    --->>> Future checkpoints will ommit this flag by default.
28    o pkg/generic_advdiff, os7mp: simplify and avoid division by zero.
29    o pkg/grdchk: Add gradient check to etan0 perturbations.
30    o pkg/exf: read ice area from file (#ifdef ALLOW_ICE_AREAMASK).
31    o pkg/autodiff: more flexibility in zeroadj.
32      model/src: modifying do_oceanic_phys.F accordingly.
33    o pkg/ctrl: Bounds for (kapgm,kapredi,eddypsi) parameter estimation.
34    o model/src and pkg/gmredi: GMREDI_WITH_STABLE_ADJOINT CPP option
35      special setup of gmredi for which the adjoint is stable
36      enough for parameter optimization.
37    o bridging the gap between eddy stress and GM.
38      -> eddyTau is replaced with eddyPsi (eddyTau = f x rho0 x eddyPsi)
39          along with a change in CPP option (now ALLOW_EDDYPSI).
40      -> when using GM w/ GM_AdvForm:
41          The total eddy streamfunction (Psi = eddyPsi + K x Slope)
42          is applied either in the tracer Eq. or in momentum Eq.
43          depending on data.gmredi (intro. GM_InMomAsStress).
44      -> ALLOW_EDDYPSI_CONTROL for estimation purpose.
45      The key modifications are in model/src/taueddy_external_forcing.F
46      pkg/gmredi/gmredi_calc_*F pkg/gmredi/gmredi_*transport.F
47    
48    checkpoint59r
49    o new S/R (pkg/mdsio/mdsio_facef_read.F) reading of sNx+1 x sNy+1 array
50      from per-face file (take S/R READSYMTILE_RS out of ini_curvilinear_grid.F);
51      fix option to read coriolis(@ cell-corner) from files with CS-grid.
52    o pkg/mnc: add some attributes to standard 1D-coordinate variables
53    o pkg/diagnostics: enforce missing_value attribute for scalar variables at
54      mass points, when using mnc for output
55      - add runtime parameter (missing_value, missing_value_int) to override
56        default (which is the value of getcon('UNDEF'))
57    o pkg/mnc: prepare mnc for the actual use of missing values with the
58      diagnostics package: small fix in mnc_cw_readwrite.template and more
59      initialisation of never used fields
60      - replace mnc_common.h and mnc_id_header.h with corresponding upper case
61      versions
62    o pkg/thsice/thsice_ini_vars.F added default initial values so that
63      thermodynamics sea ice solver does not blow up when some initial fields
64      are missing.
65    o move from external_forcing_surf.F to ini_forcing.F
66      the p-coord. hack consisting in using pLoad to set phi0surf ;
67      update output of tutorial_global_oce_in_p (affected @ truncation level).
68    o Freshen up a bit hs94.1x64x5, notably:
69      remove rotationPeriod and tRef=5*0. (adjoint only), and add
70      exactConserv=.TRUE.
71    o pkg/generic_advdiff:
72      change option GAD_ALLOW_SOM_ADVECT to GAD_ALLOW_TS_SOM_ADV which only
73      applies to files where Temperature & Salinity 2nd Order moments are used.
74    o pkg/ptracers: add second-order moment advection schemes (80 and 81);
75      this uses a dynamically allocated internal state data structure
76      (#define PTRACERS_ALLOW_DYN_STATE in PTRACERS_OPTIONS.h)
77      and requires a fortran 90 compiler
78    
79    checkpoint59q
80    o pkg/mom_vecinv: Add energy & enstrophy conserving scheme (selectVortScheme=3)
81       (from Sadourny, described by Burridge & Haseler, ECMWF Rep.4, 1977)
82    o Refresh tutorial_global_oce_biogeo, notably:
83      - change bathymetry (put back seamounts in ACC, use hFacs)
84      - change EOS (POLY3 --> JMD95Z)
85      - use Bryan-Lewis vertical diffusivity
86      - use multidimensional advection
87      - remove old virtual virtual in dic pkg, now done through ptracer pkg
88      - change a couple of parameters in dic pkg
89    o pkg/ctrl: change formula in adctrl_bound.F and add a parameter to ctrl_map_ini_gen.F
90    o pkg/obcs: change default to OBCSfixTopo = .true.,
91      - set OBCSfixTopo=.false. in exp4/input/data.obcs to reproduce old result
92      - replace "debugMode" with "debugLevel .GE. debLevB"
93    o implementation of TAF directives for gchem,cfc,dic
94    o remove "exp5" (replaced by tutorial_deep_convection).
95    o pkg/obcs: add code to fix topography gradients normal to open boundaries;
96      this requires computing the index fields OB_Jn/Js/Ie/Iw in obcs_readparms;
97      the code can be turned on by setting OBCSfixTopo = .true. in data.obcs
98      --> changes results in exp4, seaice_obcs
99    o tutorial_deep_convection :
100      update the set-up and increase resolution and domain size ; start
101      from pseudo initial conditions = output at t=120mn in order to see
102      something happening when running testreport.
103    o pkg/seaice: add os7mp as an advection scheme
104                  add check for advection schemes
105                  add a flag for restoring T and S underneath sea ice
106    o pkg/my82: add netcdf-support and diagnostics
107    o thsice pkg:
108      - Now hsMax limits snow height by turning it into ice following
109        flooding scheme (and now conserving energy)
110      - Slight rewriting of the formula in thsice_calc_thick.F
111      - Parameter rhowi eliminated to be replaced by floodFac = (rhosw-rhoi)/rhos
112      --> changes results of global_ocean.cs32x15.icedyn and global_ocean.cs32x15.thsice
113    
114    checkpoint59p
115    o gchem / dic / cfc :
116      - add useDIC, useCFC , read from "data.gchem" (& hold in GCHEM.h);
117      - add new parameter files: "data.dic" & "data.cfc" ;
118      - various re-arrangement in initialisation & header file ;
119      - fix tutorial_global_oce_biogeo for multi-threaded test.
120    o pkg/dic: test for "pickup_dic" file when restarting ;
121      if no pickup-file, can restart with a re-initialised pH (same as it did
122      before) providing pickupStrictlyMatch is set to False.
123    o change argument list of S/R PTRACERS_WRITE_PICKUP & MYPACKAGE_WRITE_PICKUP
124      + fix call to S/R GGL90_WRITE_PICKUP & DIC_WRITE_PICKUP
125    o add a "warning" (to Error msg file) when an Active Tracer is not using AB-2
126      and staggerTimeStep is off (needed for stability of Internal-wave dynamics).
127    o move out of PARAMS.h & data the last pieces of old-ptracer code: tauTr1ClimRelax,
128     & lambdaTr1ClimRelax ; put those 2 params in PTRACERS_PARAMS.h & data.ptracers
129       (note: not clear to me what lambdaTr1ClimRelax is still used for ...)
130    o pkg/mom_vecinv: - new parameter "selectVortScheme" to select which
131       scheme to use for vorticty-term ;
132     - compute upwindVorticity=T case within mom_vi_u/v_coriolis_c4.F
133       (with default selectVortScheme, return to original discretisation)
134     - remove weird combination (e.g.: upwindVorticity & highOrderVorticity)
135    o pkg/seaice: add a line to the summary to indicate grid type (B/C)
136    o in mom_calc_visc, fix average value of viscAh_W & viscA4_W next to the
137      bottom ; only used with variable horizontal viscosity and non-hydrostatic.
138      also fix diagnostics VISCAHW & VISCA4W.
139    
140    checkpoint59o
141    o dome/code/obcs_calc.F: avoid division by zero (detected using gfortran).
142    o change the loop ordering in most gad_*_adv_x.F to improve vectorization:
143      move a few statemens out the main loop into separate loops
144    o pkg/shelfice:
145      - sort out freshwater flux; convert freshwater fluxes to mass fluxes
146        (kg/m^2/s), does not break tests, because in verification/isomip,
147        rhoConstFresh=rhoConst (by accident)
148      - rearrange computation of tLoc, sLoc, pLoc to make code more efficient
149      - move S/R find_rho_scalar, pkg/ecco/sw_ptmp.F, pkg/ecco/sw_adtg.F into
150        new file model/src/seawater.F, so that they are available for all pkgs.
151      - convert potential temperature into in-situ temperature. This changes the
152        isomip tests => update tests
153    o add a flag writePickupAtEnd (default=true) to be able to suppress
154      writing a pickup at the last timestep
155    o tools/mpack-1.6 :
156      - disable automake (not working) and autoconf (not needed).
157      - update to version 1.6.4 which fix MD5 code on some 64 bits platforms
158        also cleaner with much less compilation warnings.
159    o pkg/profiles:
160      rename profiles_interp_mean_genericgrid as profiles_interp_mean_gg
161      (for "less than 32 characters name" compiler requirement)
162    o pkg/obcs and pkg/exf: added capability to specify seaice open boundary
163      conditions that have a different sampling frequency than S/T/U/V obcs
164    o pkg/diagnostics (stats-diags):
165      - fix global Min/Max in case 1 processor get only empty tiles
166    o genmake2: replace (4 times)
167         make genmake_tc_1.o >> genmake_warnings 2>&1
168      with
169         COMM="$CC $CFLAGS -c genmake_tc_1.c"
170         echo $COMM >> genmake_warnings
171         $COMM >> genmake_warnings 2>&1
172      to make genmake2 always see the value of CC as specified in the optfile.
173    o generic_advdiff: - prather advection scheme (SOM) coded for CS-grid.
174      - add diagnostics for 1srt & 2nd Order moments and sub-grid variance.
175      - modify verification advect_cs test to test SOM-advection on CS-grid.
176    o pkg/ctrl:
177      - Rewrite of ctrl_map_ini_ecco.F,
178        introducing a generic routine (ctrl_map_ini_gen.F).
179      - Modification of ctrl_bound/adctrl_bound handling control vector bounds.
180    
181    checkpoint59n
182    o pkg/diagnostics: for large number of diagnostics, store diagnostic mate
183      number in dedicate array "hdiag":
184      - new version of S/R DIAGNOSTICS_ADD2LIST : DIAGNOSTICS_ADDTOLIST
185        with 1 more argument (mate number); modify old version DIAGNOSTICS_ADD2LIST.
186      - many small changes (integer format) for large number of diagnostics
187      - start to use DIAGNOSTICS_ADDTOLIST (necessary for diagnostics with
188        a counter mate) in pkg diagnostics, ptracers, thsice & aim_v23.
189    o add parameter rotateGrid and Euler angles EulerPhi/Theta/Psi. For
190      usingSphericalGrid, this allows to define the rotated grid coordinates
191      via phiMin/thetaMin/dxSpacing/dySpacing, etc., but then re-compute the
192      geographical coordinates according to the inverse of the rotation defined
193      by the Euler angles, so that Coriolis parameter and online-interpolation by
194      exf works with the geographical coordinates on XC/YC/XG/YG.
195      Naturally, this feature does not work with all packages, so some
196      combinations are prohibited in config_summary (flt, flt_zonal, ecco,
197      profiles), because there the coordinates are assumed to be regular
198      spherical grid coordinates.
199    o pkg/gmredi,ctrl,ecco,autodiff,grdchk and model/src,inc:
200      - introduce isopycnal diffusion coefficient control.
201    o tools/adjoint_options:
202      - additional control vector components.
203    o pkg/mnc: have mnc create marginally meaning full coordinate variables
204      (that is the grid indices) if usingCurvilinearGrid and NOT EXCH2
205    o pkg/mypackage:
206      - add example of read/write pickup for state-var ;
207      - add entry points to the main code for state-vars diags & write-pickup.
208    o pkg/exf: rewrite of exf_getffieldrec.F to properly deal with year
209      transitions for useExfYearlyFields
210      - add new subroutine that determines the file to read from for
211        use*YearlyFields = .TRUE. and .FALSE.
212      - add a verification experiment to global_with_exf that tests
213        useExfYearlyFields with USE_EXF_INTERPOLATION defined
214    o pkg/obcs/exf: add useOBCSYearlyFields (=.FALSE.) to obcs with exf in
215      analogy to useExfYearlyFields; rearrange obcs_prescribe_read: two new
216      subroutines (which could be generated from a template, because they are
217      almost identical), for now they are included in obcs_prescribe_read.F for
218      simplicity
219    o pkg/exf:
220      - add a little more diagnostic to exf_interp_read (in analogy to
221        mds_read_field, can be turned off with debugLevel < debugLevA=1)
222      - improve vectorizability of exf_interp for TARGET_NEC_SX, makes code
223        ugly but fast by unrolling short inner loops, inserting a unroll=8
224        directive in routine lagran, and splitting a loop and making do while the
225        outermost loop (the latter requires the intoduction of index arrays)
226    o pkg/obcs: replace obcs_apply_area/heff/hsalt/hsnow with obcs_apply_seaice
227    o pkg/seaice: moved DIFFERENT_MULTIPLE from seaice_model to seaice_dynsolver
228      http://forge.csail.mit.edu/pipermail/mitgcm-devel/2008-January/003173.html
229    o verification/seaice_obcs: updated for restart test and latest options
230    o pkg/seaice: add a new flag SEAICEuseTEM to use a slightly different
231      ice rheology (so-called truncated ellipse, that gets rid of tensile stress);
232      for now this is only available for the C-grid code and also within
233      #ifdef SEAICE_ALLOW_TEM, because this option may slow down the EVP code
234    
235    checkpoint59m
236    o pkg/seaice: use different time constant for melting (SEAICE_gamma_t)
237      and freezing (SEAICE_gamma_t_frz) ice due to mixed layer temperature
238    o gad_som : fix flux output (& diagnostics) to have same units as other  
239      advection scheme fluxes (was previously multiplied by deltaT).  
240    o added verification/seaice_obcs both to test seaice open boundaries
241      and to provide an example matlab scrpt for generating them
242    o added verification/lab_sea/input.salt_plume for testing pkg/salt_plume
243    o pkg/salt_plume: clean up salt_plume_frac.F to
244      remove redundancy in PlumeMethod 1 and 4
245    o pkg/kpp: added saltplume diagnostics
246    o pkg/obcs and pkg/seaice:
247      - do not set uice and vice to zero when OB*icefile are unspecified
248      - OBCS_SEAICE_AVOID_CONVERGENCE is undefined by default
249      - moved seaice tracer obcs after call to seaice_growth
250    o pkg/salt_plume: added various options for salt plume depth
251      criterion and for vertical distribution of the salt
252    
253    checkpoint59l
254    o pkg/ptracers: new version of ptracers pickup:
255      read meta file and write only fields which are needed to restart.
256      ( same logic as main pickup file ; also using pickupStrictlyMatch )
257    o pkg/seaice:
258      - add timescale for melting due to warm mixed layer as a means of
259        setting SEAICE_availHeatFrac more conveniently
260      - add a CPP-flag/runtime parameter check for flooding algorithm
261      - reformulated availHeat in seaice_growth.F to be independent of AREA
262    o change units attribute of EmPmR netcdf variables to kg/m^2/s to reflect recent
263      unit changes
264    o pkg/obcs: added OBCS_SEAICE_AVOID_CONVERGENCE constraint
265    o cg2d.F: add 3 compiler directives that speed up this routine by 30% on a NEC
266      SX vector computer.
267    o pkg/seaice:
268      - removed SEAICE_FFIELDS.h and seaice_get_forcing.F
269        seaice forcing fields can now be read only through pkg/exf
270      - removed some unused halos
271    o no longer write pickup from THE_MODEL_MAIN but always from FORWARD_STEP
272    o pkg/exf: added useRelativeWind EXF_PARAM.h option for subtracting U/VVEL
273      or U/VICE from U/VWIND before computing U/VSTRESS
274    
275    checkpoint59k
276    o pkg/seaice: ICE2WATR=SEAICE_rhoIce/rhoConst for consistency between
277      dynamics and thermodynamics. Set ICE2WATR=0.92 to reproduce older results.
278    o fix un-initialised variable problem (in mom_vecinv & shap_filt):
279      all experiments pass when compile with un-initialised var. checking option.
280    o added pkg/salt_plume
281    o script to test restart (for now, in MITgcm_contrib/jmc_script)
282    o pkg/seaice: new read/write pickup version.
283      read meta file and write only fields which are needed to restart.
284      ( same logic as main pickup file ; also using pickupStrictlyMatch )
285    o pkg/seaice: fix bug in seaice_ocean_stress (call of seaice_calc_strainrates)
286    o lab_sea.hb87: modify the domain & update output.hb87.txt :
287      lat-long grid & no-slip BC in seaice-dynamics produce different sigma12
288      at j=1 & j=Ny+1 : this case is not treated correctly in the restart
289      process. Fixed here by closing the domain at the Northern boundary.
290    o pkg/rw: cleaning-up: call directly new MDSIO S/R MDS_READ/WRITE_FIELD.
291    o pkg/mdsio: add new arguments to MDS_READ/WRITE_FIELD for reading/writing
292      a set of consecutive levels in/from a 3-D array.
293    o pkg/ptracers:
294      use a 2 characters string ioLabel to identify tracer (if more than 99 tracers).
295      to-do: fix pkg/diagnostics when large number of diagnostics are defined.
296    
297    checkpoint59j
298    o in pkgs: dic, obcs, offline, rbcs:
299      standard way to compute coeff. for time interpolation between 2 time reccords
300      which retains full precision (& make results less dependent on compiler).
301      update output of exp: tutorial_cfc_offline & tutorial_global_oce_biogeo.
302    o pkg/cfc: if compiled with exf and seaice, cfc now can use fields from those
303      packages instead of reading ice cover and wind speed separately
304    o split PTRACERS.h in 2 header files: PTRACERS_FIELDS.h & PTRACERS_PARAMS.h
305     (keep a temporary version of PTRACERS.h in verification/OpenAD/code_ad_openad
306      to allow to compile customized code before the update)
307    o cleaning-up:
308      - fix CPP instruction syntax in pkg/obcs
309      - replace (some) call to MDSIO S/R with call to RW interface S/R ; and
310        add #ifdef ALLOW_MDSIO elsewhere (allows to compile without pkg/mdsio)
311      - fix some threads issue in IO parts.
312    o pkg/dic:
313      - add tons of "_d 0" (--> much better testreports !)
314       and then update outputs of tutorial_global_oce_biogeo
315    o pkg/mom_fluxform:
316      add a special version of momentum advection intended to conserve momentum
317      next to a bathymetry step or a coastline edge. (default = off = #undef)
318    o new read/write pickup version:
319      - for now, only implemented for main (mdsio) pickup file.
320      - write out only what is needed to restart; merge pickup_nh , pickup_ph
321        and main pickup together.
322      - read meta file; read only what is needed to restart; stop if a field
323        is missing (if pickupStrictlyMatch=T, = the default) or try to restart
324        if it make sense (even if the restart is not perfect).
325      - if no meta file, assume that pickup to read corresponds exactly to
326        a pickup that would currently be written.
327      - read pickup written in the old format (until checkpoint59i) if it
328        recognizes an old meta file (no field-list).
329      - add a meta file in exp. which starts from a pickup: 2 cases:
330        a) minimal meta file (with just file precision) + pickupStrictlyMatch=F
331         e.g.: global_ocean.90x40x15/input/pickup.0000036000.meta
332        b) a meta file describing the content of the associated pickup file
333         e.g.: tutorial_global_oce_biogeo/input/pickup.0004248000.meta
334    o pkg/mdsio & pkg/rw:
335      - new routine to read a meta file ; new set of routine to read
336        Multiple-fields file (with meta file).
337    o added open boundary conditions capability for seaice
338        HSNOW, HSALT, UICE, and VICE
339    
340    checkpoint59i
341    o adjoint:
342      * fix multiDimAdvection adjoint
343        (partial recomputation problem by TAF for fVerT(:,:,kDown)
344        and comlev1 size definition (maxpass vs. max. number of tracers)
345      * verification/global_ocean.90x45x15 adjoint now tests
346        NLFS and multiDimAdvection using DST3 (=30)
347      * verification/lab_sea now tests multiDimAdvection using DST3 (=30)
348    o pkg/kpp: add "_d 0" to real constant (if missing);
349      update output of exp: natl_box (10.digits); vermix (std, 7.digits)
350      and lab_sea, 3.FW (only 6,4,6 digits match) & AD (8.digits).
351  o prepare for "clever pickup" implementation: add new header file "RESTART.h"  o prepare for "clever pickup" implementation: add new header file "RESTART.h"
352    for internal parameters related to restart process (formerly from PARAMS.h)    for internal parameters related to restart process (formerly from PARAMS.h)
353    and add startAB parameter to argument list of S/R ADAMS_BASHFORTH2.    and add startAB parameter to argument list of S/R ADAMS_BASHFORTH2.
# Line 25  o add a little bit of code to gad_os7mp_ Line 369  o add a little bit of code to gad_os7mp_
369  o add new diagnostics to seaice: advective, diffusive fluxes (only for  o add new diagnostics to seaice: advective, diffusive fluxes (only for
370    multidim-advection, for scheme 2 they are not filled) and transports,    multidim-advection, for scheme 2 they are not filled) and transports,
371    thermodynamic growth rates    thermodynamic growth rates
372  o change units of EmPmR (inside the code) from m/s to kg/m2/s (mass flux) but  o change units of EmPmR (inside the code, + within coupling interface)
373    leave input file unchanged. Affects results @ truncation level (cg2d match)    from m/s to kg/m2/s (mass flux) but leave input file unchanged.
374    and update output of experiments: lab_sea(6), global_ocean.90x40x15(10),    Affects results @ truncation level (cg2d match) and update output of
375       experiments: lab_sea(6), global_ocean.90x40x15(10),
376    global_ocean.cs32x15(11x3,10), natl_box(11), tutorial_global_oce_latlon(11)    global_ocean.cs32x15(11x3,10), natl_box(11), tutorial_global_oce_latlon(11)
377    + adjoint results: global_ocean_ebm(11) and lab_sea (12).    + adjoint results: global_ocean_ebm(11) and lab_sea (12).
378      Coupled set-up: allow to restart from previous pickups (cpl_oldPickup=T).
379    Next: will retire convertEmP2rUnit (simply using mass2rUnit instead).    Next: will retire convertEmP2rUnit (simply using mass2rUnit instead).
380    
381  checkpoint59h  checkpoint59h

Legend:
Removed from v.1.893  
changed lines
  Added in v.1.1008

  ViewVC Help
Powered by ViewVC 1.1.22