Parent Directory | Revision Log | Revision Graph
Links to HEAD: | (view) (download) (annotate) |
Links to checkpoint46i_post: | (view) (download) (annotate) |
Sticky Tag: |
Moved call to packages_init_varia before call convective_adjustment_ini. Corresponding adjustment of tape init. for TAF.
o merge of relevant stuff from the ecco-branch: - genmake: removed $S64 overwrite for case SunOS - pkg/exf: update and corrections for field swapping and obcs - pkg/ecco: parameter lists for the_model_main, the_main_loop harmonized between ECCO and MITgcm - pkg/autodiff: added flow directives for obcs, mdsio_gl_slice updated checkpointing_lev... lists for obcs - model/src: minor changes in forward_step, plot_field added directive for divided adjoint in the_main_loop - pkg/mdsio: added mdsio_gl_slice
* Updated adjoint/makefile o removed "_ecco" from names o added/modified forward mode options o added dependent vector option o tried SVD matrix computation (doesn't work; too much memory use by TAF) * Updated flow directives related to FTL * removed global_sum__g.F (not necessary) * initialise forward mode anomalies in ctrl_unpack.F (so far "crude" initialization only). * Added flag ALLOW_TANGENTLINEAR_RUN complememting ALLOW_ADJOINT_RUN * driver routine the_model_main.F needs separate call to FTL routine G_THE_MAIN_LOOP with parameter list identical to THE_MAIN_LOOP (TAF doesn't remove arguments). * added template file tangentlinear_model.F for forward mode.
Transfering major checkpoint store directive blocks to separate header files. Files are included in the_main_loop (lev3, lev2) and forward_step (lev1).
#ifdef ALLOW_COST_TRACER replaced by ALLOW_PASSIVE_TRACER (required)
Preparing adjoint of Held-Suarez: - bugfix for storing in absence of CD code - adding EXACT_CONSERV to AD list - new routine ini_autodiff to add TAMC-specific initialisations - adding Shapiro filter to AD list
Switched sense of CPP macro for controlling multi-dimensional advection: o DISABLE_MULTIDIM_ADVECTION is set in GAD_OPTIONS.h o automatically set if differentiating code (comments around call to gad_advection point out how to re-enable it) o this avoids needing to add the former macro to CPP_OPTIONS.h - reason for this is there's no point in any of the new schemes without it.
Fixed AD-related problems: o Store directives up-to-date with re-arranged Adams-Bashforth (mainly thermodynamics.F) o New store directives for multi-dim. advection schemes * new CPP flag ALLOW_MULTI_DIM_ADVECTION * new common block and key passkey (mainly gad_advection.F) o Modified store directives for split of dynamics/thermodynamics for the case ALLOW_KPP o Cleaned argument list for timestep_tracer.F
Deleted single apostrophy (').
Bringing comments up to data and formatting for document extraction.
o New package pkg/rw/ needed new flow directives for TAMC. o Replacement of calc_mom_rhs by mom_fluxform and mom_vecinv needed update of adjoint/makefile and additional store directives in the_main_loop.F to cover all cases.
Moved TR1.h headers between ifdef ALLOW_PASSIVE_TRACER.
Cleanup of store directives for TAF.
Added a few re-initialisations for TAF.
o Extracted core part of the_main_loop and re-created forward_step N.B.: Time-dependent part of cost function should remain in the_main_loop (or contributions must be stored) o Added some parameter recomputations of nIter0
o Added grdchk package handling o Added passive tracer handling
the default is now to call the filter after solve_for_pressure
Corrected all the timer labels (for the non-adjoint sections).
Added Kinetic energy monitoring.
Adding skeleton "monitor" routines. The default is to do it every time-step. monitorFreq=0 disables.
Modifications/fixes to support TAMC differentiability (mostly missing or wrong directives).
See doc/tag-index and doc/notes_c37_adj.txt Preparation for stand-alone autodifferentiability.
remove "include CG2D.h"
move the IO at the end of a time step
set initial Time & Iteration counter in the_model_main and pass them as argument to the_main_loop
Made sure each .F and .h file had the CVS keywords Header and Name at its start. Most had header but very few currently have Name, so lots of changes!
Restructered the calling tree between THE_MODEL_MAIN() and DYNAMICS(). Two calling levels have been inserted to better split the "fixed" initialization phase from the main time-loop for easier connectivity with the adjoint infrastructure. The calling tree now looks like: the_model_main: initialise_fixed() the_main_loop() the_main_loop: initialise_varia() do i=1,nIters forward_step() enddo forward_step() forward_step: load_external_fields() dynamics() do_the_model_io() solve_for_pressure() do_gterm_blocking_exchanges() write_checkpoint()
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 |