/[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.2157 by rpa, Tue Jun 9 16:31:45 2015 UTC revision 1.2191 by mlosch, Thu Oct 22 15:51:59 2015 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/seaice/seaice_evp.F: fix store directives and key computations, since
8      there is no adjoint test for EVP, we don't know what it does to the adjoint
9      solution, but at least there are no more recomputation warnings left
10    o pkg/seaice/seaice_evp.F: slight modification of averaging so that EVP stands
11      a chance of giving the same results as a fully converged VP (JFNK) solver
12    o tools/adjoint_options/adjoint_diva:
13      - fix bug (typo) in Tang-Linear FLAGS setting for MPI + DIVA
14    o pkg/streamice:
15      - spotted bug in streamice_driving_stress using dyG where should have been dxG
16    o pkg/exf:
17      - remove STOP statement that prevented to use wind or (wind-)stress
18        interpolation for constant-in-time forcing fields (wind/stress period = 0).
19    o pkg/seaice:
20      - replace SEAICE_EVP_USE_ADAPTATION by run time parameters, requires
21        5 additionals 2D fields and 6 new store directives
22      - change logic in seaice_readparms.F: EVP code can now be turned on in
23        various ways, setting SEAICE_deltaTev is no longer required,
24        alternatively set SEAICE_evpAlpha/Beta, SEAICEuseEVPstar, SEAICEuseEVPrev,
25        or SEAICEaEVPcoeff
26    o pkg/shelfice/shelfice_thermodynamics.F
27      - redefining uLoc/vLoc to u/v, instead of 2u/v
28    o pkg/seaice/seaice_evp.F: introduce "adaptive EVP" by Madlen Kimmritz
29      - this is an intermediate state of a truely converging EVP that has
30        the potential of outperforming implicit VP methods, I do not recommend
31        using it yet.
32      - for now, "adaptive EVP" is turned on by setting SEAICE_EVP_USE_ADAPTATION
33        and all parameters are hardwired
34      - for convergence it still requires very smooth regularisations, that means,
35        if SEAICE_DELTA_SMOOTHREG is defined, deltaCreg=deltaC+deltaMin, which is
36        different from the VP case with deltaCreg=sqrt(deltaC**2+deltaMin**2); also
37        specific averaging appears to be required, still subject to tuning
38      - still needs cleaning and I need to turn parameter into runtime parameters
39      - add code to compute and print residuals of iteration, compile with
40        defining ALLOW_SEAICE_EVP_RESIDUAL to enable it
41    o pkg/seaice/seaice_evp.F: fix a bug (factor of four in front of e12Csq)
42      that entered with r1.54 on Sep04, 2015, -> update results
43    
44    checkpoint65o (2015/09/14)
45    o pkg/mom_vecinv & mom_common:
46      - add deep-atmosphere geometry factor in mom_calc_visc.F + in routines
47        called from there.
48      - add anelastic and deep-atmosphere geometry factor in pkg/mom_vecinv ; this
49        allows to use Vector-Invariant form in deep atmos and anelastic formulation
50    o pkg/seaice: introduce fast ice parameterisation following Itkin et al. (2015)
51      and Koenig-Beatty+Holland (2012)
52      - two new parameters SEAICE_tensilFac and SEAICE_tensilDepth
53      - global 2D field tensileStrength, computed in seaice_calc_ice_strength
54      - requires an extra input argument for S/R seaice_calc_viscosities
55      - tensileStrength's depth dependence is different from Itkin et al. (2015)
56        (to be changed and played with, for now exponential)
57    o pkg/seaice: introduce new parameter SEAICEscaleSurfStress (default = .FALSE.)
58      - if TRUE scale ice-ocean and ice-atmosphere stress acting on sea ice
59        by AREA according to Connelly et al. (2004), JPO.
60      - For EVP and the LSR solver, the implicit part of the drag term is
61        the only non-zero term in the denominator when there is no ice (which
62        prevented running the model with zero ice-ocean drag). If
63        SEAICEscaleSurfStress = .TRUE., this results in a division by zero
64        (or zero main diagonals BU/BV) which need to be caught. A practical
65        consequence is that for open water, the momentum equation reduce
66        to trivially 0 = 0 + 0 (for EVP). For LSR, BU/BV are reset to 1, if
67        they happen to be zero, often leading to a non-zero solution over
68        open water.
69    o pkg/seaice: revise EVP code (seaice_evp.F) in preparation for a more
70        efficient EVP method.
71      - introduce area-weighted averages for e12 (analogously to
72        seaice_calc_viscosities.F); this totally changes lab_sea.hb87 (2 digits
73        remain, but also changing the order of terms in the previous average
74        changed the results as much) -> update experiment
75      - add SEAICE_DELTA_SMOOTHREG code
76      - disentangle computation of zetaC/deltaC and zetaZ/deltaZ, also for
77        TEM-code
78      - adjust loop bounds so that only required fields are computed
79      - add new averaging code for zetaZ/deltaZ (again similar to
80        seaice_calc_viscosities.F), inactive by default for now (will change
81        results again), but will replace old code eventually
82    o eesupp/src:
83      - add an other alternative for multi-proc GLOBAL_SUM (in global_sum_tile.F)
84        to always cumulate tile local-sum in the same order
85        (option #define GLOBAL_SUM_ORDER_TILES in CPP_EEOPTIONS.h).
86        Still uses MPI_Allreduce (like standard code) but on array of tiles
87        and should be faster than GLOBAL_SUM_SEND_RECV code.
88      - switch almost all verification experiments that use GLOBAL_SUM_SEND_RECV
89        (defined in CPP_EEOPTIONS.h_mpi) to GLOBAL_SUM_ORDER_TILES instead.
90      - add CPP_EEOPTIONS.h_mpi with GLOBAL_SUM_ORDER_TILES defined in 14 more exp.:
91         aim.5l_cs, cheapAML_box, deep_anelastic, dome, fizhi-cs-32x32x40,
92         fizhi-cs-aqualev20, fizhi-gridalt-hs, global_ocean_ebm, matrix_example,
93         natl_box, solid-body.cs-32x32x1, tutorial_advection_in_gyre,
94         tutorial_baroclinic_gyre and tutorial_held_suarez_cs.
95    
96    checkpoint65n (2015/07/29)
97    o pkg/thsice:
98      - add a warning when used with pkg/aim but without updating SST
99        (stepFwd_oceMxL=F & useCoupler=F & tauRelax_MxL<>-1 ).
100    o pkg/offline:
101      - change where Offline-Fields are loaded, from load_fields_driver.F to
102        directly within FORWARD_STEP, just after updating iter number and time;
103      - move setting of GM and KPP diffusivity out of OFFLINE_FIELDS_LOAD into new
104        S/R OFFLINE_GET_DIFFUS that is called towards the end of DO_OCEANIC_PHYS;
105       These changes allow:
106        a) to recover exactly on-line results using deltaToffline=deltaTClock,
107        tested (using offlineIter0= nIter0 -1 and offlineTimeOffset= -deltaT/2)
108        both with Lin & Non-Lin Free-Surf, both with staggerTimeStep & synchronous
109        time-step, both with GM & KPP files and with recomputing these fields;
110        b) no needs to switch on staggerTimeStep anymore;
111        c) simplify rescaling of offline horiz. velocity with Non-Lin Free-Surf.
112      - update output of experiment tutorial_dic_adjoffline (only 3 digits left).
113    o pkg/offline:
114      - change (rarely used) offset-iteration parameter to an offset time (in s):
115        can easily recover previous offset-iter effect by setting offset-time
116        (offlineTimeOffset) to offset-iter x deltaToffline;
117      - do not turn-off Temp & Salinity surface relaxation when using KPP (used
118        in KPP as part of surface buoyancy forcing) in offline run.
119      - fix ptracers KPP non-local term in the case where KPP is re-computed.
120    o OpenAD
121      - Adding preliminary ggl90 test to OpenAD verification.
122        Config. with ggl90 currently diverges after 64 time steps
123        so will need more work to become more stable
124      - Adding preliminary kpp test to OpenAD verification.
125        required small tweakes in kpp_routines.F
126      - Merge and update from Krishna Narayanan's contrib area:
127        * Add one variable for preliminary OpenAD DIVA
128        * Add replacement time-stepping for OpenAD DIVA
129        * genmake2 flag -diva (but only for OpenAD; preliminary)
130        * required modifs for OAD_support
131        successful preliminary test for tutorial_global_oce_biogeo/
132    o pkg/seaice:
133      - initialise deltaC in seaice_lsr, cosmetic changes in seaice_lsr
134      - add cpp-flag SEAICE_DELTA_SMOOTHREG for option of regularising
135        delta with a smooth function in s/r seaice_calc_viscosity
136        (no effect on EVP)
137      - rename local suffix "sqr" into "sq" for more consistent variable names
138    o pkg/seaice:
139        add new parameter SEAICE_deltaMin that is used ***only***
140        for regularizing Delta (and nothing else, like the parameter
141        which is also used for all sorts of things SEAICE_EPS).
142        Defaults to SEAICE_EPS for backward compatibility only.
143    o pkg/seaice: replace erroneously storing e12Csqr on the wrong tape with
144        the wrong key by inialising it before use -> fixes a recomputation
145        problem but does not fix the gradient
146    o pkg/layers:
147      - move resetting of flux arrays to outside the iLa loop
148        (this caused layers_diapycnal to not work with more than one layer coord.)
149      - fix bug in calculation of layers_recip_delta in layers_init_fixed.F
150    o pkg/layers:
151      - remove from common block 3D layers fields (used to diagnose transport
152        in tracer coords) and declare them as local arrays in layers_calc.F
153    o pkg/seaice:
154      - Rename SEAICE_VECTORIZE_LSR_ZEBRA to SEAICE_LSR_ZEBRA and define it
155        in lab_sea forward experiment (changes results -> updated)
156      - update adjoint experiment lab_sea after cleaning up seaice_lsr_tridiagu/v
157    o pkg/seaice: modify seaice_lsr.F in order to improve the gradient
158       computations; for SEAICE_VECTORIZE_LSR
159      - move the loops over which the tridiagonal solvers (seaice_lsr_tridiagu/v)
160        sweep to the outside,
161      - remove store directives and add "CADJ loop sequential" directives
162        in analogy to model/src/solve_tridiagonal.F
163      - replace many "#ifdef SEAICE_VECTORIZE_LSR_ZEBRA" by variable loop
164        boundaries to yield more readable code. This has also the charming side
165        effect that your can use SEAICE_VECTORIZE_LSR_ZEBRA without
166        SEAICE_VECTORIZE_LSR (i.e. adjoint without recomputations in
167        seaice_lsr_tridiagu/v now requires either of these flags, vectorization
168        still requires SEAICE_VECTORIZE_LSR with SEAICE_VECTORIZE_LSR_ZEBRA as
169        an additional option)
170       The tridiagonal solvers are now completely analoguous to solve_tridiagonal.F
171       but the adjoint gradients (which are affected by this change) still explode.
172    o coupler (atm & ocn _compon_interf):
173      - avoid using Exch2 IO mapping if not suitable.
174    
175    checkpoint65m (2015/06/15)
176    o pkg/layers:
177      - clean-up old parameters setting (from Sep 2012):
178        + remove old parameters setting from common block (declared locally);
179        + stop if any old parameter is mixed with new parameters;
180        + check for valid or consistent parameter setting (e.g., layers_name)
181      - check that layers_bounds for Pot.Density are in the right range;
182        this is supposed to catch un-updated setting after recently shifting
183        potential density field "prho" by -1000 (now in "sigma" scale).
184  o pkg/layers:  o pkg/layers:
185    - Added missing call to layers_fill for keeping track of tottend in    - Added missing call to layers_fill for keeping track of tottend in
186      pkg/diagnostics/diagnostics_fill_state.F      pkg/diagnostics/diagnostics_fill_state.F
# Line 21  o pkg/layers: Line 198  o pkg/layers:
198      thermodynamics.F, impldiff.F) and gad to save the necessary fields      thermodynamics.F, impldiff.F) and gad to save the necessary fields
199      for layers_thermodynamics calculations      for layers_thermodynamics calculations
200  o pkg/ptracers:  o pkg/ptracers:
201    - add capability of stepping a passive tracer forward    - add capability of stepping a passive tracer forward without advection
202      without advection by setting PTRACERS_advScheme to 0.      by setting PTRACERS_advScheme to 0.
203  o pkg/diagnostics:  o pkg/diagnostics:
204    - add few (threads) _BARRIER around any update of "diag_pkgStatus".    - add few (threads) _BARRIER around any update of "diag_pkgStatus".
205  o pkg/layers:  o pkg/layers:

Legend:
Removed from v.1.2157  
changed lines
  Added in v.1.2191

  ViewVC Help
Powered by ViewVC 1.1.22