Parent Directory | Revision Log | Revision Graph
Links to HEAD: | (view) (download) (annotate) |
Links to release1_coupled: | (view) (download) (annotate) |
Sticky Tag: |
Bringing comments up to data and formatting for document extraction.
Change name and definition of k_surf (now ksurfC) compute also ksurfW,ksurfS (for NonLin-FreeSurf)
write hFacW and hFacS; add a local common for multi-thread output of "Depth".
Merge from branch pre38: o essential mods for cubed sphere o debugged atmosphere, dynamcis + physics (aim) o new packages (mom_vecinv, mom_fluxform, ...)
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!
Merged changes from branch "branch-atmos-merge" into MAIN (checkpoint34) - substantial modifications to algorithm sequence (dynamics.F) - packaged OBCS, Shapiro filter, Zonal filter, Atmospheric Physics
Modified the "lopping" procedure for determining the fraction cell height. The original formulation first filter the model depth using the hFacMin parameter. Any fractional cells less than hFacMin were rounded to the nearer of 0 or hFacMin. Then the depths were filtered using hFacMinDr where the actual size was tested. This meant that some cells could be rounded twice and also that if hFacMinDr was specified as larger than the nominal thickness that the fractional cell thickness could end up larger than 1. Clearly a bad idea (?) but to cause this one would have to specify the hFacMin and hFacMinDr parameters in a inconsistent way. The new method combines hFacMin and hFacMinDr first and then does a single filtering of model depths. If hFacMinDr is greater than the nominal layer thickness, the later is used and the fractional cell thicknesses are set to 1. Otherwise, layers thicknesses are rounded to using the larger of hFacMin and hFacMinDr/drF(K). Using the new method, setting hFacMin=0 and hFacMin=100 means that lopping only occurs for cell thicker than 100 and the minimum cell thickness of lopped cells will be 100. This, I think, is a much cleaner specification. AJA.
Corrected calculation of depthinK(:,:,:). Instigated by Ralf.
Implemented new I/O package (mdsio.F). This package does parallel I/O in much the same way as dfile.F used to except it uses "direct access" rather than (f77) unformatted sequential access. Problems with dfile.F package included: o unnecessary memory use (each process had two global sized buffers) o inability to read the files it had written without post-processing o "tiled" files were tiled by process/thread rather than actual tiles o created huge numbers of files with no alternatives Features of the mdsio.F package: o direct-access binary writes o no excessive memory use o ability to read/write from multiple record files o "tiled" files are based on "WRAPPER" tiles so that the number and content of files is independent of the number of threads and/or processes o option to create single "global" files rather than "tiled" files o ability to read both "global" and "tiled" files [Caveat: the tiling of files must match the model tiles] o checkpoints now use a single file per model section ie. one file for the hydrostatic model core, one file for the non-hydrostatic extensions and one file for the C-D extensions o the mid-level I/O routines now is broken into more source files read_write_fld.F supplies basic I/O routines with the same interface as the original I/O package read_write_rec.F supplies I/O routines which allow multiple records write_state.F writes the model state checkpoint.F supplies the read/write checkpoint routines All the example input data has had to be modified to be direct-access. Otherwise only routines that used I/O have been affected and not all of those have been due to the continuity of arguments in the read_write_fld.F routines. What needs to be done? We have to create a suite of conversion utilities for users with old-style data. Also supply the option for using old-style I/O, not just for die-hards but for reading data too extensive to be converted. And more...
Modifications for non-hydrostatic ability + updates for open-boundaries.
Removed some silly diagnostics left-over from the early days. (print *,'AAAA',...)
Added IMPLICIT NONE in a lot of subroutines. Also corrected the recip_Rhonil bug: we didn't set it in ini_parms.F
Someone had added code to force full-cell formulation. Tut tut. This code has been removed.
Changes to allow for atmospheric integration builds of the code
Changes for TAMC compatability. Added exp0 a barotropic basin scale box example Modified exp1 and exp2 to correct SIZE.h for Nr and variable overlap width support.
Changes to support - g77 compilation under Linux - LR(1) form of 64-bit is D or E for constants - Modified adjoint of exch with adjoint variables acuumulated.
Changes for new exchange routines which do general tile <-> tile connectivity, variable width overlap regions and provide hooks for shared memory and DMA protocols like Arctic, Memory Channel etc..
Consistent isomorphism changes
Consistent isomorphism changes
Consistent isomorphism changes
Isomorphism consistency changes
Changed Z co-ordinate and lopping code: o Z now increases upwards (ie. for the ocean, z<0) This needed changes only in ini_vertical_grid() where zC and zFace are calculated and in ini_masks_etc() where hFacC is calculated using IF's (eg. IF H(i,j,bi,bj).LT.zFace(K) ...). o The lopping code needed a correction to the hydrostatic pressure calculation. o Two new parameters control the lopping: hFacMin - is the lower limit for water fraction in a cell hFacMinDz - is the lower limit for water thickness in lopped cells Both default to 0 so that pure lopping is the default. To force full cells, using continuous bathymetry, set hFacMin=1
Forgot this changes to ini_mask_etc() and ini_depths() in the previous "rearrangement" of initialise().
Re-arrangment of initialisation: o ini_grid is now called first and it sets up *only* the grid and coordinate system. o ini_depths then reads topography are can set it as a function of xC, yC. o ini_masks_etc then derives everything else (masks, lopping factors and recipricols). This tidy-up is in preparation for the rDot transformation...(tense pause)!
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 |