Parent Directory | Revision Log | Revision Graph
Links to HEAD: | (view) (download) (annotate) |
Links to release1: | (view) (download) (annotate) |
Sticky Tag: |
o Adding package parameters and hooks to MITgcm for new seaice package. o Adjusting KPP package for use with seaice package.
o added Eliassen-Palm flux hook (dynamics) o removed unused TAF keys iikey, idkey (dynamics,thermodynamics)
Included CPP option SINGLE_LAYER_MODE to configure barotropic setup (Martin Losch).
Preparation & fixing to avoid recomputation in reverse mode: o thermodynamics: fixed o impldiff: prepared
These changes constitute a patch to release1. They were made on a development branch called "release1_final" and are on the main trunk between chkpt44d_post and checkpoint44h_post along with other changes. This code is equivalent to chkpt44d_post with the following patches: - AD-related changes for GMRedi - fixes i KPP (delZ -> drF) - hook to OBCS songe layer code in external_forcing - errorMessageUnit non-zero in eeboot.F - modified test cost function and carbon verif.
Changes encapsulated by checkpoint43a-release1mods and chkpt44d_post on the main trunk. These are: o added missing EXCLUDE_MONITOR flags o changed "e" to "_d" in gmredi_slope_limit, gmredi_slope_psi (incompatible typ in MIN/MAX expressions caused problems on IBM SP3) o in genmake added variable MAKEDEPEND plus resetting for case SunOS o added timer_stats.c routine for IBM SP3 o removed variables in dynamics o real fresh water flux implemented with non-linear free-surface. o few fix (mask in shap_s2, EmPmR in external_field_load, USE_NATURAL_BCS in solve_for_P); o add arguments myIter & myTime to S/R obcs_calc & solve_for_P 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 o check parameters & config (chkpt44a_pre,post) o OBC and NonLin_FrSurf. o fix bug in mom_vi_del2uv o select when filters are applied ; add options to zonal_filter (data.zonfilt) o gmredi: fix Pb in the adiabatic form ; add options (.e.g. Bolus advection) o update AIM experiments (NCEP input files) o improve and extend diagnostics (Monitor, TimeAve with NonLin-FrSurf) o added some stuff for AD These were merged with cvs co -r release1 -P MITgcm cd MITgcm cvs update -kk cvs update -j checkpoint43a-release1mods -j chkpt44d_post -d -P -kk
Merging changes on MAIN between checkpoint43 and checkpoint43a-release1mods Command: cvs -q update -jcheckpoint43 -jcheckpoint43a-release1mods -d -P These changes are most of the changes between c43 and c44 except those that occured after "12:45 11 Jan 2002". As far as I can tell it is checkpoint43 with the following mods: o fix bug in mom_vi_del2uv o select when filters are applied ; add options to zonal_filter (data.zonfilt) o gmredi: fix Pb in the adiabatic form ; add options (.e.g. Bolus advection) o update AIM experiments (NCEP input files) o improve and extend diagnostics (Monitor, TimeAve with NonLin-FrSurf) o added some stuff for AD o Jamar wet-points This update does not contain the following mods that are in checkpoint44 o bug fix in pkg/generic_advdiff/ - thread related bug, bi,bj arguments in vertical advection routines o some changes to pkg/autodiff, pkg/cost, pkg/exf, pkg/ecco, verification/carbon and model/src/ related to adjoint o some new Matlab scripts for diagnosing model density - utils/matlab/dens_poly3.m and ini_poly3.m The list of exclusions is accurate based on a "cvs diff". The list of inclusions is based on the record in doc/tag-index which may not be complete.
Removed CPP connection between DISABLE_MULTIDIM_ADVECTION and ALLOW_AUTODIFF_TAMC. o ie. removed #ifdef ALLOW_AUTODIFF_TAMC from GAD_OPTIONS.h o updated comments in thermodynamics.F to reflect this change
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 apostrophies in comments: "Isn't" breaks cpp...
Bringing comments up to data and formatting for document extraction.
Corrected parameter lists for case tr1stepping.
Re-arranged sequence of operations for Adams-Bashforth o this does not change numbers o this makes it very easy to extract forcing/diffusion out of ABII by changing calling sequence in calc_gt, calc_gs,... Key modifications: o new s/r: ADAMS_BASHFORTH2 gT=3/2*gT-1/2*gTnm1 o changed TIMESTEP_TRACER from gTnm1=t+dt*(3/2*gT-1/2*gTnm1) to gT=T+dt*gT o changed CALC_GT,CALC_GS & CALC_GTR1 to calcuate "gT" defined by new timestep_tracer (ie. including forcing, ABII, N-L F-S, etc...) now calls ADAMS_BASHFORTH2 and FREESURF_RESCALE_G o changed CYCLE_TRACER appropriately T=gT only Other associated mods: o new s/r: FREESURF_RESCALE_G applies non-linear free-surface term this used to be in TIMESTEP_TRACER o added myIter as argument to CALC_GS,CALC_GT,CALC_GTR1
Reinstate calls to advection routines after gratuitous commenting removed them in previous update! :^)
Include initialisation of gTracer fields to break dependency for TAF.
Added multi-dimensional form of advection o available only for single step schemes (ie. can't be used with ABII) o stable for max(cfl_u,cfl_v,cfl_w)<=1 (without cfl_u+cfl_v+cfl_w <=1) o selected using multiDimAdvection=.T. (default) o had to hack some existing routines to work on local arrays
Added run-time control of advection schemes. - advection scheme determines method of forward integration. - unfortunately, we have to use integers in "data" since ENUM_CENTERED_2ND doesn't mean anything to fortran - defaults are centered second - output differs due to these mods! This is due to the g77 optimization. I have tested that using -ffloat-store, these mods do not affect the output so am confident about changes. T S U V C D M c m s m s m s m s n p a R g m m e . m m e . m m e . m m e . f n k u 2 i a a d i a a d i a a d i a a d g d e n d n x n . n x n . n x n . n x n . Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 16 16 16 22 16 16 pass adjustment.128x64x1 Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 pass adjustment.cs-32x32x1 Y Y N N -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- N/O aim.5l_Equatorial_Channel Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 pass aim.5l_LatLon Y Y N N -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- N/O aim.5l_zon-ave Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 22 16 pass exp0 Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 22 16 pass exp1 Y Y Y Y 13 16 16 16 16 16 16 16 13 16 13 13 13 13 13 13 16 pass exp2 Y Y Y Y 12 16 16 13 16 16 16 16 16 13 16 16 16 16 13 13 16 FAIL exp4 Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 22 16 16 16 22 16 pass exp5 Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 pass front_relax Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 22 16 16 16 11 16 pass hs94.128x64x5 Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 22 16 pass hs94.1x64x5 Y Y Y Y 14 16 16 16 16 16 16 16 16 16 13 16 16 16 16 16 13 pass hs94.cs-32x32x5 Y Y Y Y 16 16 16 22 16 16 16 16 16 16 16 22 16 16 16 16 16 pass internal_wave Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 pass natl_box Y Y Y Y 16 16 16 16 16 13 16 13 16 16 16 16 16 16 16 16 16 pass solid-body.cs-32x32x1
Modifications related to split into thermodynamics.F, dynamics.F o missing initialisations in dynamics.F added o some fields no longer needed in dynamics/thermodynamics deleted o split of calc_diffusivity.F into calc_viscosity.F (plus split of kpp_calc_diff.F into kpp_calc_visc.F) o Modifications of some store directives for TAF
Split dynamics.F into dynamics.F and thermodynamics.F - idea is to make algorithm more transparent??? - probably less efficient - has exchanges at end of thermodynamics.F (which are needed if using staggered time-stepping with the cube OR using AIM.
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 |