Parent Directory
|
Revision Log
|
Revision Graph
Links to HEAD: | (view) (download) (annotate) |
Links to checkpoint66n: | (view) (download) (annotate) |
Sticky Tag: |
Add averaging variable
Part two of ECCO-CLIVAR code merges. Completes merge of seaice area relax. code. Requires unified CPP option EXF_ALLOW_SEAICE_RELAX to be set in EXF_OPTIONS.h since this pkg controls its I/O (and avoids second CPP option in SEAICE_OPTIONS.h)
- merging SEAICE_MULTICATEGORY define and undef cases. Now the same code is compiled either way, and is tested in all exps (multidim was only tested in lab_sea ad before). - cosmetic change to prepare for future addition of ITD. no change to results. no defaults change. - by lack of adequate verification experiments, I further used custom versions of global_ocean.cs32x15 to test multicat or not, with pickup or not. All should be correct. - details : - added SEAICE_multDim run time param to be able to switch from single to multi cat. - "ifdef SEAICE_MULTICATEGORY" switches are replaced with "IF (SEAICE_multDim.GT.1) THEN". - "DO IT=1,MULTDIM" is replaced with "DO IT=1,SEAICE_multDim" in seaice_growth.F. For pickups and initializations I kept full loops (did not want to mess with the somewhat funky TICE/TICES pickup logic). - homogeneize seaice_growth names (heffActualP->heffActualMult and latentHeatFluxMaxP->latentHeatFluxMaxMult). - in growth, add extra MULTDIM dimension in all relevant local fields (needed to simplify logic, and get taf to behave). - clean-up growth/solve4temp interface by adding ticeInMult (TSURFin entering solve4etmp) and ticeOutMult (TSURFout leaving solve4temp). update seaice_solve4temp accordingly. - avoid recomputations (added store directives and clear logic of solve4temp input/output).
Prepare adjoint of SITRACER
Add seaice obcs
o model/src, pkg/autodiff, pkg/ecco, pkg/seaice: alleviate the need for additional 3D tapes when using the non-inear free surface in the adjoint. This is done by adding an 'update' of hfacc etc. to their current value at the beginning of forward_step.F.
-avoid recomputation. -add seaice_diffusion.f seaice_map_thsice.f to adjoint. -allow use of multidim advection in ad runs.
Add tices
add missing cvs $Header:$ or $Name:$
Adding code for seaice export (and others in future) sensitivity calculation.
Re-organized adjoint checkpointing according to Matt Mazloff (but with modifs/completions/cleanups) Storing is now bundled into large arrays to optimized I/O (and second step in cleanup of the_main_loop)
o Remove recomputations after latest modifs o EVP TLM and ADM gradient checks completely wrong (1.E34)
o fix multi-category seaice: - change cpp flag SEAICE_MULTILEVEL to more meaningful name: SEAICE_MULTICATEGORY - fix short wave heat flux o replace field areaLoc by scalar variable
seaice adjoint, part 2 (SEAICE_ALLOW_EVP).
o Ported new load_fields_driver structure over to ECCO o adjusted exf and seaice store directives accordingly
o SEAICE_CGRID adjoint, part 2. (all stores seem to be sorted out, but NANs in adjoint).
First stab at SEAICE_CGRID.
Implement 4-level checkpointing. Needed for high-res. runs with large global files to be able to limit tapelev size (otherwise a potential show-stopper).
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.
ViewVC Help | |
Powered by ViewVC 1.1.22 |