/[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.742 by mlosch, Wed Nov 1 09:50:43 2006 UTC revision 1.847 by heimbach, Thu Jun 28 00:35:07 2007 UTC
# Line 3  $Name$ Line 3  $Name$
3    
4      Notes on tags used in MITgcmUV      Notes on tags used in MITgcmUV
5      ==============================      ==============================
6    
7    o gmredi: add option (GM_taper_scheme='fm07') for Ferrari & McWilliams 2007
8      scheme and the corresponding test case (under front_relax dir). For now,
9      only available with Skew-flux form and not yet tested in realistic set-up.
10      adjoint: store directives updated, but gradient checks deteriorated,
11      so maybe GM/Redi adjoint is now broken.
12    o seaice adjoint
13      * add AREA, HEFF, HSNOW as control variable
14        (should not change lab_sea results)
15      * CTRL_OPTIONS.h needs new flag: CTRL_SET_OLD_MAXCVARS_40
16    o pkg/seaice: added computation of saltFlux in seaice_growth;
17       For time being, sea ice salinity is assumed constant
18       contribution of snow flooding to freshening of sea ice is neglected.
19       SEAICE_salinity is set in SEAICE_PARM01 of data.seaice and it
20       defaults to 0.0 in order to maintain backward compatibility.
21       Typical values for SEAICE_salinity are 4 to 10 g/kg.
22    
23    checkpoint59d
24    o standard name: {PKG}_DIAGNOSTICS_STATE to fill diagnostics array
25     for {PKG} state variables, and called from DO_STATEVARS_DIAGS.
26     (keep {PKG}_DIAGNOSTICS_FILL for non-state variables diagnostics)
27    o pkg/gmredi (gmredi_readparms.F): add some missing "_d 0"
28     and change default value of parameter "GM_Small_Number";
29     update output of exp: lab_sea (x2), cfc_example, global_ocean.90x40x15,
30       global_ocean.cs32x15 (x4), global_ocean_ebm, global_with_exf,  
31       tutorial_global_oce_biogeo, tutorial_global_oce_latlon
32    o pkg/ecco: cost function when applying pkg/smooth to controls
33    o pkg/ctrl: add forcingPrecond run time parameter
34    o pkg/seaice:
35     - replace ZMIN=4.e8 with ZMIN=0. in dynsolver.F as in C-grid code
36     - fix bug in metric terms of u-equation in LSR solver (implicit part),
37       changes verification/lab_sea
38     - rearrange implicit part of u-equation in LSR solver to make it easier to
39       read, understand, and debug. This causes changes at the truncation level.
40     - fix (serious) bug in the boundary conditions (sign error in the implicit
41       part) of the LSR solver. Changes all LSR results.
42     - fixed problem with HSNOW initialization to avoid thick snow when AREA
43       is initilized with small values - does not change lab_sea results.
44     - added HsnowFile initialization capability
45    o pkg/smooth: addition to model/src and pkg/ctrl so allow
46     initialization of pkg/smooth and application to control vector
47    o pkg/seaice: fix another bug in the LSR no-slip boundary conditons
48    o dependencies: pkg/profiles requires pkg/cal
49    o pkg/profiles:
50     - added option ALLOW_PROFILES_GENERICGRID
51         -> pkg/profiles can thus be used with any grid (e.g. cs32x15) assuming
52         that interpolation information (grid points and coefficients) is provided
53         within the netcdf input files.
54         -> sample matlab scripts can be found in MITgcm_contrib/gael
55         that allow you to prepare netcdf input files.
56     - also modified: cleaner include statements, cleaner error print statements,
57       cleaner stops when error, and more tests of the netcdf input files consistency.
58    o additional test (in global_ocean.cs32x15) using seaice+thsice pkgs.
59    o pkg/seaice:
60     - move seaice-diagnostics from seaice_do_diags to do_statevars_diags; this
61       requires a new routine: seaice_diagnostics_fill.F
62     - make sure that seaice does not move if not forced (pressure replacement
63       method, Hibler and Ip, 1995), changes results
64     - and new damping criterion for EVP solver according to Hunke, JCP, 2001
65     - SEAICE_evpDampC = > 0. turns it on (615. is the recommended value).
66       It is turned off by default (=-1.), because it changes the results.
67     - make it possible to read AREA from a file, too.
68    
69    checkpoint59c
70    o add S/R and diagnostics for oceanic mixed-layer depth
71    o move GMRedi call after all vertical mixing schemes (including KPP)
72    o pkg/thsice:
73     - ensure iceMask > iceMaskMin : this problem appeared after May-04 modifs
74      (melt only laterally if thin ice): update output of global_ocean.cs32x15.thsice
75    o pkg/obcs:
76     - bug fix for balance code
77    o pkg/seaice:
78      - allow values of SEAICE_elasticParm > 1
79      - add new parameter SEAICE_evpTauRelax as an alternative
80        to SEAICE_elasticParm
81      - make lsr boundary conditions free slip (by default), changes result
82      - add code for no slip boundary conditions for lsr
83      - set minimum of zeta to zero (and not 4e8) (changes results)
84      - add a cap on AREA after advecting AREA if seaice_growth is not called
85    o change calculation of Visbeck K:
86      - no longer depend on tapering scheme; instead, compute slope (limited
87        by GM_maxSlope). this is equivalent to what was comuted before with
88        clipping or linear tappering.
89      - fix vertical averaging (wrong by 1/2 level)
90      - leave the old version (but will not be maintained) within
91        #ifdef OLD_VISBECK_CALC / #endif
92      - update output of exp. ideal_2D_oce
93    o change error catch in calc_r_star to improve vectorization
94    o exf runoff and seaice: remove ALLOW_SEAICE from exf pkg files and
95      add #define ALLOW_RUNOFF in SEAICE_OPTIONS.h (when not using exf).
96    o adjoint:
97      Re-organized adjoint checkpointing according to Matt Mazloff
98      (but with modifs/completions/cleanups)
99      Storing is now bundled into large arrays to optimized I/O
100      (and second step in cleanup of the_main_loop)
101    
102    checkpoint59b
103    o coupler (pkg/atm_ocn_coupler, pkg/ocn_compon_interf, pkg/atm2d):
104      - export/import (between ocean & coupler) fields needed for ocean DIC.
105    o pkg/seaice:
106      - get rid of three more exchanges seaice_calc_viscosities (required
107        different loop boundaries in seaice_lsr and seaice_ocean_stress)
108      - bug fix in seaice_ocean_stress (update of lab_sea required)
109      - reduce loop boundaries to necessary minimum also in seaice_evp
110      - go back to the old way of computing deltaC/Z as the adjoint likes that
111        better
112    o Refresh of tutorial_global_oce_latlon (includes changing salinity-like
113      passive tracer to an Age Tracer) + update output.txt
114    o pkg/exf:
115      - implement A-grid / C-grid selection for wind-stress input files.
116      - clean-up exf_wind.F (remove us, use wspeed instead ; add wStress)
117      for now, in exf_bulk_largeyeager04.F only :
118      - change implementation for case where windspeed + 2. components wind-stress
119        are read-in. AND use rhoConstFresh to convert evap.
120    o pkg/seaice:
121      - use correct EXCH_UV for wind-forcing (on A-grid).
122      - change SEAICE_OPTIONS.h to limit the number of option combinations (regarding
123        SEAICE_EXTERNAL_FORCING & SEAICE_EXTERNAL_FLUXES); add corresponding stops.
124    o pkg/exf:
125      - default EXF options are now set in EXF_OPTIONS.h (ifndef ALLOW_AUTODIFF_TAMC)
126      EXF_INTERPOLATION:
127      - merge global_with_exf/code version of exf_interp_read.F
128        to the main code ;
129      - Add new option: EXF_INTERP_USE_DYNALLOC to use Dynamical Allocation when
130        reading the file ; Important: This options needs to be defined to recover
131        previous code.
132        otherwise, use fixed size array to read in (size=exf_interp_bufferSize).
133      - no longer loose real*8 precision along the way when using exf_iprec=64.
134    o pkg/seaice: rearrangement of common blocks (really needs more cleaning up)
135      - change discretisation of evp-solver in order to avoid another exchange
136        (changes lab_sea) and clean up a little
137      - replace SQRT(MAX(deltaC,SEAICE_EPS)) by MAX(SQRT(deltaC),SEAICE_EPS)
138        help the adjoint (this also changes the results slightly)
139      - add a few "_d 0" where they had been missing in seaice_evp.F
140      - cleaning up: remove unused seaice_calc_rhs.F
141    o pkg/exf: some cleaning-up:
142      - change various "constants" into runtime parameters
143      - cleaned-up Large&Yeager04 routine which should eventually
144        replace exf_bulkformulae.F (changed names of S/R and CPP)
145        and merged various ALLOW_ATM_WIND options
146     only used with thsice pkg (in thsice_get_exf.F):
147      - implement fixed turbulent transfert Coeff over ice (as in Large&Yeager04)
148        which are used when useStabilityFct_overIce=TRUE (= the default)
149      - change default values of ice & snow emissivity and scale downward LW
150        by ice & snow emissivity.
151    o pkg/thsice:
152     fix few little problems, in thsice_calc_thickn.F:
153      - growth vertically (and not laterally) if iceFrac == iceMaskMax
154      - melt only laterally if hIce < hThinIce (as the comments say)
155      and in thsice_extend.F:
156      - allow to form ice even when iceFrac == iceMaskMax (by increasing thickness)
157      - start to form ice as soon as the minimum ice-volume is reachable.
158     update output of test-exp: aim.5l_cs(thSI), global_ocean.cs32x15(thsice),
159      and cpl_aim+ocn
160    o pkg/kpp
161     - move computation of surface related input fields to KPP into a new
162       subroutine kpp_forcing_surf.F
163     - remove wrong (within bi,bj loops) EXCH calls.
164     - little cleaning (add argument myThid in last position, cvs header ...)
165     - for now, fix conservation problem by exchanging KPPviscAz (may not
166       be the best fix)
167    o pkg/seaice
168     - check for inconsistent evp parameter/cpp-flag combination
169     - remove leftover errIO flat for obsolete name list error handling
170    o OpenAD
171     - changed verification/OpenAD to full baroclinic setup (including GM/Redi)
172    
173    checkpoint59a
174    o pkg/seaice: some parameter clarifications and a little bit of clean up
175    o pkg/thsice: rename run-time parameters:
176       himin       -> hIceMin
177       himin0      -> hThinIce
178       hihig       -> hThickIce
179       i0          -> i0swFrac
180       transCoef   -> bMeltCoef
181       frac_energy -> fracMelting
182      add new parameters: hNewIceMax, fracFreezing, dhSnowLin
183       with default values (for now) that do not change the results.
184      remove old version of thsice vars advection in pkg/seaice.
185    o in FFIELDS.h:
186      - replace #ifndef ALLOW_EXF  by #ifndef EXCLUDE_FFIELDS_LOAD
187      - make pLoad & sIceLoad always available (but still only used if
188         ATMOSPHERIC_LOADING is #define).
189    o pkg/kpp: replaced _KPP_RL with _RL
190    o bug fixes for vertical diffusivity computations when both KPP and
191        3D diffusivity arrays are used.
192    o pkg/seaice: fix bug in evp solver, while doing that
193      - change (improve?) discretization of stress computations for both
194        cgrid-lsr and evp solver
195      - add a new routine to compute strain rates
196      - the above changes lab_sea results
197      - add no slip conditions for evp solver (off by default), lsr-version
198        may follow
199      - fix exchange for shear at Z-points (does not change lab_sea)
200      - retire SEAICEuseEVP, instead turn on EVP by setting SEAICE_deltaTevp
201        (to force the user to pick a time step since there is not "safe" way
202        of choosing it)
203      - add principal stress diagnostics
204      - rearrange fields for evp a little to avoid having to call a: too many
205        exchanges and b: exchanges for stress trensor components which we do
206        not have.
207      - modify Hibler+Bryan (1987) stress coupling so that it reuses information
208        of evp, complete rewrite for lsr case (latter is does not yet work
209        in all cases)
210    o pkg/kpp: add code to have mixing in shelf ice caverns
211      - add myThid to all kpp routines (long overdue)
212    
213    checkpoint59
214    o pkg/exf:
215      - fix wind-stress location: defined on A-grid (if ALLOW_ATM_WIND &
216        ALLOW_BULKFORMULAE or USE_EXF_INTERPOLATION), otherwise, defined on C-grid
217      - move exf header files from lower_case.h to UPPER_CASE.h ;
218        add missing cvs Header & Name
219      - add adjoint routines and flow dirs for newly used exch_uv_agrid routines
220      - add namelist param. selectStressGridPosition, exf_monFreq
221      - retire many _CLIM routines, and remove data.exf_clim
222        + params moved to data.exf
223        + climsst, climsss now handled by exf_set_gen, i.e.
224          climss?period=0 refers to constant field,
225          climss?period=-12 to monthly forcing
226      - split up namelists in data.exf
227    o pkg/seaice:
228      - remove seaice_exch and seaice_exch_uv
229      - remove superfluous exchange of theta
230      - add myThid to seaice_budget_ocean/ice
231      - add new interface for atmospheric wind forcing (C-grid only)
232        + new routine
233        + two new field (taux, tauy for stress over ice)
234        + removed one global field (DAIRN) for C-grid case only
235    o pkg/thsise
236      - 2nd set of modifs for thsice adjoint in conjunction with exf
237    o enable runtime flag useEXF (useCAL is set to .T. if useEXF=.T.)
238    
239    checkpoint58y_post
240    o Added capability for latitudinal dependence of Bryan and Lewis, 1979
241      vertical diffusivity, similar to that in MOM4; turned on using
242      #define ALLOW_BL79_LAT_VARY in CPP_OPTIONS.h and specified using
243      diffKrBL79*, diffKrBLEQ*, and BL79LatVary in runtime data file.
244    o Added capability for 3D specification of background vertical diffusion
245      coefficient.  This is done by (i) #define ALLOW_3D_DIFFKR
246      in CPP_OPTIONS.h and (ii) specifying file diffKrFile in runtime
247      "data" file that contains the 3D vertical diffusivity coefficients.
248    o ice dynamics (pkg/seaice) with thsice thermodynamics:
249      - add code within pkg thsice to advect & diffuse sea-ice fields
250      similar to (and will replace) what has been added in  seaice_advdiff.F,
251      but: - conserving Mass, Heat & Salt.
252           - better when using non-linear advection scheme (not yet fully tested)
253           - can also be used in atmospheric set-up (for now, only the diffusion).
254    
255    checkpoint58x_post
256    o IO option for global-file compact format:
257      - add options when generating topology (utils/exch2/matlab-topology-generator)
258      - add I/O capability (pkg/mdsio).
259      - adapt utils/matlab/rdmds.m to read this format.
260      for now long-line format not yet supported by pkg/mdsio (& exch2).
261    o shelfice: add a few diagnostics
262    
263    checkpoint58w_post
264    o p-coord. non-hydrostatic using reference profile for w <-> omega conversion:
265      rVel2wUnit & wUnit2rVel are computed from reference profile Tref,Sref
266      (and replace horiVertRatio in NH code).
267      Update output of exp.: tutorial_global_oce_in_p (useNHMTerms !)
268                         and tutorial_plume_on_slope (sensitive to truncation)
269    o seaice: if ALLOW_ATM_WIND is undefined use wind stress
270      directly to drive seaice model (C-grid only)
271    o exf: when input wind-stress (#undef ALLOW_ATM_WIND):
272     - reintroduce computation of wind from stress,
273     - compute tau (in exf_bulkformulae.F) from windstress averaged to
274       mass points to avoid tau = 0
275     - fix serious bug: (1/3) in Fortran is not the same as (1./3.)
276    o rdmnc.m: make it work with "global" files created with gluemnc
277    o rdmnc.m : some improvements in dealing with singleton dimension
278      (tested on all testreport mnc output files).
279    o genmake2: disable pkg/profiles if netcdf test fails.
280    o cpl_aim+ocn exp.: use consistent rhoConstFresh in Atm & Ocn; update output.
281    o move call to cal_readparms up to make calendar parameters/variable available
282      to all packages
283    
284    checkpoint58v_post
285    o change EOS (from POLY3 to JMD95P) in global_ocean.90x45x15 to get
286      useDynP_inEos_Zc tested.
287    o pkg/exf: changes to properly interpolate/mask/scale initial fields
288    o utils/matlab/cs_grid/read_cs: routines to speed up reading of CS510 fields
289      and portions thereof.  See read_cs.txt for description and examples.
290    o utils/matlab/cs_grid/bk_line: to compute transport through passages,
291      add a script (grt_circ_bkl.m) to generate broken-line between 2 points,
292      following the great-circle arc between those 2 points.
293    o trap un-initialized variable with pathscale compiler on weddell.mit.edu
294      (thanks to Constantinos): fix few problems and get (almost) all exp to pass.
295    o 2nd-Order Moment Advection Scheme (Prather, 1986): first check-in
296     - enable by setting #define GAD_ALLOW_SOM_ADVECT (in GAD_OPTIONS.h)
297     - used without limiter (AdvScheme=80) or with Prather limiter (AdvScheme=81)
298     - still needs work (not working with some options ; efficiency to improve)
299       and serious testing.
300     - use this scheme for temperature & salinity in 2 advection test exp.:
301       advect_xy & advect_xz, respectively.
302    
303    checkpoint58u_post
304    o new test-exp: fizhi-cs-32x32x40 (40 levels) to replace the 10 levels.
305    o move call to INI_FORCING from PACKAGES_INIT_VARIABLES to INITIALISE_VARIA.
306    o testreport: add option "-skipdir" to skip some test.
307    o exf: when input wind-stress (#undef ALLOW_ATM_WIND), by-pass turbulent
308      momentum calculation.
309    o gad_advection: fix vertAdvecScheme (if different from advectionScheme)
310    o some cleaning: usePickupBeforeC35 no longer supported ; remove this option.
311      remove checkpoint.F and the_correction_step.F (no longer used);
312      do the k loop inside CYCLE_TRACER (supposed to be more efficient).
313    o add option (linFSConserveTr) to correct for tracer source/sink due to
314      Linear Free surface
315    o pkg/seaice: fix a bug in the flooding algorithm: turn off the snow machine
316    o pkg/thsice: fix reading mnc-pickups
317    
318    checkpoint58t_post
319    o pkg/diagnostics: fix multi-threaded output (when singleCpuIO=F)
320    o pkg/mdsio:
321     - clean-up mdsio_readfield.F & mdsio_writefield_new.F and
322       move to new files: mdsio_read_field.F (S/R MDS_READ_FIELD) &
323       mdsio_write_field.F (S/R MDS_WRITE_FIELD);
324     - fix multi-threaded singleCpuIO option in MDS_WRITE_FIELD
325     - collect old S/R  in one file: mdsio_rw_field.F (now just a call to
326       either MDS_READ_FIELD or MDS_WRITE_FIELD )
327     - new S/R (to replace MDSWRITEMETA), which allows to write more
328       informations (variable names, time ...) to meta files.
329     - modify rdmds.m to give back the meta file content.
330    o pkg/diagnostics: change vertical interpolation to be safer, and more
331       flexible (define p-levels to interpolate to in data.diagnostics);
332      add argument to S/R DIAGNOSTICS_GET_POINTERS to catch the right
333       diagnostic pointer.
334    o pkg/seaice: more cleaning up of seaice_growth, added many comments
335    o pkg/exf: put runoff0 and runoff1 into the appropriate common block
336    o fix multi-category seaice:
337     - change cpp flag SEAICE_MULTILEVEL to more meaningful name:
338       SEAICE_MULTICATEGORY
339     - fix short wave heat flux
340    o pkg/seaice: change default (SEAICE_OPTIONS.h): use C-grid dynamics
341       and allow to use EVP solver. Change forward lab_sea: test both EVP
342       solver and LSR solver, and use C-grid dynamics (like lab_sea adjoint)
343    o Initial check-in of lab_sea adjoint
344      (very similar to natl_box_adjoint/code_seaice)
345      * used C-grid and EVP solver
346      * used KPP, GM/Redi
347      * uses inAdExact=.TRUE.
348      * gradient checks fail for both ADM and TLM
349        due to sensitive snow melt code in seaice_grwoth (look for "JZ")
350        f.d. gradients actually seem more problematic than ADM, TLM gradients;
351        issue is related to forward mismatch between g77 an ifort
352    o pkg/seaice: overhaul of thermodynamics
353     - growth.F and groatb.F are replaced by new routine seaice_growth.F
354     - budget.F is replaced by two new routines seaice_budget_ocean/ice.F
355     - move a few global fields out of SEAICE.h into seaice_growth.F and
356       make them 2D (FICE/QNETO/ ...)
357     - remove FO (it is the same as QNETO)
358     - introduce a few local fields to avoid modifying external fields such
359       as atemp, etc.
360    
361    checkpoint58s_post
362    o pkg/exf: moved exf_init_runoff.F to exf_init.F and exf_set_gen.F
363      changed exf_set_gen.F so that
364        genperiod=0 means input file is one time-constant field and
365        genperiod=-12 means input file contains 12 monthly means
366    o CG2D: use pre-computed solver main-diagonal (stored in common block);
367      this affects truncation error ; generate new output file for exp. which
368      fails: exp4(12d), fizhi-cs-aqualev20(12d), front_relax(10d),
369        global_ocean.90x40x15(10d), global_ocean.cs32x15(10d).thsice(11d).viscA4(10d),
370        ideal_2D_oce(10d), internal_wave(09d), isomip.htd(11d), matrix_example(07d),
371        MLAdjust(4x11d,12d), natl_box(11d), rotating_tank(12d),
372        tutorial_global_oce_in_p(10d), tutorial_plume_on_slope(11d),
373        vermix(12d).ggl90(12d).my82(11d).opps(12d).pp81(11d)
374    o start implementation of deep-atmosphere and anelastic formulation
375    o verification: remove 2nd copy of input files and use script "prepare_run"
376      to make a symbolic link to the 1rst copy (reduce downloaded size by ~81.M)
377    o mom_common/vecinv/fluxform: fix a few initialisation isssues
378    o profiles: fix for multithreaded case
379    
380    o diagnostics: rename few diags:
381      s/'PRESSURE'/'RCENTER '/g
382      s/'TICE    '/'oceFreez'/g
383      s/'TAUX    '/'oceTAUX '/g
384      s/'TAUY    '/'oceTAUY '/g
385      s/'SWFLUX  '/'oceQsw  '/g
386      s/DIFx/DFxE/g
387      s/DIFy/DFyE/g
388      and add few ocean-forcing diagnostics:
389      atmPload, sIceLoad, oceQnet, oceFWflx, oceSflux, surForcT & surForcS
390    o modifications to pkg/seaice/growth.F and budget.F, which change results of
391      lab_sea experiment: HSNOW was sometimes treated as effective and sometimes
392      as actual snow thickness.  It now refers everywhere to effective snow
393      thickness, meaning that for non-zero AREA, actual thickness is HEFF/AREA.
394    
395    checkpoint58r_post
396    o modifications to pkg/seaice/growth.F, which change results of
397      lab_sea experiment: fixes pertain to melting snow over open water, to
398      masking EVAP under sea ice, and to using the correct AREA variable for
399      computations of EVAP, PRECIP, HSNOW, and GHEFF
400    o add ability to read bathy, salt, and theta using MNC (off by def)
401  o add flooding algorithm and advection of HSNOW for pkg/seaice;  o add flooding algorithm and advection of HSNOW for pkg/seaice;
402    both are turned off by default and do no change any results    both are turned off by default and do no change any results
403  o seaice advection with pkg/thsice: a step toward the use of non-linear  o seaice advection with pkg/thsice: a step toward the use of non-linear

Legend:
Removed from v.1.742  
changed lines
  Added in v.1.847

  ViewVC Help
Powered by ViewVC 1.1.22