4 |
Notes on tags used in MITgcmUV |
Notes on tags used in MITgcmUV |
5 |
============================== |
============================== |
6 |
|
|
7 |
|
o pkg/exf: |
8 |
|
- fix and refine checking of surface-relaxation setting when using EXF |
9 |
|
o verification (adjoint exp): |
10 |
|
- reduce length of simulation by half for experiment global_ocean.cs32x15 |
11 |
|
(std, seaice & seaice_dynmix) and exp tutorial_dic_adjoffline; update output. |
12 |
|
o pkg/mom_common (mom_u/v_bottomdrag), pkg/shelfice (shelfice_u/v_drag) |
13 |
|
- replace if statements KE.ne.0 with KE.gt.0 to avoid sqrt of negative numbers |
14 |
|
of KE that can occur with aggressive optimization |
15 |
|
+ put quadratic bottom drag calculation in separated loops (only done if |
16 |
|
using bottomDragQuadratic) |
17 |
|
o model/src: CG2D_NSA |
18 |
|
- clean-up: stop if cg2dNormaliseRHS=T and AUTODIFF |
19 |
|
and replace GLOBAL_SUM calls with GLOBAL_SUM_TILE. |
20 |
|
- in test-exp that uses CG2D_NSA (bottom_ctrl & tutorial_tracer_adjsens), |
21 |
|
change cg2d residual target to be expressed in Wunits (=> do not normalise |
22 |
|
RHS ; this fix global_max Pb with TAF); update output. |
23 |
|
o verification/tutorial_tracer_adjsens: |
24 |
|
improve parameter consistency (and get rid of warnings): |
25 |
|
- use deltaTFreeSurf=deltaTtracer (better with NonLin FreeSurf); |
26 |
|
- switch Temp Adv Scheme from 81 to 80 (no limiter since theta < 0 is physical) |
27 |
|
- use staggerTimeStep (for stability) in som81; use default rotation period. |
28 |
|
o pkg/exch2: |
29 |
|
- with empty facet: fix compact-format (W2_mapIO=1) definition (was previously |
30 |
|
reset to 0 = 1 long line in X) |
31 |
|
o pkg/mdsio: |
32 |
|
- fix reading of dimensions from meta file for large-size domain |
33 |
|
o model/src: |
34 |
|
- fix saltIsActiveTr setting for IdealGas eosType (eosType is 6 character long); |
35 |
|
- to refine CS-grid check, add logical flag "hasWetCSCorners": true if using |
36 |
|
Cubed-Sphere Exch with CS-corners inside the domain; |
37 |
|
make new S/R INI_GLOBAL_DOMAIN from code in ini_linear_phisurf.F to calculate |
38 |
|
globalArea and to set hasWetCSCorners. |
39 |
|
- add warning if usingCurvilinearGrid and momAdvection in flux-form (missing |
40 |
|
metric terms); stop if hasWetCSCorners=T and momAdvection in flux-form. |
41 |
|
- re-activate the stop if useCDscheme and hasWetCSCorners=T (previously if |
42 |
|
useCDscheme and useCubedSphereExchange). |
43 |
|
o pkg/seaice/seaice_growth.F : |
44 |
|
- compute the SEAICE_DISABLE_HEATCONSFIX term accordingly |
45 |
|
for the (.NOT.useRealFreshWaterFlux).OR.(nonlinFreeSurf.EQ.0) |
46 |
|
when the previous code was not correct. |
47 |
|
- in all cases diagnoze the boundary condition mismatch to SIaaflux |
48 |
|
- in the case of useRealFreshWaterFlux.AND.(nonlinFreeSurf.GT.0) add |
49 |
|
that term to QNET (essentially to set the melt/freeze water to 0degC). |
50 |
|
when SEAICEheatConsFix is true, so that the ocean+ice budget heat is closed. |
51 |
|
o verification/global_ocean.cs32x15/input.seaice : |
52 |
|
- add SEAICEheatConsFix in data.seaice, ensuring closed ocean+ice heat budget. |
53 |
|
- add diagnostics (commented out) for budget test using my matlab codes (gcmfaces). |
54 |
|
- update results (output.seaice.txt) accordingly. |
55 |
|
o verification/lab_sea/input/data.seaice : |
56 |
|
- remove SEAICEheatConsFix, which is now be tested |
57 |
|
in global_ocean.cs32x15. The presently coded fix |
58 |
|
is only consistent with real fresh water + nlfs. |
59 |
|
- update results (output.txt) accordingly. |
60 |
|
o pkg/salt_plume: added diagnotic for salt tendency (oceSPtnd). |
61 |
|
o AD_CONFIG.h file: |
62 |
|
- in genmake2: remove "#undef ALLOW_ECCO_OPTIMIZATION" from AD_CONFIG.h; |
63 |
|
- remove #include "AD_CONFIG.h" from all included OPTIONS files and |
64 |
|
add it explicitly in each fortran src file where it is needed. |
65 |
|
motivation: header file AD_CONFIG.h is generated/modified after "make depend" |
66 |
|
thus introducing potentially wrong dependency; therefore, better to include |
67 |
|
it only where it's really needed, and after any other included OPTIONS file |
68 |
|
(less tempting to bring conditional includes according to ALLOW_ADJOINT_RUN |
69 |
|
or ALLOW_TANGENTLINEAR_RUN). |
70 |
|
|
71 |
|
checkpoint63p (2012/07/06) |
72 |
o pkg/autodiff: |
o pkg/autodiff: |
73 |
- rename S/R INI_AUTODIFF to AUTODIFF_INIT_VARIA ; |
- rename S/R INI_AUTODIFF to AUTODIFF_INIT_VARIA ; |
74 |
- create new header file "AUTODIFF_PARAMS.h" for pkg/autodiff parameters |
- create new header file "AUTODIFF_PARAMS.h" for pkg/autodiff parameters |
85 |
multiDimAdvection=.TRUE., |
multiDimAdvection=.TRUE., |
86 |
tempAdvScheme=81, |
tempAdvScheme=81, |
87 |
saltAdvScheme=81, |
saltAdvScheme=81, |
88 |
|
o model/src: |
89 |
|
- introduce ALLOW_BALANCE_RELAX which allow the removal |
90 |
|
of the global mean of relaxation terms by setting |
91 |
|
balanceThetaClimRelax and balanceSaltClimRelax |
92 |
|
- disable balanceEmPmR and balanceQnet in the case when useSeaice. |
93 |
|
This case is now treated appropriately in seaice_growth.F |
94 |
|
o pkg/seaice: |
95 |
|
- do balanceEmPmR and balanceQnet based on the net fluxes |
96 |
|
(SItflux) that enter the ocean+ice system rather than QNET |
97 |
|
and EMPMR. Works best in real fresh water. |
98 |
|
- SIatmFW, SIatmQnet, and SItflux computations had to be moved |
99 |
|
out of the diagnotics bloc, and stored in global arrays. |
100 |
|
|
101 |
checkpoint63o (2012/06/29) |
checkpoint63o (2012/06/29) |
102 |
o vertical mixing schemes: |
o vertical mixing schemes: |