Parent Directory | Revision Log | Revision Graph
Links to HEAD: | (view) (download) (annotate) |
Links to branch-rdot: | (view) (download) (annotate) |
Sticky Tag: |
Changed the #include at the top from CPP_EEOPTIONS.h to CPP_OPTIONS.h This ought to be done through-out (?) but was necessary in at least the_model_main.F, dynamics.F, ini_parms.F because of the new macro ALLOW_DIAGNOSTICS.
The time-averaging diagnostics has been modified to include averages of "intermediate" quantities that exist only on a tile. We currently only time-average K13, K23 and wVel but these should be usable as a template for other diagnostics. We have now split off these routines into a separate module called diags/. Use of these routines is enabled by the CPP flag ALLOW_DIAGNOSTICS set in model/inc/CPP_OPTIONS.h
Fix for GM/Redi parameterisation: o KapGM is now set to GMkbackground in dynamics() because the TOP_LAYER method wouldn't work in calc_iso_slopes() since it is called from the K >= 2 o This might be a messy fix but it was so simple I couldn't resist it. A better way might have been to call calc_isoslopes() before the K>=2 loop with K=1. Anyway, it works...
Various changes including time-dependant forcing: o logic for controlling external forcing fields now allows for time-dependant forcing: load_external_fields.F o genmake.dec needed a special line for the above file. o theta* and salt* time-stepping algorithm were re-implemented. The 4x4 global configuration has been "double-checked" against CNH's version. However, we do not assume any responsibility for the correctness of this code ... 8-)
Commented out debugging at end
Fairly coplete 4 degree global intercomparison setup. Includes changes to make convective adjustment and hydrostatic pressure correct as well as IO for climatological datasets
Added code to bring "salt" up-to-date with "theta". One caveat is that implicit diffusion of salt is done with the diffusivity of theta. We'll sort this out later. In explicit mode, diffKzS is used.
Fixed problems with _RS -> REAL*4 and with reading in intial hydrography
Initialised maskC edge values to 0 to prevent NaN errors
Various corrections: o do_gterm_blocking..() is fixed to work with new time-stepping o CPP_OPTIONS.h now contains #define ALLOW_CD
Merge of GM Redi and spherical polar and inplicit diffusion and CD. Everything for a global run is now included, however, still some discrepancies with GM Redi.
Various corrections: o implicitDiffusion was missing from PARAMS.h (obviously forgot to commit) o maskUp in calc_common_fact() is now correct o find_rho() now has the proper "referencing" for "LINEAR" eos-mode [also affected a call from dynamics()]
Implemented implicit vertical diffusion (tracers only). Involved introducing a "total" diffusivity array (local 3D) calculated by calc_diffusivity(). Made some small changes to time-stepping algorithm. Switched on by setting implicitZdiffusion. (note: *Not* fully tested with topography. But when switched off this does produce identical results)
Swapped the time-stepping algorithm around (just a little bit). We now officially use the predictor-corrector terminology. We make the prediction step at the end of the dynamics() section and store the result in the gUNm1, gVNm1, gTNm1 arrays. The "tricky" part is that at the beginning of the dynamics section, where the "correction" is made, theses arrays must be initialised at the beginning of any run. A new routine init_predictor() does this. This is "all" in preparation for implicit diffusion. Let's hope it's enough...
Changes to: o read in coefficients for POLY3 EOS. o find_rho() polynomial evaluation has been factorized. o additional density field needed in calc_iso_slopes() with non-linear EOS. This EOS must use the appropriate version of KNUDSEN to generate the coefficients file (POLY3.COEFFS). C7 and C8 were back to front in all previous versions of the model (compare01).
Added flags for turning off momentum equation and/or temperature equation
Added extra IO features - runtime on/off flags - more reporting of configuration
Added changes to support implicit free-surface. - included gBaro a "barotropic" gravity that can be set differently to the g.rhoprime gravity. - discovered and fixed coding error in dynamics loop. Per tile temporaries that needed correct initial values were not being reset for each tile.
GM/Redi parameterization. calc_isoslopes() calculates components of Redi tensor. calc_gt() then uses these components in a modified vertical tracer flux. AJA
Changed the descretization of hydrostatic pressure (now barZ(dz)*barZ(rho) ) to conserve potential energy. This was the original discretization but when I (AJA) made the outer K loop I changed the discretization. Sorry.
Moved the "K loop" from timestep() upto dynamics(). dynamics() now contains all K loops (two infact).
Moved the K loops from convect(), find_rho() and calc_ph() up to this level (dynamics).
Further $Id to $Header conversions
Initial revision
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 |