/[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.1749 by mlosch, Tue Oct 16 07:08:56 2012 UTC revision 1.1788 by jmc, Sat Dec 22 00:41:09 2012 UTC
# Line 4  $Name$ Line 4  $Name$
4      Notes on tags used in MITgcmUV      Notes on tags used in MITgcmUV
5      ==============================      ==============================
6    
7    o model/src:
8      - add run-time parameter to select CG2D solver minimum-residual solution
9        (in case of a poor convergence).
10    o pkg/seaice/seaice_lsr.F
11      - move calculation of matrix coefficients into new
12        S/R SEAICE_CALC_LSR_COEFFS; for now this routine remains in the same
13        file; the main purpose of this change is to be able to reuse the code
14        in S/R SEAICE_PRECONDITIONER
15      - modify the computation of the residual so that the mass of sea-ice
16        is not used twice; this simplyfies the calculations, but since
17        the residual is never used except when LSR_mixIniGuess.ge.4---and this is
18        not tested in testreport---this does not affect the testreport results.
19    o verification/seaice_obcs:
20      - disable SEAICE_GROWTH_LEGACY; reset input files to match those of
21        verification/lab_sea/input.salt_plume; changes results/output.txt*
22    o model/src:
23      - adapt quasi-hydrostatic formulation to work with p or p* coordinate.
24    o pkg/seaice:
25      - improve description of parameters in seaice_fgmres.F and start
26        cleaning up the code
27      - change name of SCALPROD to SEAICE_SCALPROD and modify meaning of
28        second argument
29      - add a metric based on grid cell area to SEAICE_SCALPROD; update
30        results of offline_exf_seaice.dyn_jfnk
31      - compute initial residual norm in seaice_jfnk based on SEAICE_SCALPROD
32    o pkg/aim_v23:
33      - fix an other bug in dissipation heating (grid-cell area was missing).
34    o model/src + pkg/seaice:
35      - add global (multi-tile) linear solver for pair of tri-diagonal system
36        along X and Y lines, respectively for U and V component.
37        Note: 1) MPI and cube-exchange not yet coded.
38            2) probably not accurate for poorly conditioned / large size problem.
39      - add option for SEAICE_LSR to use global (multi-tile) tri-diagonal solver;
40        default: not compiled and not used.
41    o pkg/seaice:
42      - first attempt at a multi-threaded fgmres solver for the JFNK solver:
43        introduce bi/bj loops and use global_sum_tile_rl instead of
44        mpi_allreduce in seaice_fgmres.F
45      - improve diagnostics output for fgmres solver (seaice_fgmres.F)
46      - replace a few unnecessary goto statements by if-blocks  (seaice_fgmres.F)
47      - add a verification experiment for JFNK in offline_exf_seaice
48    o verification:
49      - change (for now, only fwd test) offline_exf_seaice experiment:
50        use a re-entrant channel with idealized costline (trapezoidal shape)
51        at southern boundary to explore seaice dynamics and thermodynamics
52        with simple forcing. Main set-up has dynamics+thermo and SST relaxation;
53        secondary test (input.thsice) use thermodynamics only with SST relaxation.
54      - add seaice-dynamics only secondary test using LSR and pkg/thsice advection.
55    o pkg/exf:
56      - disable "sstExtrapol" when Nr=1
57    o verification:
58      - add new experiment "cheapAML_box" (simple 1 layer set-up from Bruno Deremble)
59        to test pkg/cheapaml.
60    o pkg/aim_v23 & pkg/shap_filt:
61      - fix dissipation heating (erroneous gravity multiplication factor).
62    o pkg/seaice:
63      - remove unused field pressPre from jfnk solver
64      - rename two subroutines in seaice_preconditioner.F
65    o eesupp/src:
66       - S/R MDSFINDUNIT avoids reserved unit numbers (scrUnit1, eeDataUnit ...)
67    o pkg/seaice/seaice_preconditioner.F: fix preconditioner once again
68       - remove wrong parts of the rhs and the lhs (were in there
69         because I did not understand the concept of this preconditioner)
70       - add an exchange between u- and v-sweep. This increases communication
71         by a factor of two but improves the convergence of jfnk. Ideally,
72         one would like the u- and v-sweep to be independent. So far within
73         undocumented ifdefs
74       - reorganize the extra computations for printing the residuals
75    o tools/genmake2:
76      - comment out the "mpif.h" include in NetCDF test programm (for MPI built)
77        since it's not necessary (and was preventing to use MNC in some cases).
78    
79    checkpoint64a (2012/11/16)
80    o pkg/autodiff:
81      - improve pkg-internal logical parameter switch (inAd/inFwd mode) so that
82        autodiff_readparms.F no longer depends on calling order (within
83        packages_readparms.F) and no longer requires to include ${PKG}_PARMS.h):
84        rename param turnFreeDriftInAdMode to SEAICEuseFREEDRIFTswitchInAd
85        and change param SEAICEuseDYNAMICSinAdMode to SEAICEuseDYNAMICSswitchInAd.
86    o pkg/obcs:
87      - adding tidal velocity forcing capability to obcs
88        for usage example, see verification/seaice_obcs/input.tides
89    o pkg/seaice:
90      - turn the LSR-relaxation parameters WFAU/V into runtime parameters
91        SEAICE_LSRrelaxU/V
92      - introduce runtime parameter SEAICEetaZmethod (=0 by default)
93    o pkg/aim_v23:
94      - implement heating from friction (bottom friction and stratospheric drag).
95    o pkg/shap_filt:
96      - fix diagnostic "SHAP_dKE" (was 2 time smaller); implement heating from
97        dissipation but only for Shap_funct=2, active when addFrictionHeating=T.
98    o model/src:
99      - move AddMass common block from DYNVARS.h to FFIELDS.h; allow to read-in
100        time-constant addMass field from file (addMassFile);
101      - support for heating due to friction (and Kinetic Energy dissipation):
102        add option, run-time switch and 3-D field array + support code ; each pkg
103        or S/R can add heating contribution (if there is a sink of KE); the sum is
104        accounted for as a Temperature tendency term (EXTERNAL_FORCING_T).
105    o pkg/seaice:
106      - complete merge of ITD code into seaice_growth.F
107        from MITgcm_contrib/torge/itd/code/
108        no verification so far, but Torge Martin tested
109        "1-D test case and Beaufort set up;
110        deliver okay results after 1 model year."
111      - complete merge of SEAICE_SIZE.h into all relevant routines
112      - move computation of eta at Z-points into calc_viscosities
113        + introduce global field etaZ
114        + add different methods for computing etaZ, for now the old
115          method (simple averages of eta to Z-points) is hardwired
116        + replace etaMeanZ by etaZ in seaice_lsr, seaice_calc_residual,
117          seaice_preconditioner
118      - simplify computations for SEAICE_ZETA_SMOOTHREG
119      - seaice_preconditioner:
120        + replace one remaining press by pressLoc (mistake)
121        + adjust printing of residuals
122      - improve I/O of diagnostics of JFNK in seaice_jfnk.F:
123        + add (SEAICE.h) and rename some counters (initiliased in
124          seaice_init_fixed.F)
125        + add _BEGIN/END_MASTER (myThid)  around print statements
126        + print total number of iterations and failures over SEAICE_monFreq
127          interval to STDOUT
128      - move control over output-messages by fgmres to seaice_jfnk to save
129        some operations
130      - move resetting initial guess for fgmres outside of seaice_fgmres_driver
131        in order to make restarts with sol .ne. zero (fgmres with restarts)
132        (seaice_jfnk.F, seaice_fgmres.F)
133      - seaice_calc_l/rhs.F: replace maskW/S by maskInW/S; this fixes
134        a serious convergence problem when open boundaries are involved
135    o pkg/ggl90: fix computation of control volumes for the case of
136      ALLOW_GGL90_HORIZDIFF (probably not used very often): move control volumes
137      up half a grid cell from C-centered to W-centered (pointed out by C. Eden)
138    o pkg/seaice: simplify seaice_evp by avoiding use of extra fields u/vIceC
139    o pkg/autodiff
140      - Add inAdMode switch for SEAICEuseDYNAMICS:
141        SEAICEuseDYNAMICSinAdMode
142        (extend logic in ADAUTODIFF_INADMODE_SET)
143    o pkg/seaice
144      - Step 1 of merging ice-thickness distribution (ITD) code from
145        MITgcm_contrib/torge/itd/ (author: Torge Martin)
146        The code implements concept laid out in Thorndike et al. (1975);
147        code is enabled via CPP flag SEAICE_ITD
148        nITD (in SEAICE_SIZE.h) defines number of ice thickness categories;
149        code is not complete yet!!
150      - SEAICE_SIZE.h now included in almost all seaice routines
151    o verification (using seaice):
152      - switch back seaice-dynamics (+ lower SOLV_MAX_ITERS) in ADM exp.
153        global_ocean.cs32x15.seaice ; update results.
154      - compile B-grid dynamics in FW test exp 1D_ocean_ice_column ;
155      - compile C-grid dynamics with #define SEAICE_ALLOW_JFNK in FW test exp
156        offline_exf_seaice (previously compiling B-grid).
157    o pkg/exf:
158      - fix some STOP conditions in exf_check.F (from Aug 28, modifs did not allow
159        to specify neither just 1 comp of wind or wind-stress, nor no surface momentum
160        forcing): just replace CPP option ALLOW_ATM_WIND with run-time param useAtmWind.
161    o pkg/layers (adjust changes from Sept 19):
162      - do snap-shot output and fill diagnostics from inside iLa loop (layers_calc.F)
163        this allows to remove "layers_maxNum" dimension from all layers arrays.
164    o pkg/layers (adjust changes from Sept 19):
165      - remove ALLOW_LAYERS_OUTPUT ; fix snap-shot and time-ave output ;
166      - snap-shot extended to all type of layers (not just the 1rst type);
167      - remove layers variables when corresponding CPP option is undef.
168    o pkg/layers:
169      - rename pkg/layers variable and add new output (layer exist & un-weighted
170        velocity in layer)
171    o pkg/seaice:
172      - simplify (?) ocean-drag coefficent computations by using
173        the same routine in all three solvers (saves some code lines)
174      - remove global fields DRAGA and DRAGS from C-grid code and
175        declare them locally in lsr.F (the only place where they are
176        still used)
177      - update AD output of lab_sea.evp (very sensitive anyway).
178  o pkg/seaice: add Jacobian-free Newton Krylov solver for ice dynamics  o pkg/seaice: add Jacobian-free Newton Krylov solver for ice dynamics
179    (Lemieux et al. 2010, 2012). Turn on with the usual SEAICE_ALLOW_JFNK    (Lemieux et al. 2010, 2012). Turn on with the usual SEAICE_ALLOW_JFNK
180    and SEAICEuseJFNK=.true. A few things to note:    and SEAICEuseJFNK=.true. A few things to note:
# Line 12  o pkg/seaice: add Jacobian-free Newton K Line 183  o pkg/seaice: add Jacobian-free Newton K
183      orthogonalization method. Needs to be replaced. Original code      orthogonalization method. Needs to be replaced. Original code
184      from J.-F. Lemieux      from J.-F. Lemieux
185    - preconditioner for FGMRES is a stripped down version of LSOR    - preconditioner for FGMRES is a stripped down version of LSOR
186    - SOLV_MAX_ITERS is now used for LSOR as a solver and as a    - SOLV_MAX_ITERS is now used for LSOR as a solver and as a
187      preconditioner. For the preconditioner, the default is set to 10.      preconditioner. For the preconditioner, the default is set to 10.
188    - Jacobian times vector is computed with finite differences    - Jacobian times vector is computed with finite differences
189    - marginally related to JFNK-solver: add a smooth regularization for    - marginally related to JFNK-solver: add a smooth regularization for

Legend:
Removed from v.1.1749  
changed lines
  Added in v.1.1788

  ViewVC Help
Powered by ViewVC 1.1.22