Parent Directory | Revision Log | Revision Graph
Links to HEAD: | (view) (download) (annotate) |
Links to checkpoint61s: | (view) (download) (annotate) |
Sticky Tag: |
remove unnecessary BARRIER
Removing gratuitous _BEGIN_MASTER statements so that singleCpuIO make work multi-threaded.
put all NH variables (formely in DYNVARS.h & GW.h) in NH_VARS.h
remove unused variables (reduces number of compiler warning)
o write mnc information at the precision set by writeBinaryPrec
"dumpInitAndLast" replaces "nodumps" (& partly MINIMAL_TAVE_OUTPUT)
o for mnc output, fill the 'T' coordinate var with myTime and create a separate 'iter' variable for iteration count
remove "baseTime" (no used) from arg. list of DIFF_BASE_MULTIPLE and rename it: DIFFERENT_MULTIPLE
use baseTime as time origin ; DIFF_BASE_MULTIPLE replaces DIFFERENT_MULTIPLE
o more CF compliance: convert all MNC 'iter' variables to 'T' so that it becomes the coordinate variable for the 'T' dimension
Reduced output when CPP option MINIMAL_TAVE_OUTPUT is set to speed-up start-up time for large configurations.
o collect all ptracers output in an new routine (PTRACERS_OUTPUT) that is called from DO_THE_MODEL_IO
use flags: fluidIsAir/Water, usingP/ZCoords instead of buoyancyRelation
o I am *sick* of moving these variables around. But Jean-Michel has all but threatened a hissy fit if they aren't removed from PARAMS.h. So now here they are *back* in MNC_PARAMS.h where they were just a few days ago.
o move useMNC and related runtime switches to PARAMS.h
o fixes for passing scalars to mnc_cw_*
o fix mnc name: "T" ==> "Temp"
o remove all tr1-related code (ALLOW_PASSIVE_TRACER) (adjoint stuff still has some tr1 names, but all use ptracer arrays)
o overhaul of IO so that we now have flags for MDSIO and/or MNC - all verification tests compile and run with linux_ia32_g77 - defaults are compatible with current input files--nothing should change if you were not previously using MNC - MNC output has been added in numerous places (eg. timeave) but there are still a few writes not yet do-able with MNC (this is in progress) - flags now allow for either/or/both use of MDSIO and MNC and documentation will soon follow - numerous small formatting cleanups for ProTeX
o fix type
mnc: read totPhiHyd from pickup ; change few variable names (gUnm1, ...)
Deleting redundent comments
o in the MNC_CW_xxx_[R|W]_yyy calls, move the yyy=[R|D|I] part to a string variable within the argument list so that the output types are now run-time selectable o fix a bug in the initialization order -- ini_mnc_io() must be called after grid initialization
o finish implementation of the separate unlimited-dim handling for the MNC_CW_*_R_* and MNC_CW_*_W_* functions
o add "useMNC" flag for run-time selection of MNC
o edit all MNC subroutines so that myThid is the _last_ argument
Need model physical time in netcdf file.
o fix the calling sequence for MNC o add coordinates to the variables within the "state" file o reads still unfinished
o add MNC functionality to: - write all the per-tile grid information - mimic the functionality already in WRITE_STATE()
o fix indexing error in mnc_cw_readwrite.template o add function calls to initialise_fixed.F and write_state.F o add global attributes for w2/exch2
o getting closer to a usable MNC package through the "cw" layer: - numerous bug fixes - global attributes added - improved handling of the unlimited dimension - "cw" can handle variables with up to 7 dimensions - added list of pre-defined grid types
o working (though incomplete) version of the "wrapper": - 149 pre-defined grids: - all "meaningful" X,Y,Z,T combinations - X,Y with or without halos - Horiz: centered, U, V, and corner (vorticity) grids - Vert: centered or interface - just two function calls to write a variable using one of the pre-defined grids o tile numbering scheme for both cube and XY grids o read, write, and append NetCDF files o checks for (acceptable) re-definition of dims, grids, and vars o numerous small bug fixes o warning: the two mnc_model_* files are now broken/obsolete and will soon be removed
o first working (tested) version of MNC that duplicates most of the model/src/write_state.F functionalty o add MNC hooks in write_state.F and the_model_main.F o fix loop nesting error in mnc_reshape.template o add MNC_VAR_APPEND_* routines for UNLIMITED-dim variables
o add hooks for MNC
o minor fixes to MNC error handling o remove unnecessary attribute(s) from grid definitions o write grid information
o first check-in for the "branch-genmake2" merge o verification suite as run on shelley (gcc 3.2.2): Wed Oct 8 23:42:29 EDT 2003 T S U V G D M c m s m s m s m s E p a R g m m e . m m e . m m e . m m e . N n k u 2 i a a d i a a d i a a d i a a d 2 d e n d n x n . n x n . n x n . n x n . OPTFILE=NONE Y Y Y Y 13 16 16 16 0 16 16 16 16 16 16 16 16 13 12 0 0 pass adjustment.128x64x1 Y Y Y Y 16 16 16 16 0 16 16 16 16 16 16 0 0 16 16 0 0 pass adjustment.cs-32x32x1 Y Y Y Y 16 16 16 16 0 16 16 16 16 16 16 22 0 16 16 22 0 pass adjust_nlfs.cs-32x32x1 Y Y Y Y -- 13 13 16 16 13 13 13 13 16 16 16 16 16 16 16 16 N/O advect_cs Y Y Y Y -- 22 16 16 16 16 16 16 13 16 16 16 16 16 16 16 16 N/O advect_xy Y Y Y Y -- 13 16 13 16 16 16 16 16 16 16 22 16 16 16 16 16 N/O advect_xz Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 pass aim.5l_cs Y Y Y Y 14 16 16 16 16 16 16 16 16 13 16 16 16 16 16 13 16 pass aim.5l_Equatorial_Channel Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 13 16 16 13 13 16 pass aim.5l_LatLon Y Y Y Y 13 16 16 16 16 16 16 16 16 16 13 12 13 13 16 13 16 pass exp0 Y Y Y Y 14 16 16 16 16 16 16 16 22 16 16 16 13 16 16 22 16 pass exp1 Y Y Y Y 13 13 16 13 16 16 16 16 16 13 13 16 16 13 13 13 13 pass exp2 Y Y Y Y 16 16 16 16 16 16 16 16 22 16 16 16 16 16 16 16 16 pass 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 14 16 16 13 13 16 16 13 13 16 13 13 16 12 13 13 16 pass global_ocean.90x40x15 Y Y Y Y 10 16 16 13 13 16 13 16 16 13 13 13 13 16 16 13 16 FAIL global_ocean.cs32x15 Y Y Y Y 6 11 12 13 13 12 13 16 13 9 9 9 9 10 9 9 11 FAIL global_ocean_pressure Y Y Y Y 14 16 16 13 16 16 16 13 13 13 13 13 16 12 16 13 16 pass global_with_exf Y Y Y Y 14 16 16 16 16 16 16 16 16 11 13 22 13 16 16 9 16 pass hs94.128x64x5 Y Y Y Y 13 16 16 16 16 16 16 16 16 11 16 16 16 13 16 22 13 pass hs94.1x64x5 Y Y Y Y 14 16 16 16 16 16 16 16 16 13 16 13 13 16 16 22 13 pass hs94.cs-32x32x5 Y Y Y Y 10 10 16 13 13 16 16 16 22 16 13 13 13 13 13 22 13 FAIL ideal_2D_oce Y Y Y Y 8 16 16 16 16 16 16 16 16 13 13 8 16 16 16 16 16 FAIL internal_wave Y Y Y Y 14 16 16 16 16 16 16 16 16 13 13 22 13 13 13 22 16 pass inverted_barometer Y Y Y Y 12 16 16 16 16 16 16 16 16 16 13 12 13 13 13 13 13 FAIL lab_sea Y Y Y Y 11 16 16 16 16 16 16 16 13 13 13 12 13 16 13 12 13 FAIL natl_box Y Y Y Y 16 16 16 16 16 16 16 16 22 16 16 16 16 16 16 16 16 pass plume_on_slope Y Y Y Y 13 16 16 16 16 13 16 16 16 16 16 16 16 13 16 16 16 pass solid-body.cs-32x32x1
- do not (over_)write bottom pressure file with zeros in it, after a restart - comment out hFac? output (NonLinFS) (were not very usefull)
I/O bug fixes
write Hydrostic Phi only if computed or read.
o compute locally the pressure for use in EOS: UNESCO, JMD95P or MDJWF o store total Potential in totPhyHyd for diagnostic & EOS funct. of P o fix restart and overlap Pb when using Z-coord and EOS funct. of P
Merging from release1_p12: o Modifications for using pkg/exf with pkg/seaice - improved description of the various forcing configurations - added basic radiation bulk formulae to pkg/exf - units/sign fix for evap computation in exf_getffields.F - updated verification/global_with_exf/results/output.txt o Added pkg/sbo for computing IERS Special Bureau for the Oceans (SBO) core products, including oceanic mass, center-of-mass, angular, and bottom pressure (see pkg/sbo/README.sbo). o Lower bound for viscosity/diffusivity in pkg/kpp/kpp_routines.F to avoid negative values in shallow regions. - updated verification/natl_box/results/output.txt - updated verification/lab_sea/results/output.txt o MPI gather, scatter: eesupp/src/gather_2d.F and scatter_2d.F o Added useSingleCpuIO option (see PARAMS.h). o Updated useSingleCpuIO option in mdsio_writefield.F to work with multi-field files, e.g., for single-file pickup. o pkg/seaice: - bug fix in growth.F: QNET for no shortwave case - added HeffFile for specifying initial sea-ice thickness - changed SEAICE_EXTERNAL_FLUXES wind stress implementation o Added missing /* */ to CPP comments in pkg/seaice, pkg/exf, kpp_transport_t.F, forward_step.F, and the_main_loop.F o pkg/seaice: - adjoint-friendly modifications - added a SEAICE_WRITE_PICKUP at end of the_model_main.F
o Include a new diagnostic variable phiHydLow for the ocean model - in z-coordinates, it is the bottom pressure anomaly - in p-coordinates, it is the sea surface elevation - in both cases, these variable have global drift, reflecting the mass drift in z-coordinates and the volume drift in p-coordinates - included time averaging for phiHydLow, be aware of the drift! o depth-dependent computation of Bo_surf for pressure coordinates in the ocean (buoyancyRelation='OCEANICP') - requires a new routine (FIND_RHO_SCALAR) to compute density with only Theta, Salinity, and Pressure in the parameter list. This routine is presently contained in find_rho.F. This routine does not give the correct density for 'POLY3', which would be a z-dependent reference density. o cleaned up find_rho - removed obsolete 'eqn' from the parameter list. o added two new verification experiments: gop and goz (4x4 degree global ocean, 15 layers in pressure and height coordinates)
o Added new equation of state -> JMD95Z and JMD95P - EOS of Jackett and McDougall, 1995, JPO - moved all EOS parameters into EOS.h - new routines ini_eos.F, store_pressure.F o Added UNESCO EOS, but not recommended because it requires in-situ temperature (see JMD95) o Modified formatting for knudsen2.f in utils/knudsen2 and added unesco.f to be used with POLY3
Added PTRACERS package This allows an arbitrary number of passive tracers to be integrated forward simultaneously with the dynamicaly model. + Implemented so far: - basic forward algorithm (time-stepping, advection, diffusion, convection) - I/O and checkpointing - GM/Redi *but* using the GM/Redi coefficient of Salt + Not implemented so far: - KPP - OBCS + No specific example supplied (yet) but global_ocean.90x40x15 has the necessary data.ptracer file. Simply use -enable=ptracers and uncomment line in data.pkg. PTRACER01 then reproduces Salt exactly. + This package is disabled by default since it increases storage.
small changes associated with NonLin_FreeSurf option : * initialization (ini_psurf.F); * dump hFac fields (write_state.F); * avoid unnecessary re-computation (forward_step.F initialise_varia.F calc_surf_dr.F);
Bringing comments up to data and formatting for document extraction.
Moved TR1.h headers between ifdef ALLOW_PASSIVE_TRACER.
o Added grdchk package handling o Added passive tracer handling
Moved cg3d_x into DYNVARS.h and renamed it to phi_nh. - cg3d and cg2d now look more similar - output formatted to fit Chris's tastes (I think)
See doc/tag-index and doc/notes_c37_adj.txt Preparation for stand-alone autodifferentiability.
change output file name : Eta. instead of PS. (as model variable name)
separate the state variable "eta" from the 2D solver solution cg2d_x
move the IO at the end of a time step
Moved I/O of wVel outside of N-H CPP regions
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!
Restored to default format of output. Still supply option for alternate method (multiple records per variable/file) but since it's broken (see comments in file) this is not publicized nor supported. :)
Rescaling of forcing fields done immediately after reading fields.
Removed unused variables and fixed some unitialized variables.
Changed some erroneous declarations of myCurrentTime (sometimes myTime) from REAL to _RL. This probably was caught before because most people are using -r8 compile option in conjuction with REAL4_IS_SLOW which converts everything to real*8. Spotted by C.E.
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...
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 |