****  November 19, 1993

      (1) The latest version of the model is entered in the SCCS and
          becomes the new benchmark PE code version 5.1.

      November 20, 1993

      (1) hvdout.F
            version 5.2: 0.5 factor missing in the output of W at the
                         tracer points.

      November 23, 1993

      (1) hvdout.F
            version 5.3: correct spelling of C-preprocessing option
                         VSIGMA.

****  December 6, 1993

      (1) Makefile.sun3 Makefile.sun4 Makefile.iris Makefile.cray
          PEmakefile 

          Makefiles were changed to provide more documentation and now
          all the source routines are "codename.F".  The following
          routine do not need C-preprocessing: "bes1d.F", "bes2d.f",
          "lintrp.F", "matrix.F", "my_handler.F", "rk40.F", "spline.F",
          and "splint.F".  However, the C-preprocessing is in place
          for future work.  The 5.1 version of these makefiles was
          re-created.

      (2) anaflds.F
            version 5.2: local index J rename to JJ and correct spelling
                          of DEPTHBT and DEPTHBV arrays.

      (3) hvdout.F:
            version 5.4: common VERTSLABS include for VSIMA option.
            version 5.5: correct unbalanced parentheses and arguments
                         for array DZVQZ.

      (4) hvgrid.F:
            version 5.2: correct for re-normalization of ZDZZ, for
                         KC not equal to 0.

      (5) infld.F:
            version 5.1: local index J renamed to JJ in the computation
                         of PRMS.

      (6) sigmalev.F
            version 5.2: real variable HMF declared in DBLSIGMA option.


      (7) sigmaslab.F
            version 5.2: correct spelling of variable FIRST in
                         DBLSIGMA option.

      (8) xwrite.F
            version 5.2: provide third argument in DEPHT and DEPTHV
                          arrays.

****  December 7, 1993

      (1) anaflds.F
            version 5.3: correct local variable DEPTH in entry ANABNDRY
                         for VSIGMA option.

      (2) clinic.F
             version 5.2: correct HREF variables; computing pressure
                          gradient at the middle of the vertical boxes
                          instead of the bottom of the boxes.

****  December 8, 1993

      (1) hvgrid.F
            version 5.3: correct again re-normalization of ZDZZ. 

****  December 10, 1993

      (1) setvert.F
            version 5.2: correct upper and lower vertical diffusion
                         coefficients for heat and momentum equations.

      December 20, 1993

      (1) setvert.F
            version 5.3: correct upper and lower vertical diffusion
                         coefficients for heat, FFHQ.  It was using
                         FFM instead of FFH.

      December 23, 1993

      (1) setvert.F
            version 5.4: correct call to SIGMASLAB to compute the depths
                         at the velocity points (KEYTV=1) instead of
                         tracer points (KEYTV=0).

****  December 27, 1993

      (1) clinic.F 
            version 5.3: move computation of hydrostatic pressure
                         gradient to routine grad2_p.F

      (2) grad2_p.F
            version 5.1: New routine. Computation of hydrostatic pressure
                         gradient (2nd order). Interpolated option.

      (3) Makefile.sun3 Makefile.sun4 Makefile.iris Makefile.cray
          PEmakefile 
            version 5.2: Add new routine grad2_p.F

      (4) wrthdr.F
            version 5.3: "double sigma" parameters ZC1,ZC2,ZREF,ZSLOPE
                         added to output header.

      (5) inparm.F
            version 5.2: CODEID updated to 5.2 to facilitate the reading,
                         during post-processing, of the new entries in the
                         output header: the "double sigma" parameters.

      (6) pefldid.h
            version 5.2: field identification renamed from IDxxxx to
                         PExxxx to facilitate post-processing. New ID's
                         have been added to the list.

      (7) hvdout.F
            version 5.6: field identification renamed from IDxxxx to
                         PExxxx to facilitate post-processing.

      (8) infld.F
            version 5.3: field identification renamed from IDxxxx to
                         PExxxx to facilitate post-processing.

      (9) oiassi.F
            version 5.2: field identification renamed from IDxxxx to
                         PExxxx to facilitate post-processing.

     (10) xread.F
            version 5.2: field identification renamed from IDxxxx to
                         PExxxx to facilitate post-processing.

     (11) xwrite.F
            version 5.3: field identification renamed from IDxxxx to
                         PExxxx to facilitate post-processing.

****  January 3, 1994

      (1) clinic.F 
            version 5.4: remove rescaling of vertical velocity WU and
                         correct vertical flux divergence.

      (2) tracer.F 
            version 5.2: remove rescaling of vertical velocity W and
                         correct vertical flux divergence.

      (3) hvdout.F
            version 5.7: correct computation of "flat" vertical vertical
                         velocity from "omega" vertical velocity at
                         output (rescaling removed).

      (4) setvert.F
            version 5.5: Add computation of thickness DZV2RQZ used in the
                         computation of vertical flux divergence.

      (5) vertslabs.h
            version 5.2: Add array DZV2RQZ to common block.

      (6) sigmalev.F
            version 5.3: correct computation of depth arrays used in
                         Shapiro filtering from the bottom of the vertical
                         box to the middle of the vertical box.

      (7) relax.F
            version 5.2: correct coefficients for the implicit treatment
                         of Coriolis term.  Depth array HV is now used
                         instead of HR.

      (8) README
            version 5.1: provide documentation about installation,
                         compiling, and running application code.

 **** January 5, 1994

      (1) The latest 5.x version of the model in the SCCS becomes the
          new benchmark PE code version 6.1.

      January 10, 1994

      (1) Remove the SCCS delta -r6.1 for the Makefiles and correct the
          target PROGRAM to define the macro SRC6 instead of OBJ6.  Put
          the macro RMBLKLINES in the area of User tunable parameters.
          Correct Makefiles are reloaded into the SCCS as version 6.1.

      (2) Remove the SCCS delta -r6.1 for file "inparm.F" and remove comas
          at the end of format statements 70 and 910 in order to compile
          in the Cray.  The corrected "inparm.F" routine is reloaded in the
          SCCS as version 6.1.

      (3) Remove The SCCS delta -r6.1 for file "clinic.F" and change
          statement "elseif(km.ne.km) then" to "elseif(kmax.ne.km) then".
          The corrected subroutines is reloaded in the SCCS as version 6.1.

      January 12, 1994

      (1) wrthdr.F
          Remove the SCCS delta -r6.1 for file "wrthdr.F" and then modify
          output of NLEV and LEV to free formatted. The updated subroutine
          is reloaded in the SCCS as version 6.1.

      (2) xread.F
          Remove the SCCS delta -r6.1 for file "xread.F" and then correct
          format statements 10, 20, and 30 to specify the integer field
          descriptors for output variables ID,IFIELD,J,JROW.  The 
          corrected subroutine is reloaded in the SCCS as version 6.1.

****  February 2, 1994  (Major PE model enhancement)

      (1) anaflds.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.
              * Replace call to "sigmaslab" with "depthslab".
              * Provide rational to compute mean density from analytical
                mean temperature and salinity using the Model's equation
                of state.

      (2) bracket_z.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.

      (3) clinic.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.
              * Computation of density at row J+1 is removed; this is now
                done in "grad2_p" or "grad24_p".
              * Add new formulation for the pressure gradient: second and
                fourth order routine "grad24_p" and C-preprocessing option
                NEWGRADP.
              * Rename local variables IS and IE to ISTR and IEND.

      (4) depthlev.F
            version 7.1:
              * New routine to compute the depths at the center of the
                vertical box at the specified horizontal level. It replaces
                routine "sigmalev".

      (5) depthslab.F
            version 7.1:
              * New routine to compute the depths at the center of the
                vertical box at the specified vertical slab. It replaces
                routine "sigmaslab".

      (6) get_z.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.

      (7) getdgdz.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.
              * Replace calls to "sigmalev" with "depthlev".
              * Replace call to "sigmaslab" with "depthslab".
              * Replace call to "statec" with "state".

      (8) grad2_p.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.
              * Add computation of density at row 2 and J+1.
              * Add subtraction of mean density to arrays RHOS and RHON
                using new C-preprocessing option -Drmdenbar.
              * Add transfer of array RHON to array RHOS.

      (9) grad24_p.F
            version 7.1: 
              * Add NEW pressure gradient routine (second and forth order
                computation).

     (10) gradp2.h
            version 7.1:
              * New include file used by "grad24_p" to compute the second
                order gradient of density.

     (11) gradp4.h
            version 7.1:
              * New include file used by "grad24_p" to compute the fourth
                order gradient of density.

     (12) gradph2.h
            version 7.1:
              * New include file used by "grad24_p" to compute the second
                order gradient of density at half levels.

     (13) gradph4.h
            version 7.1:
              * New include file used by "grad24_p" to compute the fourth
                order gradient of density at half levels.

     (14) hvdout.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.
              * Change the call to "state" by passing its new arguments.
              * RHOBAR is added back to the density only when using old
                pressure gradient computation; new C-preprocessing
                option -Drmdenbar is used.
              * Eliminate the use of array DZZ in the computation of the
                "flat" vertical velocity.
              * Change arrays DEPTHT and DEPTHV to TDEPTH and VDEPTH and
                add to them half of vertical box thickness to get the
                depths at the bottom of the vertical box.

     (15) hvgrid.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.
              * Eliminate computation of obsolete array DZZ.
              * Added option for beta-plane approximation.

     (16) inparm.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.

     (17) internal.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.
              * The thickness of the velocity box is now DZVQZ which is
                taken from common block "vertslabs".

     (18) lintslab.F
            version 7.1:
              * New routine used by "grad24_p" to perform linear
                interpolation by vertical slabs.

     (19) load_sig.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.
              * The depths at the center of the tracer vertical box are
                obtained by calling "depthslab".
              * The equation of state called now is "state" so two new
                local slab-arrays are introduced to hold temporally the
                temperature and salinity.

     (20) Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4,
          Makefile.vms
            version 7.1:
              * Add new pressure gradient computations options, routines
                and include files.
              * Remove obsolete routines from source codes targets.
              * Remove the command "sccs clean" from the target clean.
              * Add target "rmblklines".
              * Link and compile "rmblklines" before of making the
                application code.
              * Pass the definition of the macro RMBLKLINES to the
                secondary makefile "PEmakefile".
              * Add target "meld_tracks".
              * Add $(CODE) dependency to target $(BIN)

     (21) matrix.F
            version 7.1:
              * Rename local variables IS and IE to ISTR and IEND.

     (22) meanrho.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.
              * The depths at the center of the tracer vertical box are
                obtained by calling "depthslab".
              * The equation of state called now is "state" so two new
                local slab arrays are introduced to hold temporally the
                temperature and salinity.

     (23) meld_tracks.f
            version 5.1, 6.1, 7.1:
              * Install Lagrangian trajectories post-processing program
                "meld_tracks" which is used to concatenate each drifter
                trajectory.  Recall that Lagrangian trajectory package
                generates a file for each simulated drifter.

     (24) ocean.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.

     (25) odam.F
            version 7.1
              * Add arguments to routine:
                subroutine odam(lu,nwrs,nfrst,a)
              * Rename array BIG as SDISK, remove array C and equivalence
                statement, remove local common block BG and use "save"
                statement instead.
              * Dimension array A as A(NWRS).

     (26) PEmakefile
            version 7.1:
              * Change all the C-preprocessing targets and use the
                program "rmblklines" to remove all the blank lines
                produced during C-preprocessing.
              * Add new rules for new routines: "depthlev", "depthslab",
                "get_thick", "grad24_p", "int_gradrho",  "lintslab",
                "splineslab", and "splintslab".
              * Remove rules for obsolete routines: "den", "sigmalev",
                "sigmaslab", and "statec".

     (27) pemodel.in
            version 7.1:
              * Add documentation for  IOPT(4)=2  which signals to
                beta-plane approximation.

     (28) rmblklines.F
            version 7.1:
              * Old code "rmblklines.f" is renamed to "rmblklines.F".
              * Add C-processing option RMCOMMENTS to remove all
                commented lines in the source before compiling and
                linking.
              * Remove lines that start with a hash (#) character which
                are generated during C-preprocessing when the option
                -P is not activated.

     (29) splineslab.F, splintslab.F
            version 7.1:
              * New routine used by "grad24_p" to perform cubic spline
                interpolation by vertical slabs.

     (30) state.F
            version 7.1: 
              * The routine calling arguments are changed to:
                       state (t,s,depth,rho)
              * The subtraction of mean density RHOBAR inside "state" is
                eliminated.  This subtraction, if needed, is now done
                in the calling routine.
              * The PE model now has only one routine for equation of state;
                the routines "statec" and "den" are eliminated. 
              * Add SMEAN to salinity when using linear equation of
                state.

     (31) step.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.
              * Computation of density at row J=2 is removed; this is now
                done in "grad2_p" or "grad24_p".

     (32) tracer.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.
              * The rolling of density arrays RHOS and RHON is eliminated;
                this is now done in "grad2_p" or "grad24_p".
              * Change "statec" calling statement to "state" in the
                convection adjustment.

     (33) vertslabs.h
            version 7.1:
              * Add rolling indices ISM1, IS, IN, and INP1.
              * Add parameter statement to define the order IORD of the
                horizontal operator (second or fourth order).  It uses
                C-preprocessing options -Dhpg4 and -Dbiharmonic to do so.
              * Substitute arrays DEPTHT and DEPTHV with TDEPTH and VDEPTH.

     (34) xread.F
            version 7.1: 
              * Add the capability to read "formatted binary character" data.
                This new format is based on a routine written by Eduard
                Waugh. The new format is activated when the number of points
                to read NPTS is negative.

     (35) xwrite.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.
              * Get the depths at the center of vertical tracer and
                velocity boxes from common "vertslabs" and compute the
                depths of the W boxes.
              * Introduce NEW C-preprocessing option BINFRMT to write
                output data in "formatted binary characters".  This
                new format is based on a routine written by Eduard Waugh.

     (36) zvol2col.F
            version 7.1: 
              * -Dvsigma option becomes default vertical formulation.
              * Replace call to "sigmaslab" with "depthslab".

**** February 15, 1994  (Coastal Setup)

     (1)  anaflds.F
            version 7.2:
              * Provide the option to enter the thickness HZ or the depths
                REFZ.  If REFZ are provided, it computes the HZ from REFZ.
              * Introduce new entry ANACOAST to read in the coastal segments
                and the land/sea mask at the tracer points.  This entry is
                available when C-preprocessing option COAST is activated.

     (2)  bdryindx.F
            version 7.2:
              * New routine used to the set the boundary indicator auxiliary
                arrays FKMP, FKMQ, FKMZ, ISZ, and IEZ.  If the COAST option
                is activated, it also computes the land/sea mask at the
                velocity points.
              * The computation of these auxiliary has been removed from
                the main routine "ocean".

     (3)  clinic.F
            version 7.2:
              * Change depth array HD to HDV in the computation of the
                external mode.
              * Introduce coastal setup option for islands.

     (4)  filter2.F
            version 7.2:
              * Introduce coastal setup option.

     (5)  fullwd.h
            version 7.2:
              * Add coast and islands options and auxiliary arrays to the
                common block.

     (6)  hvgrid.F
            version 7.2:
              * Add computation of depths arrays HD, HR, HD, HDV.  These
                was done previously in main routine "ocean".

     (7)  hvdout.F
            version 7.2:
              * Correct the field identification for internal mode 
                geostrophic velocities.

     (8)  infld.F
            version 7.2:
              * Add reading of coastal segments and land/sea mask at the
                tracer points when the option COAST is activated.

     (9)  inparm.F
            version 7.2:
              * Change C-preprocessing option from COASTAL to COAST.
              * Add print information for option RMDENBAR.
              * Change logical statement when option COAST is activated:
                  IFLAG(10)=0  no coastal setup
                  IFLAG(10)=1  coast only
                  IFLAG(10)=2  coast and islands

     (10) iounits.h
            version 7.2:
              * Add input unit CSTINP which is used to read coastal
                segments and mask fields for the option ANALYTICAL.

     (11) landsea.F
            version 7.2:
              * New routine used to read in the coastal segments and the
                land/sea mask at the tracer points.

     (12) Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4,
          Makefile.vms
            version 7.2:
              * Include new routines and options associated with the
                coastal setup.

     (13) ocean.F
            version 7.2:
              * Move computation of boundary auxiliary arrays to new
                routine "bdryindx".
              * Move computation of depth arrays to routine "hvgrid".

     (14) param_tmp.h
            version 7.2:
              * Add documentation for input dimension parameters.
              * Rename parameter NISLE to MISLE.  This allows to check
                if the number of island read in coastal segement section
                is appropriate with the dimension given in the application.
              * Add parameters used when the option COAST is activated.

     (15) PEmakefile
            version 7.2:
              * Include new routines associated with the coastal setup and
                their dependencies.

     (16) pemodel.in
            version 7.2:
              * Correct spelling in the documentation.

     (17) relax.F
            version 7.2:
              * Add the code that is necessary when the options COAST and 
                ISLANDS is activated.

     (18) step.F
            version 7.2:
              * Change depth array HD to HDV in the computation of the
                external mode.

     (19) wrthdr.F
            version 7.2:
              * Rename output variable in the header from NISLE to MISLE.
              * Write HD instead of HR (the reciprocal of topography).

     (20) xwrite.F
            version 7.2:
              * Scale internal mode geostrophic velocity components from
                acceleration to velocities.


**** February 25, 1994  (data management via NetCDF)

     (1)  ocean.F
            version 7.3
              * Add call to new routine "defcdf" which opens and defines
                the PE model output netCDF file.

     (2)  bdryindx.F
            version 7.3
              * Write out land/sea masks at the tracer and velocity point
                into the NetCDF file.

     (3)  cdfout.F
            version 7.1
              * New routine. It writes out the requested fields at the
                current slab into the NetCDF file.  This routine has
                the same rol as "hvdout".

     (4)  defcdf.F
            version 7.1
              * New routine. It creates the output NetCDF file, defines
                dimensions, variables, and attributes.

     (5)  netcdf.inc
            version 7.1
              * New include file which contains the NetCDF parameters.
                This include file is part of the NetCDF software.

     (6)  pe_netcdf.h
            version 7.1
              * New common block which stores fields ID's in the
                NetCDF file.

     (7)  step.F
            version 7.1
              * Add "call cdfout(j)" which writes current slab fields
                into the NetCDF file.

     (8)  wrtcdf.F
            version 7.1
              * New routine. It writes generic fields into the NetCDF
                file.  This routine has the same rol as "xwrite".


**** March 2, 1994

     (1)  fullwd.h
            version 7.3:
              * Declare NISLE.


**** March 7, 1994 

     (1)  anaflds.F
            version 7.3:
              * Add comment that indicates that diagnostic initialization
                is activated.  This switch option is stored in IFLAG(1).

     (2)  fullwd.h
            version 7.4:
              * Add parameter NTDGN used during diagnostic initialization
                to the common block.

     (3)  meld_tracks.f
            version 7.2:
              * Add capability to process more than 99 drifters.  Input
                file was changed from "trackNN.dat" to "trackNNN.dat",
                where NNN is the drifter ascending number.

     (4)  pemodel.in
            version 7.3:
              * Add diagnostic initialization parameter NTDGN which 
                indicates the number of timesteps for diagnostic 
                computation (no stepping of tracers).

     (5)  tracer.F
            version 7.2:
              * Add C-preprocessing option -Ddiagini for diagnostic
                initialization of the PE model.  The initial internal
                velocity components are set to zero and the transport
                is set to a constant in PE_INITIAL.  The time stepping
                of the tracers is skipped for NTDGN timestep (the
                diagnostic period) and maintain constant until the
                velocity field is built-up.

     (6)  tracksout.F
            version 7.2:
              * Add capability to process more than 99 drifters.  Output
                file was changed from "trackNN.dat" to "trackNNN.dat",
                where NNN is the drifter ascending number.

**** March 10, 1994 

     (1)  clinic.F
            version 7.3:
              * Add Laplacian diffusion.  Replace "voldat.h"  with
                "gradp.h"

     (2)  grad24_p.h
            version 7.3:
              * Set natural spline interpolation.

     (3)  gradp.h
            version 7.1:
              * New common block used to store DPDX and DPDY.

     (4)  hvdout.F
            version 7.3:
              * Replace "voldat.h"  with "gradp.h".

     (5)  lap_depth.F
            version 7.1:
              * New routine to compute Laplacian diffusion.  It has two
                entries: LAPV_DEPTH and LAPT_DEPTH. It computes the
                Laplacian at the depth of each point via linear or
                cubic spline interpolation.

     (6)  lap_filt.F
            version 7.1:
              * New routine that can be used to filter (Laplacian filter)
                2-D barotropic fields, like vorticity.

     (7)  lap_lev.F
            version 7.1:
              * New routine to compute Laplacian diffusion along levels
                (no interpolation).

     (8)  load_sig.F
            version 7.2:
              * Remove the need of volume data and use OGET instead.

     (9)  Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4,
          Makefile.vms
            version 7.3:
              * Include new routines and options associated with NetCDF.
              * Add C-preprocessing option -Ddiagini
              * Add C-preprocessing option -Dshapiro and new routines
                associated with laplacian diffusion.

    (10)  ocean.F
            version 7.4:
              * Move the deactivation of the assimilation cycle ITTOI
                to routine STEP.

    (11)  PEmakefile
            version 7.3:
              * Include new dependecies and remove individual
                compiling rules.  Redefine default compiling macros.

    (12)  setvert.F
            version 7.2:
              * Add C-preprocessing option -Dshapiro.

    (13)  step.F
            version 7.4:
              * Add deactivation flag for assimilation cycle. Do a
                mixing step after an assimilation cycle.
              * Add C-preprocessing option -Dshapiro for Shapiro
                filtering.  Routine "filter2" is renamed to "shap_lev".
                Routine "shapiro" is eliminated.

    (14)  tracer.F
            version 7.3:
              * Add Laplacian diffusion.

    (15)  update.F
            version 7.2:
              * Remove the need of volume data and use OGET instead.

    (16)  vertslabs.h
            version 7.2:
              * Add C-preprocessing option -Dshapiro.

    (17)  voldat.h
            version 7.2:
              * Remove arrays DPDX and DPDY. Rename common block "xdata"
                to "voldat".


**** March 16, 1994 

     (1)  relax.F
            version 7.5:
              * Fix implicit treatment of Coriolis term.


**** March 21, 1994 

     (1)  shap_lev.F
            version 7.2:
              * JSTR and JEND indices were not defiened; they were
                zero.

**** March 22, 1994 

     (1)  All relevant codes are moved incrementaly to VERSION 7.6.


**** March 31, 1994

     (1)  step.F
            version 7.7:
              * Correct line printed at the end of assimilation cycle.

     (2)  wrthdr.F
            version 7.7:
              * Print out NISLE instead of MISLE when the -Dcoast is
                not activated. "-Dcoast" changed to "-Dislands".

     (3)  lap_depth.F
            version 7.7:
              * The laplacian is formulated in term of fluxes.

     (4)  All relevant codes are upgrated to VERSION 7.7.


**** April 1, 1994 : Radiation boundary conditions.


     (1)  lap_depth.F
            version 7.7:
              * Correct argument in call to routine SIG_SEARCH.

     (2)  All relevant codes are upgrated to VERSION 7.8.


**** May 16, 1994 :  Energy diagnostics, routines adapted from MOM,
                     restructuring of CLINIC and TRACER, and
                     radiation boundary conditions.

     (1)  anaflds.F
            version 7.9:
              * Initialize parameters in relevant common blocks via
                a BLOCK DATA statement (See blkdat.F).
              * Read in bottom topography from BTHINP logical unit
                (BTHINP=41).  Scale and, if appropriate, clip using the
                HMIN and HMAX values provided in the local parameter
                statement.

     (2)  assiwght.F
            version 7.9:
              * The computation of the melding weights is now done
                row-by-row instead of point-by-point.
              * Allow capability for other tracers. Previously, only
                temperature and salinity were available for 
                assimilation.

     (3)  blkdat.F
            version 7.9:
              * New routine used to initialize some parameters, via
                a BLOCK DATA statement, in some commom blocks when the
                ANALYTICAL option is activated.

     (4)  bndata.h
            version 7.9:
              * Generalize boundary condition array for NT tracers.
              * Add parameter to standarize boundary index WEST,
                SOUTH, EAST, and NORTH.

     (5)  boundary.F
            version 7.9:
              * Re-designed to accomdate several boundary conditions
                options.  This routine serves as a manager; the actual
                open boundary conditions are computed in ROBC.

     (6)  ccfl.h
            version 7.9:
              * New common block to store the variables associated with
                the CFL condition (adapted from MOM).

     (7)  cdfout.F
            version 7.9:
              * Rename external compentents arrays SFU to UBAR,
                SFV to VBAR, SFUB to UBARB, and SFVB to VBARB.
              * Put local constants in local parameter statement.

     (8)  cdiag.h
            version 7.9:
              * New common block to store energy and other diagnostics
                (adapted from MOM).

     (9)  cfl.F
            version 7.9:
              * New routine to monitor the CFL (Courant-Friedrichs-Lewy)
                condition necessary for stability (adapted from MOM).


     (10) clinic.F
            version 7.9:
              * Include energy diagnostics and implicit treatment of
                vertical diffusion.  The entire routine is re-structured
                using MOM version as a guideline.
              * Renumber do statements.

     (11) cnvmix.F
            version 7.9:
              * New routine to set-up the coefficients for constant
                vertical diffusion of momentum (VVC) and tracers (VDC).

     (12) ctsrc.h
            version 7.9:
              * New common block to store the source terms for
                tracers.

     (13) cvbc.h
            version 7.9:
              * New common block to store vertical boundary condition
                variables (adapted from MOM).

     (14) cppmix.h
            version 7.9:
              * New common block to store variables used in the 
                Pacanowski and Philander vertical mixing scheme
                (adapted from MOM).

     (15) cvmix.h
            version 7.9:
              * New common block to store variables used vertical diffusion
                (adapted from MOM).

     (16) diag.F
            version 7.9:
              * New routine to manage, compute, and write out diagnostics
                (adapted from MOM).

     (17) defcdf.F
            version 7.9:
              * Add switch NTSOUT to NetCDF header.
     
     (18) fullwd.h
            version 7.9:
              * Move arrays associated with energy diagnostics to common
                block in include file "cdiag.h".  The moved arrays are:
                ENGINT, ENGEXT, TTDTOT, BUOY, EKTOT, DTABS, and TVAR.
              * Add logical switch variables DIAGTS, EOTS, MIXTS, MXPAS2,
                PRNTSI, and WRTTS.

     (19) getdgdz.F
            version 7.9:
              * Rename switch IOPT(7) to IOPT(6) due the re-design of
                routine boundary.

     (20) grad24_p.F
            version 7.9:
              * Replace call to entry OGET to new entry OPICK.

     (21) hvdout.F
            version 7.9:
              * Rename external compontents arrays SFU to UBAR,
                SFV to VBAR, SFUB to UBARB, and SFVB to VBARB.
              * Put local constants in local parameter statement.

     (22) hvgrid.F
            version 7.9:
              * Remove initialization of mixing coefficients arrays
                EEH, FFH, EEM, and FFM.

     (23) infld.F
            version 7.9:
              * Remove the declaration of unnecessary variables when
                the C-preprocessing option ANALYTICAL is used.

     (24) inparm.F
            version 7.9:
              * Add read in of switch NTSOUT,AIDIF,VDCLIM,VVCLIM,CDBOT.
              * Restructure and reorder input cards. Renumber format
                statements.

     (25) invtri.F
            version 7.9:
              * New routine used in the implicit treatment of vertical
                viscosity/diffusion (adapted from MOM).

     (26) ioi.h
            version 7.9:
              * Generalize arrays in the common blocks for NT tracers.

     (27) iounits.h
            version 7.9:
              * Add new logical units for bathymetry (BTHINP) and 
                energy (ENGOUT).

     (28) lap_depth.F
            version 7.9:
              * Pass the Laplacian components Fxx and Fyy instead of
                Fxxyy to facilitate diagnostics due to zonal and
                meridional diffusion.

     (29) Makefile.cray Makefile.iris Makefile.sun3 Makefile.sun4
          Makefile.vms PEmakefile
            version 7.9
              * Add new routines and C-preprocessing options.

     (30) ocean.F
            version 7.9:
              * Initialize new IO units BTHINP and ENGOUT.
              * Remove specification of wind stress arrays WSX and WSY;
                the are now specified in routine SETVBC.
              * Generalize the permutation of NT tracers arrays during
                an assimilation cycle.
              * Remove the initialization of obsolite arrays UUNDER,
                VUNDER, and TDIF.
              * Add flushing of output buffers.

     (31) odam.F
            version 7.9:
              * Add new entry OPICK for a selected array transfer from 
                disk-to-memory.

     (32) oiassi.F
            version 7.9:
              * Generalize reading of input assimilation switches and
                and variables for NT tracers.  Now temperature and
                salinity fields have independent switches, weights,
                and errors.
              * Compute melding weights row-by-row instead of point-by-point
                to facilitate vectorization.
              * Generalize assimilation to NT tracers, if appropriate.

     (33) oibndry.F
            version 7.9:
              * Allow capability for other tracers. Previously, only
                temperature and salinity were available for boundary
                update after an assimilation cycle.

     (34) oiopts.h
            version 7.9:
              * Generalize switch IOITS for NT tracers.

     (35) okeep.F
            version 7.9:
              * Generalize writing to virtual disk of NT tracers.

     (36) onedim.h
            version 7.9:
              * Rename external compentents arrays SFU to UBAR,
                SFV to VBAR, SFUB to UBARB, and SFVB to VBARB.

     (37) options.h
            version 7.9:
              * Augment dimension of arrays IOUT (fields to output)
                to 20 and LEV to 100.

     (38) osav.F
            version 7.9:
              * Generalize storing for NT tracers.

     (39) pefldid.F
            version 7.9:
              * Add ID's for additional tracer fields.

     (40) pemodel.in
            version 7.9:
              * Add switch NTSOUT to specify the number of timesteps
                between output of data.
              * Switch NNERGY is now the number of timesteps between
                energy diagnostics, as in the original GFDL code.
              * Add new parameters associatiated with vertical
                viscosity/diffusion.
              * Re-structure parameter options array IOPT.

     (41) ppmix.F
            version 7.9:
              * New routine used to compute the vertical vicosity/diffusion
                coefficients based on the Pacanowski and Philander
                scheme (adapted from MOM).

     (42) relax.F
            version 7.9:
              * Remove call to BOUNDARY to set the forcing vorticity
                at the boundary.  This is now done in step slab-by-slab.

     (43) robc.F
            version 7.9:
              * New routine with several ENTRYs which computes several
                types of radiation open boundary conditions.

     (44) scalar.h
            version 7.9:
              * Remove vertical diffusion (FKPH) and viscosity (FKPM)
                coefficients.  They now reside in "cvmix.h"

     (45) setvbc.F
            version 7.9:
              * New routine used to compute the vertical boundary
                conditions (surface and bottom fluxes) for momentum and
                tracers.

     (46) setvert.F
            version 7.9:
              * Rename upper and lower vertical diffusion grid factor
                arrays EEHQ to DZTURQ, FFHQ to DZTLRQ, EEMQ to DZURQ,
                and FFMQ to DZVLRQ.  The vertical diffusion coefficient
                is not longer included in these array in order to
                facilitate the implicit treatment and other schemes
                later on.

     (47) shap_lev.F
            version 7.9:
              * Rename switch IOPT(3) to IOPT(5) due to the re-design
                of routine boundary.

     (48) step.F
            version 7.9:
              * Rename external compentents arrays SFU to UBAR,
                SFV to VBAR, SFUB to UBARB, and SFVB to VBARB.
              * Put local constants in local parameter statement.
              * Add calls to new routines SETVBC (to set vertical
                boundary condtions), CNVMIX (to set constant vertical
                mixing coefficients), and DIAG (to initialize and
                compute diagnostics).
              * Remove call to output routine GFDLOUT (original
                GFDL output routine).
              * Add logical switches as in MOM to manage mixing
                timesteps, diagnostic timesteps, and printing
                timesteps.
              * Remove initialization of unused arrays DZ2RQ and C2DZQ.
              * Add initialization of horizontal diffusion arrays Uxx,
                Uyy, Vxx, Vyy, Txx, and Tyy.
              * Renumber do statements.
              * Add C-preprocessing option to use the Pacanowski and
                Philander vertical mixing scheme.

     (49) tracer.F
            version 7.9:
              * Include energy diagnostics and implicit treatment of
                vertical diffusion.  The entire routine is re-structured
                using MOM version as a guideline.
              * Renumber do statements.

     (50) tsource.F
            version 7.9:
              * New routine used to compute the tracers source term.

     (51) voldat.h
            version 7.9:
              * Volume array XS is eliminated and XT is generalized for
                NT tracers.

     (52) workspa.h
            version 7.9:
              * Rename upper and lower vertical diffusion grid factor
                arrays EEHQ to DZTURQ, FFHQ to DZTLRQ, EEMQ to DZURQ,
                and FFMQ to DZVLRQ.
              * Replace the arrays (UOVER, UDIF, UUNDER, VOVER, VDIF,
                and VUNDER) used for the vertical differences of U and V
                with VMF(IMT,0:KMP1,2).
              * Remove vertical average of zonal and meridional forcing
                arrays ZUNENG, ZUSENG, ZVNENG, and ZVSENG.  They are now
                located in diagnostics commom block "engdiag.h".
              * Remove unused arrays DZ2RQ, DZZQ, DZZ2RQ, C2DZQ, CQ, TOQ,
                SOQ, CIQ, TOIQ, and SOIQ.
              * Rename array TDIF(IMT,KMP2,NTMIN2) to VTF(IMT,0:KMP1,NTMIN2)
                as in MOM.
              * Add new arrays UUx, UVx, VUy, VVy, WUz, WVz, fU, fV, Uxx,
                Uyy, Uzz, Vxx, Vyy, Vzz, UTx, VTy, WTz, Txx, Tyy, and Tzz.

     (53) wrthdr.h
            version 7.9:
              * Write out switch NTSOUT in output header.
              * Add include file "cvmix.h".

     (54) boundary.h
            version 7.9:
              * Add logic for additional tracers.

     (55)  All other relevant codes are upgrated to VERSION 7.9.


**** May 26, 1994 : Debugging

     (1)  boundary.F
            version 7.10:
              * Add specification of boundary conditions on ZTD for
                the "provided values" type of OBC. Correct the
                boundary conditions on transport P for the
                "provided values" type of OBC.

     (2)  cdfout.F
            version 7.10:
              * remove computaion of vertical "flat" velocity at the
                tracer and velocity points. These is now done in
                CLINIC and TRACER.

     (3)  clinic.F
            version 7.10:
              * Correct computation of UBAR and VBAR and mask
                properly.

     (4)  hvdout.F
            version 7.10:
              * Remove unnecessary include statements.
              * Correct switch to write barotropic vorticity.

     (5)  inparm.F
            version 7.10:
              * Add documentation of PE model options.
              * Refine documentation of other input parameters.

     (6)  ocean.F
            version 7.10:
              * Modify the equivalence statement for FINS, FKMP, and
                FKMQ.  Now the arrays CFN, CFS, and CFE are used
                instead of P.

     (7)  PEmakefile
            version 7.10:
              * Revise the dependencies for BOUNDARY, CDFOUT, and HVDOUT.

     (8)  pemodel.in
            version 7.10:
              * Refine documentation of input parameters.

     (9)  setvbc.in
            version 7.10:
              * Correct the documentation for the units of the wind
                stress and add code to use the parameter TWIND.

     (10) shap_lev.F
            version 7.10:
              * Remove checking of switch IOPT(5). This is now done
                in INPARM.
              * Correct counter IP; IP=(J-1)*IMT.  IMT is now use
                instead of M.

     (11) state.F
            version 7.10:
              * Correct documentation of density anomaly.  The density
                in the model is nondimensional; its is normalized
                by RHO0.

     (12) step.F
            version 7.10:
              * Correct computation of UBAR and VBAR and mask
                properly.

     (13) xwrite.F
            version 7.10:
              * Add switch for the type of grid when writting
                barotropic vorticity and add switch PEVBAR  to the
                interpolation logic.

     (14)  All other relevant codes are upgrated to VERSION 7.10.


**** June 8, 1994 : Debugging continue

     (1)  defcdf.h
            version 7.11
              * Correct spellings and modify documentation.

     (2)  fields.h
            version 7.11
              * Add array ZTDB to store the rate of change of
                barotropic vorticity.  It is only used for output
                purposes.

     (3)  hvgrid.h
            version 7.11
              * Correct computaion of HV at the eastern and northern
                boundary.
              * Put constants in local parameter statement and 
                use them.
              * Add P output format.

     (4)  hvdout.F
            version 7.11
              * Output ZTDB instead of ZTD.

     (5)  inparm.F
            version 7.11
              * Move declaration of TEXT outside of SUNDATE preprocessing
                option.  Correct spellings.
    
     (6)  Makefile.cray, Makefile.iris, Makefile.sun3 Makefile.sun4
            version 7.11
              * Correct brace and backslash

     (7)  ocean.F
            version 7.11
              * Add initialization of array ZTDB.
              * Put constants in local parameter statement and 
                use them.
              * Add extra parenthesis in the IF statements to facilitate
                reading.

     (8)  relax.F
            version 7.11
              * Save field ZTDB for output purposes.
              * Put constants in local parameter statement and 
                use them.

     (9)  robc.F
            version 7.11
              * Correct entries ZROBC_MOI and ZROBC_ORI to update
                boundary array PO instead of P.

     (10) shap_lev.F
            version 7.11
              * Correction made in version 7.10 was wrong.  Counter IP
                is needs to use M instead IMT: IP+(J-1)*M.

     (11) xwrite.F
            version 7.11
              * Fill non-computational points for visualization
                purposes.

     (12)  All other relevant codes are upgrated to VERSION 7.11.


**** June 8, 1994 : Debugging Shapiro filter.


     (1)  filter.h
            version 7.12
              * Change size of arrays XU and XV from NWDS2 to NWDS.

     (2)  getdgdz.F
            version 7.12
              * Cahnge do loop range from NWDS2 to NWDS.

     (3)  inparm.F
            version 7.12
              * Report documentation for new optios of IOPT(5).

     (4)  okeep.F
            version 7.12
              * Write into virtual memory the entire slab of velocity
                arrays XU and XV. Write out IMT points instead of IMT-1.

     (5)  osav.F
            version 7.12
              * Save the entire slab of velocity into array XU and XV.
                Save IMT points instead of IMT-1.

     (6)  pemodel.in
            version 7.12
              * Add documentation for new option in Shapiro filter
                boundary conditions: IOPT(5)=3 and IOPT(5)=4.

     (7)  shap_lev.F
            version 7.12
              * Reverse M to IMT in counter IP; IP+(J-1)*M.
              * Add two options in parameter IOPT(5):
                IOPT(5)=3
                IOPT(5)=4

     (8)  xwrite.F
            version 7.12
              * Change parameter SMALL to 1.0e-20.

     (9)  All other relevant codes are upgrated to VERSION 7.12.


**** June 9, 1994 : Add capability to check array bounds at runtime.
                    Debugging continue.

     (1)  bdryindx.F
            version 7.13
              * Correct ranges of arrays JSZ and JEZ.

     (2)  boundary.F
            version 7.13
              * Update PO arrays instead of P when using closed
                boundary conditions.  Remove updating of P when
                setting boundaries to the provided values.

     (3)  clinic.F
            version 7.13
              * Change the definition of local variable KZ to KM
                instead of using array KMU. 

     (4)  fullwd.h
            version 7.13
              * Rellocate NISLE variable in the common block.
              * Correct dimensions of arrays JSZ and JEZ

     (5)  Makefile.cray
            version 7.13
              * Correct for the appropriate path in macros SHELL and
                CPP.

     (6)  ocean.F
            version 7.13
              * Unroll do loops for starting indices arrays FINS, ISZ,
              * IEZ, IEIS, ISIS, JSIS.
              * Re-number do loops.

     (7)  param_tmp.h
            version 7.13
              * Remove obsolete parameters NWDS1 and NWDS2.

     (8)  step.F
            version 7.13
              * Unroll NSLAB do loops.

     (9)  tracer.F
            version 7.13
              * Change the definition of local variable KZ to KM
                instead of using array KMT. 
              * Remove the setting of DENSE water during convection.
 
     (10) voldat.h
            version 7.13
              * Change dimensions of volume arrays XT, XU and XV.
                They are dimensioned NWDS.

     (11) All other relevant codes are upgrated to VERSION 7.13.


**** June 20, 1994

     (1)  bndata.h
            version 7.14
              * Add boundary arrays for vorticity used for the reduced
                physics option.

     (2)  boundary.F
            version 7.14
              * Replace index J with I when using boundary arrays
                UO and VO in setting southern and northen boundary
                conditions.
              * Separate swiches for transport and vorticity.  There
                new entries in ROBC to set the boundary conditions
                on transport and vorticity separatelly.

     (3)  clinic.F
            version 7.14
              * Incompatible argument type in intrinsic function MIN
                when computing UBAR and VBAR.
              * Add rolling of new vorticity boundary arrays ZUNZ, ZVNZ,
                ZUSZ, and ZVSZ.
              * Correct rolling of array ZVSENG.

     (4)  cnvmix.F
            version 7.14
              * Correct range of arrays VDC and VVC; use index K instead
                of J.

     (5)  Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4
            version 7.14
              * Correct macro FC and the passing of macro FFLAGS to
                secondary makefile PEmakefile (CRAY makefile).
              * Add an example of the data files used in assimilation
                (oi.dat) and Lagrangian drifters (lagrange.dat) to
                the EXTRA macro.
              * Eliminate obsolete routine "internal.F"

     (6)  hvgrid.F
            version 7.14
              * Rename switch IOPT(4) to IOPT(7).

     (7)  inparm.F
            version 7.14
              * Write out documentation for new boundary switch IOPT(4).
              * Pass previous rol of switch IOPT(4) to switch IOPT(7)
                and correct logical statements.                

     (8)  Lagrange.dat  (NEW)
            version 7.14
              * Add this file to SCCS (including previous deltas)
                as an example of how to set OI parameters.

     (9)  oi.dat        (NEW)
            version 7.14
              * Add this file to SCCS (including previous deltas)
                as an example of how to set Lagrangian drifters
                parameters.

     (10) PEmakefile
            version 7.14
              * Add file "vertslabs.h" to "robc.f" dependencies.
              * Add file "bndata.h" to "clinic.f" dependencies.
              * Eliminate dependencies for obsolete routine "internal.F"

     (11) pemodel.in
            version 7.14
              * The boundary condition switch IOPT(3) is now used for
                tranport streamfunction only whereas IOPT(4) is now
                used for vorticity only.
              * The boundary condition switches have a new option for
                reduced physics type of boundary conditions.
              * Previously IOPT(4) was used to select the type of
                treatment for the Corilis term; this is now done with
                switch IOPT(7).

     (12) robc.F
            version 7.14
              * Restructure routine, add/rename entries, and renumber
                DO loops.
              * Corrent for starting and ending indices in the setting
                of southern and northern boundary conditions. The values
                at the end points are averaged in time.
              * Correct computation of internal velocities: mean 
                substraction.
              * Add entries PROBC_ORI, PROBC_MOI, ZROBC_EXT, ZROBC_RPH.

     (13) shap_lev.F
            version 7.14
              * Correct the definitions of JROWE and ICOLE. Their
                values where switched (N and M).

     (14) step.F
            version 7.14
              * Provide a more detailed documentation about boundary
                conditions and saving data to virtual memory.
              * Call SETVERT(jmtm2) before northern boundary conditions.

     (15) Routine "internal.F" is eliminated.

     (16) All other relevant codes are upgrated to VERSION 7.14.


**** July 6, 1994  (PNH biological model and etc.)

     (1)  anaflds.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (2)  bdryindx.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (3)  biopnh.in
            version 7.15
              * NEW standard input script for PNH biological input
                parameters.

     (4)  bndata.h
            version 7.15
              * Move constants for uniform wind stress TWIND, WINDX,
                and WINDY to common block CVBC. 

     (5)  boundary.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (6)  cbiopnh.h
            version 7.15
              * NEW common block associated with the PNH biological
                model.

     (7)  cfl.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (8)  cnvmix.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (9)  cvbc.h
            version 7.15
              * Add constants for uniform wind stress distribution:
                TWIND, WINDX, and WINDY.
              * Add constants for uniform surface fluxes: SHFX (surface
                heat flux), SWFX (surface water flux; E-P), and
                SWRAD (shortwave radiation).
              * Incease second dimension of array STF to three (3) to
                store the shortwave radiation distribution.

     (10) drifters.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (11) exitus.F
            version 7.15
              * NEW routine which is used to close IO datasets when
                abnormal computations.

     (12) infld.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (13) inparm.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.
              * Add statements for processing PNH biological model
                input parameters.
              * Renumber executable statements.

     (14) iounits.h
            version 7.15
              * Add BIOINP as the logical unit to read biological
                model input parameters.

     (15) landsea.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (16) Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4,
          Makefile.vms
            version 7.15
              * Add new c-preprocessing option BIOPNH and its associated
                routines: "biosource.F" and "cbiopnh.h".

     (17) my_handler.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (18) ocean.F
            version 7.15
              * The computation of contants PI and OMEGA are revised
                to allow precision.
              * Assign input file unit BIOINP used when biology
                modules are activated.
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (19) odam.F
            version 7.15
              * Correct array index in entry OPICK: change index NS with
                MS in array A.

     (20) oiassi.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (21) PEmakefile
            version 7.15
              * Add dependecies for new routine EXITUS.
              * Add dependecies for new routine BIOSOURCE and other
                routines affected by the option BIOPNH.
              * Add dependecy "workspa.h" to module TSOURCE.

     (22) pemodel.in
            version 7.15
              * The units in TWIND are now in days instead of 
                seconds.
              * Add constants for uniform surface fluxes to input
                card 9: SHFX (surface heat flux), SWFX (surface water
                flux; E-P), and SWRAD (shortwave radiation).

     (23) robc.F
            version 7.15
              * Correct indices in entries VROBC_SR and ZROBC_EXT.

     (24) setvbc.F
            version 7.15
              * Assign uniform surface fluxes on tracer to working
                array STF.  Notice that array STF increased its 
                second dimension to three (3) to store shortwave
                radiation.
              * Change the logical statement in the uniform wind
                distribution to DAY units.

     (25) spline.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (26) splint.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (27) step.F
            version 7.15
              * Add code associated with the option BIOPNH which
                activates PNH biological model.

     (28) tsource.F
            version 7.15
              * Change the passing of array Tsrc in routine call.  This
                array is now passed via common block WORKSPA.

     (29) tracer.F
            version 7.15
              * Change the passing of array Tsrc in routine call
                TSOURCE to allow the use of common block WORKSPA in
                that routine.
              * Add code associated with the option BIOPNH which
                activates PNH biological model.

     (30) xread.F
            version 7.15
              * Replace STOP statement by a call to new routine EXITUS
                which properly closes IO datasets when abnormal
                computations.

     (31) All other relevant codes are upgrated to VERSION 7.15.


**** July 13, 1994 

     (1)  anaflds.F
            version 7.16
              * Add entry ANADIAG which allows the User to compute,
                monitor, and report any diagnostics during the
                computations at the User desired time frequency.
                This entry is call by STEP for each row every timestep.

     (2)  biopnh.in
            version 7.16
              * Add sinking rates WSNKPHY, WSNKSOO, WSNKNO3, and
                WSNKNH4.
              * Change units for ATTH20 and ATTPHY to centimeters
                instead of meters.

     (3)  biosource.F
            version 7.16
              * Add sink term for each biological tracer.

     (4)  cbiopnh.h
            version 7.16
              * Add sinking rates WSNKPHY, WSNKSOO, WSNKNO3, and
                WSNKNH4 to common block.

     (5)  cdiag.h
            version 7.16
              * Increase dimension of balance array TERMBT by one
                to allow diagnostics of the source/sink term.

     (6)  diag.f
            version 7.16
              * Compute and report diagnostics for the source/sink
                term.

     (7)  inparm.h
            version 7.16
              * Read in and report sinking rates WSNKPHY, WSNKSOO,
                WSNKNO3, and WSNKNH4.

     (8)  step.F
            version 7.16
              * Add call to ANADIAG to compute, monitor, and report
                any User desired diagnostic for each row every timestep.
                This can be done when the c-preprocessing option
                ANALYTICAL is activated.

     (9)  tracer.F
            version 7.16
              * Compute balance TERMBT(k,8,m) due the source/sink
                term Tsrc.

     (10) All other relevant codes are upgrated to VERSION 7.16.


**** August 17, 1994  (Model input via NetCDF)

     (1)  assiwght.F
            version 7.17
              * Change internal classification of variable IFIELD to
                allow the expansion of tracer type variables to
                assimilate:
                     IFIELD =  1   transport streamfunction.
                               2   internal mode, u-velocity component.
                               3   internal mode, v-velocity component.
                               4   temperature.
                               5   salinity.
                               ... other tracers.
              * Change accessing of volume data to slab error data.

     (2)  bdryindx.F
            version 7.17
              * Rename variable LANDU to LANDV.
              * First, read sea/mask at the U,V points LANDV from
                initialization NetCDF file and write LANDV to PE
                output NetCDF file.
                Second, over-write LANDV with FKMQ as used in RELAX
                (this is now done at the end of the routine).
              * Change call to NetCDF writing routine.  Use NCVPT instead
                of NCVPTG.  Generalized hyperslab routine NCVPTG is not
                necessary.  Local arrays STRIDE and IMAP are eliminated.
              * Document and re-number statements.            

     (3)  boundary.F
            version 7.17
              * Correct logical statement which sets reduced physics
                boundary conditions on vorticity.

     (4)  cdfout.F
            version 7.17
              * Rename time dimension index from TINDX to TOUTINDX.
              * Terminate execution if an error occurs while writing.

     (5)  defcdf.F
            version 7.17
              * Change call to NetCDF writing routine.  Use NCVPT instead
                of NCVPTG.  Generalized hyperslab routine NCVPTG is not
                necessary.  Local arrays STRIDE and IMAP are eliminated.
              * Modify global atributes for output file.
              * Rename variable LANDU to LANDV.
              * Rename output time ID form TIMEID to TOUTID.
              * Terminate execution if an error occurs while writing.

     (6)  fullwd.h
            version 7.17
              * Rename variable LANDU to LANDV for consistency in
                NetCDF files.

     (7)  infld.F
            version 7.17
              * This routine is extensively modified to read new input
                file format.  Initialization and boundary conditions
                data are read from initialization NetCDF file.

     (8)  inparm.F
            version 7.17
              * Add new C-preprocessing option DECDATE to use DEC's
                intrinsic time managing routines.
              * Correct reporting of Shapiro filter application switch.  Use
                IOPT(6) instead IOPT(4).

     (9)  ioi.h
            version 7.17
              * Add documentation for common block variables.
              * Volume data is eliminated.  Only slab data is keep in
                the common block.  Volume data now is accessed via
                NetCDF.  The following variables were changed from
                volume to slab data: TOBS, TOBSERR, TFCTERR, UOBS,
                UOBSERR, UFCTERR, VOBS, VOBSERR, VFCTERR, POBS, POBSERR,
                and PFCTERR.

     (10) iounits.h
            version 7.17
              * Remove obsolete variable HEXINP from common block.

     (11)  landsea.F
            version 7.17
              * This routine is extensively modified to read new input
                file format.  Land/sea mask data is read from
                initialization NetCDF file "pe_ini.cdf".
              * Add reading of starting and ending indices for the
                island boxes.

     (12)  lap_filt.F
            version 7.17
              * Rename variable LANDU to LANDV.

     (13) Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4,
          Makefile.vms
            version 7.17
              * Correct passing of macro FFLAGS to secundary makefile
                PEmakefile; use single quotes instead of double.
              * Eliminate obsolete routine XREAD.
              * Order the entries in macro GFDLSRC in logical order.
              * Insure that executable is always compiled with the
                NetCDF library.
              * Add new C-preprocessing option DECDATE to use DEC's
                intrinsic time managing routines.

     (14) ocean.F
            version 7.17
              * Remove initialization of obsolete variable HEXINP.
              * Remove writing of PE header in assimilation output file
                (unit IOIOUT).

     (15) oi.dat
            version 7.17
              * Add and change documentation about the order of reading
                variables IAP, IAUV, IATS, ERRP, ERRUV, and ERRTS.  This
                is done to facilitate the expasion of tracer type
                variables to assimilate.

     (16) oiassi.F
            version 7.17
              * This routine is extensively modified to read new input
                file format.  Assimilation (observation and errors) fields
                are read from initialization NetCDF file "pe_ass.cdf".
              * Statements involving volume data are changed to slab type
                data.  Volume storage is removed.  The data that is needed
                is accessed from the NetCDF file at the required time and
                slab.
              * Change internal classification of variable IFIELD to
                allow the expansion of tracer type variables to
                assimilate above in "assiwght.F".
              * Change the order of reading variables IAP, IAUV, IATS, ERRP,
                ERRUV, and ERRTS from assimialation input script file to
                allow the expasion of tracer type variables to assimilate.
                
     (17) oibndry.F
            version 7.17
              * Change boundary edges numbers by their respective variables:
                EAST, SOUTH, WEST, and NORTH.

     (18) oiopts.h
            version 7.17
              * Add documentation for common block variables.

     (19) PEmakefile.h
            version 7.17
              * Modify dependencies for targets: infld.f, landsea.f,
                oiassi.f, wrtcdf.f
              * Eliminate target for "xread.f". This routine is 
                eliminated.

     (20) pe_netcdf.h
            version 7.17
              * Re-structure common block and documentation.
              * Add ID's for initialization and assimilation
                NetCDF input files.

     (21) relax.F
            version 7.17
              * Rename variable LANDU to LANDV.

     (22) robc.F
            version 7.17
              * Correct range for loops 1400 and 1410 in entry ZROBC_SR.
 
     (23) shap_lev.F
            version 7.17
              * declared local variable L when C-preprocessing option
                "coast" is activated.

     (24) step.F
            version 7.17
              * Undeclared local variable IP when C-preprocessing options
                "biopnh" and "shapiro" are activated.

     (25) wrtcdf.F
            version 7.17
              * Change call to NetCDF writing routine.  Use NCVPT instead
                of NCVPTG.  Generalized hyperslab routine NCVPTG is not
                necessary.  Local arrays STRIDE and IMAP are eliminated.
              * Terminate execution if an error occurs while writing.

     (26) xread.F
            version 7.16
              * Routine is eliminated. Input is now via NetCDF.

     (27) All other relevant codes are upgrated to VERSION 7.17.


**** September 22, 1994  (Lagrangian trajectories and NetCDF output
                          revisited)

     (1)  anaflds.F
            version 7.18
              * Assure that bottom topography HR is positive.  Standard
                topography datasets have positive elevation and negative
                bathymetry values.

     (2)  assiwght.F
            version 7.18
              * Correct update of assimilation expected mean square error.
                The array ERRFLD is expanded to NT-tracers.

     (3)  bdryindx.F
            version 7.18
              * Remove C-preprocessing option "netcdf"; it becomes a
                default option.
              * Modify output format to STDOUT unit.

     (4)  bes1d.F
            version 7.18
              * Put local constants in a parameter statement.

     (5)  bes2d.F
            version 7.17
              * Routine is eliminated.

     (6)  bracket_z.F
            version 7.18
              * This routine is modified so it is consistent with the
                generalized terrain-following coordinates.  Routine
                ZVOL2COL is eliminated.

     (7)  cdfout.F
            version 7.18
              * Augment and modify the number of routine arguments when
                calling routine WRTCDF.
              * Re-organize IF statments for clarity.  Now each field
                has independent IF statements.

     (8)  cdiag.h
            version 7.18
              * Re-organize documentation of the common block variables.
              * Correct dimension of variable TTN.
              * Add local dimension parameters TTERMS and MTERMS for
                the number of tracer and momentum balaces.
     
     (9)  defnrg.F
            version 7.18
              * New routine which defines output energy/diagnostics
                data into output energy/diagnostics NetCDF.

     (10) defout.F
            version 7.18
              * Routine "defcdf.F" is renamed to "defout.F"
              * Modify dimension order of output NetCDF fields.  NetCDF
                fields are modified to conform a right-hand system
                (...,level,lon,lat,...) to facilitate the visualization
                via IBM data explorer.
              * Input tracer type NetCDF fields are now split in one
                variable per each tracer.
              * Add additional attributes for IBM data explorer.

     (11) derivs0.F
            version 7.18
              * Routine is restructured due to the elimination of
                volume data which modifies the interpolation strategy.
                Calls to routine BES2D are eliminated and replaced by
                BES1D.

     (12) diag.F
            version 7.18
              * Routine is re-structured to output energy/diagnostics
                in NetCDF format.
              * Correct DO loop range for variable TTN.

     (13) drifters.F
            version 7.18
              * Rename variable NTRACERS to NFLOATS.
              * Modify descriptor array TRACK.
              * Setup new array TSTART.
              * Renumber and put format statements at the end of
                routine.

     (14) exitus.F
            version 7.18
              * Add the closing of output NetCDF trajectories and
                energy/diagnostics files.
              * Remove C-preprocessing option "netcdf"; it becomes a
                default option.


     (15) fsigma.F
            version 7.18
              * Modify descriptor array TRACK.
              * Routine is restructured due to the elimination of
                volume data which modifies the interpolation strategy.
                Call to routine BES2D is eliminated and replaced by
                BES1D.

     (16) get_z.F
            version 7.17
              * Routine is eliminated.

     (17)  gfdlout.F
            version 7.18
              * Routine is eliminated.

     (18)  hvdout.F
            version 7.18
              * Routine is eliminated.

     (19) infld.F
            version 7.18
              * Modify dimension order of input NetCDF fields.  NetCDF
                fields were modified to conform a right-hand system
                (...,level,lon,lat,...) to facilitate the visualization
                via IBM data explorer.
              * Input tracer type NetCDF fields are now split in one
                variable per each tracer.
              * Renumber DO loops.

     (20) inparm.F
            version 7.18
              * Move character titles to routine DEFCDF.
              * Remove C-preprocessing option "netcdf"; it becomes a
                default option. Remove documentation of other output
                types.

     (21) ioi.h
            version 7.18
              * Modify dimensions of array ERRFLD to facilitate the
                expansion of tracer type variables.

     (22) landsea.F
            version 7.18
              * Modify output format to STDOUT unit.
 
     (23) lnblk.F
            version 7.18
              * NEW routine use to compute the length of character
                strings. Blank spaces at the end of the string are
                ignored.

     (24) load_sig.F
            version 7.18
              * Eliminate computation of density anomaly. Their values
                are now pass from routine STEP. 

     (25) Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4,
          Makefile.vms
            version 7.18
              * Remove obsolete routines: BES2D, GET_Z, GFDLOUT, HVDOUT,
                UPDATE, WRTHDR, XWRTE, ZVOL2COL.
              * Add new routines: LNBLK, SIG2Z.
              * Remove C-preprocessing option "netcdf"; it becomes a
                default option.

     (26) matrix.F
            version 7.18
              * Routine is eliminated.

     (27) meld_tracks.F
            version 7.18
              * Modify completely post-processing code for trajectories.
                The input file is now a NetCDF file.

     (28) my_handler.F
            version 7.18
              * Terminate execution if invalid argument.

     (29) PEmakefile
            version 7.18
              * Remove dependencies for obsolete routines GET_Z, GFDLOUT,
                HVDOUT, UPDATE, WRTHDR, XWRTE, ZVOL2COL.
              * add/remove dependecies for other routines.

     (30) pefldid.h
            version 7.18
              * Remove obsolete common block. Not longer needed due to
                NetCDF format.

     (31) pemodel.in
            version 7.19
              * Remove switch to write out buoyancy. The buoynacy is
                always written by default into the energy/diagnostics
                NetCDF file.

     (32) pe_netcdf.h
            version 7.18
              * Re-structure completely the common block.

     (33) ocean.F
            version 7.18
              * Eliminate call to routine WRTHDR. This routine is 
                eliminated. C-preprocessing option "netcdf" is eliminated;
                it becomes a default option in the model.

     (34) oiassi.F
            version 7.18
              * Modify dimension order of input NetCDF fields.  NetCDF
                fields were modified to conform a right-hand system
                (...,level,lon,lat,...) to facilitate the visualization
                via IBM data explorer.
              * Input tracer type NetCDF fields are now split in one
                variable per each tracer.
              * Renumber DO loops.

     (35) rk40.F
            version 7.18
              * Expand dimension of Y and YOUT arrays from 3 to 8.
                Store velocity components in array YOUT.

     (36) runid.h
            version 7.18
              * Add new variable VERSION to the common block.

     (37) sig2z.F
            version 7.18
              * NEW routine which is used to determine at what depth the
                target density occurs at the given horizontal position.

     (38) sig_search.F
            version 7.18
              * This routine is modified so it is consistent with the
                generalized terrain-following coordinates. Routine
                GET_Z is eliminated.

     (39) sigma2z.F
            version 7.18
              * This routine is modified so it is consistent with the
                generalized terrain-following coordinates.

     (40) step.F
            version 7.18
              * Add calls to routine LOAD_SIG to store the density
                anomaly into volume array SIG_VOL.

     (41) trackbound.F
            version 7.18
              * Put local constants in a parameter statement.
              * Augment dimension of array TRACK.

     (42) tracer.F
            version 7.18
              * Correct factor FXB in the integration of buoyancy work.

     (43) trackinit.F
            version 7.18
              * Remove initialization of volume data. Routine UPDATE
                is eliminated.

     (44) tracks.h
            version 7.18
              * Document variables in common block.
              * Rename variables NTRACERS to NFLOATS and NTRACERMAX
                to MAXFLOATS.
              * Remove timestep dimension NTRACKMAX.  Drifters trajectories
                are written into the output trajectories NetCDF file at
                each timestep.
              * Add array TSTART which stores the release time (modified
                Julian day and model clock) for each drifter.
              * Augment dimension of descriptor array TRACK from 5 to 8.
                Reorder the values in TRACK:

                     TRACK(1,n)  x-position
                     TRACK(2,n)  y-position
                     TRACK(3,n)  z-position
                     TRACK(4,n)  time
                     TRACK(5,n)  u-component velocity
                     TRACK(6,n)  v-component velocity
                     TRACK(7,n)  w-component velocity
                     TRACK(8,n)  density

     (45) trackrefresh.F
            version 7.18
              * Load density for slab JMT.

     (46) tracksout.F
            version 7.18
              * This routine is completely re-structured.  The output
                is now via NetCDF.  The trajectories are now written
                at each timestep.

     (47) trackup.F
            version 7.18
              * Starting time of drifter is now pass via TSTART.

     (48) trkfld.h
            version 7.18
              * Remove volume data arrays for velocity from common
                block.  The only volume data array in the drifter's
                package is that for density: SIG_VOL.

     (49) update.F
            version 7.18
              * Routine is eliminated.

     (50) wrtcdf.F
            version 7.18
              * Augment and modify the number of routine arguments.
              * Modify dimension order of output NetCDF fields.  NetCDF
                fields are modified to conform a right-hand system
                (...,level,lon,lat,...) to facilitate the visualization
                via IBM data explorer.
              * Input tracer type NetCDF fields are now split in one
                variable per each tracer.

     (51) wrthdr.F
            version 7.18
              * Routine is eliminated.

     (52) xwrite.F
            version 7.18
              * Routine is eliminated.

     (53) zvol2col.F
            version 7.17
              * Routine is eliminated.

     (54) All other relevant codes are upgrated to VERSION 7.18.


**** November 1, 1994  (Variable forcing and sub-domain extraction)


     (1)  cdfout.F
            version 7.19
              * Correct NetCDF ID for integrated velocity shear.

     (2)  cfl.F
            version 7.19
              * Remove CFL checking in vertical velocity.  Recall that
                vertical velocity is a diagnostic (not prognostic)
                variable.

     (3)  cinpvbc.h
            version 7.19
              * New common block which is used to store point or
                gridded fluxes time series.

     (4)  cvbc.h
            version 7.19
              * Clean common block of obsolete forcing variables. It
                only contains the arrays used in CLINIC and TRACER.

     (5)  defout.F
            version 7.19
              * Correct computation of the longitude/latitude of every
                tracer and velocity points.  This data is now stored in
                area arrays which can be accessed from common block
                MODDAT.  Modify the writing of this data into NetCDF
                output files.  Renumber statements.

     (6)  drifter.F
            version 7.19
              * Eliminate the IUNIT from the subroutine arguments.
                The unit which reads the initial positions of the
                floats is now TRKINP and is set-up locally as
                TRKINP=34.

     (7)  exitus.F
            version 7.19
              * Remove the flushing of obsolete unit HEXOUT.

     (8)  extraction.dat
            version 7.19
              * New script file which is used to pass extraction
                parameters to the PE model.

     (9)  fullwd.h
            version 7.19
              * Add new variable DSTART to the common block.

     (10) infld.F
            version 7.19
              * Correct the checking of JMAX and KMAX.  The logical statement
                was with IMAX.
              * Create new variable DSTART which has the initialization
                time (usually in Julian Day).

     (11) inparm.F
            version 7.19
              * Add common block CVBC to the include statements.
              * Remove obsolete entries in input card 9 (uniform forcing
                parameters).  Input card 9 only reads a dummy real
                variable. This card will be used in the future.
              * Remove reporting of uniform forcing parameters.

     (12) iounits.h
            version 7.19
              * Remove obsolete variables from common block: HEXOUT,
                TRKOUT
              * Add new variable XTRINP.

     (13) Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4,
          Makefile.vms
            version 7.19
              * Add new C-preprocessing options: "extraction" and
                "forcing"
              * Add new routines READVBC, XTRSUBDOM, XTRACT, XTR_PSI,
                XTR_TRC, XTR_VEL

     (14) moddat.h
            version 7.19
              * Add new positional arrays to common block: TLAT, TLON,
                VLAT, VLON.

     (15) ocean.F
            version 7.19
              * Remove initialization of input unit TRKOUT.  These is
                now done locally in rotine DRIFTERS.
              * Add initialization of input unit XTRINP which provides
                sub-domain extraction parameters.
              * Add new C-preprocessing switch "extraction" and call to
                new routine XTRSUBDOM.
              * Remove flushing of obsolete unit HEXOUT.

     (16) PEmakefile
            version 7.19
              * Update dependencies for routines INPARM and SETVBC.
              * Add dependencies for new routines READVBC, XTRSUBDOM,
                XTRACT, XTR_PSI, XTR_TRC, XTR_VEL.

     (17) pemodel.in
            version 7.19
              * Eliminate uniform forcing parameters from input card 9.
                The card now has one DUMMY variable.  This card is
                reserved for future use.

     (18) pe_netcdf.h
            version 7.19
              * Add new varaibles associated with the forcing NetCDF file.

     (19) readvbc.F
            version 7.19
              * New routine used to read in uniform/nonuniform vertical
                boundary conditions from forcing NetCDF file.

     (20) setvbc.F
            version 7.19
              * This routine is re-structured to set-up the time
                varying forcing via interpolation of the data read
                from forcing NetCDF file.
              * Surface heat, water, and momentum fluxes are activated.
                Also shortwave radiation.

     (21) tracer.F
            version 7.19
              * Remove parenthesis in the tracer term associated with
                implicit vertical diffusion.

     (22) xtr_param.h
            version 7.19
              * New parameter statement associated with the sub-domain
                extraction modules.

     (23) xtr_psi.F
            version 7.19
              * New routine used to extract and interpolate initial and
                boundary conditions transport and vorticity fields
                at the requested sub-domain(s).

     (24) xtr_trc.F
            version 7.19
              * New routine used to extract and interpolate initial and
                boundary conditions tracer fields at the requested
                sub-domain(s).

     (25) xtr_vel.F
            version 7.19
              * New routine used to extract and interpolate initial and
                boundary conditions velocity fields at the requested
                sub-domain(s).

     (26) xtract.F
            version 7.19
              * New routine used to read/write extracted sub-domain
                data from/into NetCDF file.

     (27) xtrsubdom.F
            version 7.19
              * New routine which is the driver of the sub-domain
                extraction module.

     (28) All other relevant codes are upgrated to VERSION 7.19


**** November 13, 1994  (Extrapolation in Pressure Gradient)


     (1)  bupdate.F
            version 7.20
              * New routine used to replace the boundary data in common
                block BNDATA with the new values after Shapiro filtering.
                The call to this routine are commented out.
              * The status of this routine to be decided later.

     (2)  compile.com
            version 7.20
              * New VMS script used by Makefile.vms to compile the
                the model on the VAX with VMS system.

     (3)  defout.F
            version 7.20
              * Correct documentation: positions at velocity points
                instead of tracer points.

     (4)  extraction.dat
            version 7.20
              * Modify order of parameters in input script: parameters,
                filename for sub-domain 1, ... etc.

     (5)  grad24_p.F
            version 7.20
              * Modify routine to allow the new extrapolation algorithm
                for pressure gradient.
              * Add call to new routine EXTRAP.
              * Replace call to OPICK with call to OGET.

     (6)  gradp2.h
            version 7.20
              * Modify extrapolation flag in the arguments of SPLINTSLAB
                to arrays.
              * Add statements for new C-preprocessing option "noxtrp".
              * Add call to new routine EXTRAP.

     (7)  gradph2.h
            version 7.20
              * Modify extrapolation flag in the arguments of SPLINTSLAB
                to arrays.
              * Add statements for new C-preprocessing option "noxtrp".
              * Add call to new routine EXTRAP.
 
     (8)  gradp4.h
            version 7.20
              * Modify extrapolation flag in the arguments of SPLINTSLAB
                to arrays.
              * Add call to new routine EXTRAP.

     (9)  gradph4.h
            version 7.20
              * Modify extrapolation flag in the arguments of SPLINTSLAB
                to arrays.
              * Add call to new routine EXTRAP.

     (10) inparm.F
            version 7.20
              * Add reporting of new C-preprocessing option "noxtrp"
                for no extrapolation in pressure gradient.

     (11) lintslab.F
            version 7.20
              * Rename extrapolation variable DEP to XTP for
                consistency.

     (12) Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4,
          Makefile.vms
            version 7.20
              * Add new C-preprocessing option: "noxtrp".
              * Add new routines BUPDATE and EXTRAP.
              * Add "extraction.dat" and "compile.com" to EXTRA macro.
              * Makefile for the VAX/VMS was completely modified.
                New version was provided from Malcom Zahorodny (SACLANT).
                It uses new VMS script "compile.com".

     (13) oiassi.F
            version 7.20
              * Correct format statement 915.

     (14) oiassi.F
            version 7.20
              * Add dependencies for new routine BUPDATE.

     (15) ppmix.F
            version 7.20
              * Remove # from documentation to avoid problems during
                C-preprocessing.  If not, it will fail in VMS environment.

     (16) shap_lev.F
            version 7.20
              * Add variable KEY to argument list to indicate velocity
                or tracer fields.  Use KEY to determine starting and
                ending points in the coastal set-up.

     (17) splineslab.F
            version 7.20
              * Modify boundary condition on splines.  Add evaluation
                of the first derivative by interpolation from cubic
                polynomial.

     (18) splintslab.F
            version 7.20
              * Rename extrapolation variable DEP to XTP for
                consistency.

     (19) step.F
            version 7.20
              * Add argument at the calling of routine SHAP_LEV, the
                new argument is either KEYV or KEYT to indicate
                filtering on velocity or tracer points.
              * Add call to new routine BUPDATE which replaces the
                boundary data in common block BNDATA with the new
                values after Shapiro filtering.  The call to this
                routine are commented out.

     (20) xtr_psi.F
            version 7.20
              * Save variables CM2DEG and RTERM in save statement.
              * Rename variable XGRID to XDIS for clarity.

     (21) xtr_trc.F
            version 7.20
              * Save variables CM2DEG and RTERM in save statement.
              * Rename variable XGRID to XDIS for clarity.
              * Convert depth to centimeters.
              * Add mean to salinity.

     (22) xtr_vel.F
            version 7.20
              * Save variables CM2DEG and RTERM in save statement.
              * Rename variable XGRID to XDIS for clarity.
              * Convert depth to centimeters.

     (23) xtract.F
            version 7.20
              * Correct arguments in call to routine XTR_TRC.

     (24) All other relevant codes are upgrated to VERSION 7.20


**** December 21, 1994  (Implicit vertical mixing corrections)

     (1)  bdryindx.F
            version 7.21
              * Add computation of new arrays ISQ and IEQ which contains
                the starting and end indices at velocity points.
              * Renumber statements.

     (2)  clinic.F
            version 7.21
              * Change KZ to KZ=KMU(i)
              * Add new C-preprocessing option "explicitvmix" and
                eliminate "implicitvmix".  The implicit vertical mixing
                becomes the default scheme.
              * Use array FKMU instead of KMU.
              * Use masking array GM in the final internal mode velocity
                after the incorrect mean (LOOP 590) has been substracted.
              * Correct computation of acceleration when implicit
                vertical mixing; use masking array GM. Use (ub,vb) instead
                of (u,v).

     (3)  cnvmix.F
            version 7.21
              * Add new C-preprocessing option "explicitvmix" and
                eliminate "implicitvmix".  The implicit vertical mixing
                becomes the default scheme.

     (4)  defout.F
            version 7.21
              * Remove computation of longitude/latitude at the tracer
                and velocity points.  This computation is now done in
                routine HVGRID.

     (5)  fullwd.h
            version 7.21
              * Add new start and end indices ISQ and IEQ.              

     (6)  hvgrid.F
            version 7.21
              * Add computation of longitude/latitude at the tracer
                and velocity points.  Area arrays TLON, TLAT, VLON,
                and VLAT are stored in common block MODDAT.
              * Renumber statements.

     (7)  inparm.F
            version 7.21
              * Add new C-preprocesing option "rivmix" for vertical
                mixing in terms of the Richardson number.
              * Add new C-preprocessing option "explicitvmix" and
                eliminate "implicitvmix".  The implicit vertical mixing
                becomes the default scheme.

     (8)  Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4,
          Makefile.vms
            version 7.21
              * Add new C-preprocessing option "explicitvmix" and
                eliminate "implicitvmix".  The implicit vertical mixing
                becomes the default scheme.

     (9)  PEmakefile
            version 7.21
              * Add "rhomean.h" to the depencies of routine SETVBC.

     (10) pemodel.in
            version 7.21
              * Modify defaults values for the following parameters:
                NCON, VDCLIM, and VVCLIM.

     (11) ppmix.F
            version 7.21
              * Set large vertical coeffient in regions of gravitational
                instability.  Add logical statement for negative
                Richardson numbers.

     (12) relax.F
            version 7.21
              * Remove duplicate declaration of ISLE.

     (13) shap_lev.F
            version 7.21
              * Routine is re-structured completed to allow momentum
                and tracer to filtered according to their different
                starting and ending points.

     (14) setvbc.F
            version 7.21
              * Correct logical statement for the grided surface
                heat flux.  Use variable LSHGRD instead of LSMGRD.
              * Add SMEAN to the salinity in the computation of the
                surface water flux.  Add common block RHOMEAN to
                the includes statements.

     (15)  step.F
            version 7.21
              * Compute the diffusion/viscosity coefficeints for row
                J=1.  It applies to C-preprocessing options "ppvmix"
                and "rivmix".
              * Add call to new routine RIMIX which are activated
                with the new C-preprocessing option "rivmix".  This
                routine computes the vertical diffusion/viscosity
                coeffients in terms of the Richardson number.

     (16)  tracer.F
            version 7.21
              * Correct argument in call to routine INVTRI.  Use
                array BTF instead of BMF.
              * Add logical statement to perform convection loop only
                if NCON is greater than zero.
              * Change KZ to KZ=KMT(i)
              * Add new C-preprocessing option "explicitvmix" and
                eliminate "implicitvmix".  The implicit vertical mixing
                becomes the default scheme.

     (17) All other relevant codes are upgrated to VERSION 7.21


**** February 22, 1995  (Implicit vertical mixing corrections continue)

     (1)  bdryindx.F
            version 7.22
              * Replace zeros with variable C0.
              * The correction to the logical statement (L.ge.LSEGP) is
                pending.  This logic works if the number of start and
                end indices LSEG in "param.h" is greater than the actual
                number of the coastal segments plus one.

     (2)  biosource.F
            version 7.22
              * Rename shortwave radtiation STF(IMT,3) to SRF.

     (3)  blkdat.F
            version 7.22
              * Iniatialize variables SMEAN, RHO0, RBAR, SBAR,
                SCOEF, TBAR, and TCOEF for common block "rhomean.h".
              * Iniatialize new variables in common block "cvmix.h":
                CP, GAMMA, TAUMIN, LATMF0, MCOEF, NCOEF.

     (4)  clinic.F
            version 7.22
              * Organize local declaration statements.
              * Mask the change of velocity in loop 380 to the difference
                UA-UB.

     (5)  cnvmix.F
            version 7.22
              * Re-structured to determine mixed-layer depth and
                gravitational stability.
              * Add call to new routines MIXLAYER, PDENVGRAD, and
                CONVECT.

     (6)  cppmix.h
            version 7.22
              * Remove DRHO and DRHOP from common block; they are now
                in common block "cvmix.h".
              * Add parameter FRICMX to the common block.

     (7)  cvbc.h
            version 7.22
              * Add new fluxes to common block: SBF and SBFP.
              * Remove shortwave radiation from STF(IMT,3) to facilitate
                the natural expasion of tracers (biological tracers).
              * Create array SRF and SRFP for the shortwave radiation.

     (8)  fullwd.h
            version 7.22
              * Re-organize the common block.  Simplify C-preprocessing
                statetements.

     (9)  inparm.h
            version 7.22
              * Add reading of new parameters associated with vertical
                mixing.
              * Remove C-preprocessing option RIVMIX because it is not
                used.


     (10) Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4,
          Makefile.vms
            version 7.22
              * Add new routine VMIX_AUX.
              * Create $code and $includes macro to pass full deprendecies
                (path directory) to the make target.  This will allow
                executing the makefile in different directory to that of
                the source code.

     (11) PEmakefile
            version 7.22
              * Add dependecies to new routine VMIX_AUX.

     (12) oiassi.F
            version 7.22
              * Change argument to EXITUS call.

     (13) pemodel.in
            version 7.22
              * Re-structure input cards 6, 7, and 9.  Add new parameters
                associated with new vertical mixing scheme and mixed layer.
              * Organize documentation.

     (14) ppmix.F
            version 7.22
              * Add calls to new routines PDENVRHO, MIXLAYER, and CONVECT.

     (15) readvbc.F
            version 7.22
              * Correct checking of dimension of gridded frocing.  Separate
                checking of velocity grid from tracer grid logic.
              * Correct time index when processing shortwave radiation;
                use ITSWR instead ITSWF.

     (16) rhomean.h
            version 7.22
              * Remove internal declaration of SMEAN, RHO0, RBAR, SBAR,
                SCOEF, TBAR, and TCOEF from parameter statement. Add
                these variables to the common block and initialize them
                in BLKDAT.F.

     (17) robc.F
            version 7.22
              * Correct entry PROBC_ORI for Orlanski radiation
                condition on transport streamfunction.

     (18) step.F
            version 7.22
              * Add initialization of array GM.
              * Remove call to non-existing routine RIMIX and its
                associated C-preprocessing option RIVMIX.

     (19) setvbc.F
            version 7.22
              * Add computation of new variable STFP (surface tracer
                flux at row J+1).
              * Correct computation of surface water flux; change
                TB(I,J,2) to TB(I,1,2).
              * Add no-flux condition on tracers.
              * Set surface tracer flux in the biological tracers to
                zero.
              * Rename STF(IMT,3) to SRF. This allows the natural
                expansion of the fluxes to N tracers.
              * Scale the fluxes to model units.  At input the heat
                flux, water flux, and shortwave radiation is in
                Watts/m^2, cm/day, and Watts/m^2, respectively.

     (20) shap_lev.F
            version 7.22
              * Skip filtering if the coastal segment has only one point.

     (21) step.F
            version 7.22
              * Compute the diffusion/viscosity coefficeints for row
                J=1.  It applies to C-preprocessing options "ppvmix"
                and "rivmix".  Re-organize C-preprocessing IF statements.

     (22) vmix_aux.F
            version 7.22
              * New routine to process vertical mixing coefficients.
                Currently, it has three entries: MIXLAYER, PDENVGRAD,
                and CONVECT.

     (23) xtr_psi.F
            version 7.22
              * Correct computation of rate of change of vorticity. A
                factor of C2DTSF is missing.

     (24) All other relevant codes are upgrated to VERSION 7.22


**** March 22, 1995  (Remove parameter file "xtr_parm.h")
   
     (1)  Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4,
          Makefile.vms
            version 7.23
              * Remove "blkdat.f" from macro ANASRC. This file is now
                in HUSRC.
              * remove "xtr_param.h" from macro INCLUDES; this file
                becomes obsolete.

     (2)  param_tmp.h
            version 7.23
              * Add parameters for sub-domain extraction: MSUBDOM, XIMT,
                and XKM.

     (3)  PEmakefile
            version 7.23
              * Remove "xtr_parm.h" dependency to targets "xtract.f"
                and "xtrsubdom.f"

     (4)  xtract.F
            version 7.23
              * Remove obsolete parameter statement "xtr_param.h".
              * Remove XIMT from argument call to subroutines XTR_PSI,
                XTR_TRC and XTR_VEL.
              * Remove XIMTKM from argument call to subroutines XTR_TRC
                and XTR_VEL.

     (5)  xtr_param.h
            version 7.22
              * Parameter statement becomes obsolete. The parameters
                for sub-domain extraction are now declared in
                "param.h"
               
     (6)  xtr_psi.F
            version 7.23
              * Remove XIMT from argument call.  This parameter is
                now declared in "param.h".

     (7)  xtr_psi.F
            version 7.23
              * Remove XIMT from argument call.  This parameter is
                now declared in "param.h".

     (8)  xtr_trc.F
            version 7.23
              * Remove XIMT and XIMTKM from argument call.  These
                parameters are now declared in "param.h".

     (9)  xtr_vel.F
            version 7.23
              * Remove XIMT and XIMTKM from argument call.  These
                parameters are now declared in "param.h".

     (10) xtrsubdom.F
            version 7.23
              * Remove obsolete parameter statement "xtr_param.h".

     (11) All other relevant codes are upgrated to VERSION 7.23


**** March 28, 1995  Add Conjugate Gradient and cyclic boundary conditions.

     (1)  anaflds.F
            version 7.24
              * Insure cyclic boundary conditions in initial fields
                when "cyclic" is activated.
              * Add new entry ANAVBC which sets the analytical vertical
                boundary conditions (forcing fields) when the option
                "analytical" is activated.

     (2)  bdryindx.F
            version 7.24
              * Change ranges in the computation of FMKZ from IMU to IMT.
                The variable IMU changes according to C-preprocessing
                "cyclic".
              * Avoid reading LANDV from input NetCDF file when "analytical"
                is activated.

     (3)  clinic.F
            version 7.24
              * Insure cyclic boundary conditions in initial fields
                when "cyclic" is activated.
              * Use variable IMUM1 for the range of several DO loops
                instead of IMTM2.  This facilitates the implementation
                of cyclic boundary conditions.

     (4)  extrap.F
            version 7.24
              * Rearrange extrapolation to eliminate round-up when
                fields are uniform.

     (5)  grad2_p.F
            version 7.24
              * Insure cyclic boundary conditions on DPDX and DPDY if
                "cyclic" is activated.

     (6)  grad24_p.F
            version 7.24
              * Insure cyclic boundary conditions on DPDX and DPDY if
                "cyclic" is activated.
              * Dimension HPX and HPY to (IMT,KM) to allow running the
                model in barotropic mode (one level).
              * Add new argument (KM) to routine call INIT_SRCH.

     (7)  hvgrid.F
            version 7.24
              * Insure cyclic boundary conditions on arrays DXT, DXU,
                and HV if "cyclic" is activated.

     (8)  inparm.F
            version 7.24
              * Report new C-preprocessing options "cyclic" and
                "sor5pt".

     (9)  infld.F
            version 7.24
              * Remove the computation of PRMS which is used for the
                convergence criteria.  This is now done in RELAX at
                each time step.

     (10) init_srch.F
            version 7.24
              * Protect search in barotropic set-up (one level).
              * Add new argument KM.

     (11) landsea.F
            version 7.24
              * Add reading of the land/sea mask ASCII-file when the
                option "analytical" is activated.  Add computation of
                LANDV.

     (12) lap_depth.F
            version 7.24
              * Insure cyclic boundary conditions on LAP_XX and LAP_YY if
                "cyclic" is activated.
              * Add new argument (KM) to routine call INIT_SRCH.

     (13) lap_lev.F
            version 7.24
              * Insure cyclic boundary conditions on LAP_F if "cyclic"
                is activated.

     (14) lintslab.F
            version 7.24
              * Rearrange interpolation to eliminate round-up when
                fields are uniform.
              * Protect against division by zero in a barotropic
                set-up (one level).

     (15) Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4,
          Makefile.vms
            version 7.24
              * Add documentation for new C-preprocessing options
                "cyclic" and "sor5pt".
              * Move "param_tmp.h" from INCLUDES to EXTRA macro definitions.
              * Add "param.h" to macro "includes".

     (16) PEmakefile
            version 7.24
              * Add new dependencies (cvbc.h and cvmix.h) to target 
                "anaflds.f".

     (17) param_tmp.h
            version 7.24
              * Add C-preprocessing option "cyclic" to the parameter
                statement.  Notice that now IMU=IMT if "cyclic" is
                activated otherwise IMU=IMT-1.

     (18) ppmix.F
            version 7.24
              * Insure cyclic boundary conditions on array RIU if
                "cyclic" is activated.
              * Renumber statements.

     (19) relax.F
            version 7.24
              * Routine is re-structured for new C-preprocessing option
                "sor5pt" which solves for transport streamfunction
                using sequential over-relaxation (old RELAX).  Add
                solution using a five-point conjugate gradient algorithm
                which becomes the default option.
              * Add cyclic boundary conditions; new C-preporecessing
                option "cyclic".
              * The value PRMS used in the convergence criteria is now
                updated every timestep.
              * Avoid updating PB during a mixing timestep. 

     (20) setvbc.F
            version 7.24
              * Remove the computation of STFP for biological tracers
                because it not needed.

     (21) shap_filt.F
            version 7.24
              * Insure cyclic boundary conditions on local arrays G and
                ZZ if "cyclic" is activated.

     (22) shap_lev.F
            version 7.24
              * Insure cyclic boundary conditions on local arrays G and
                ZZ if "cyclic" is activated.

     (23) splintslab.F
            version 7.24
              * Rearrange interpolation to eliminate round-up when
                fields are uniform.

     (24) step.F
            version 7.24
              * Change the argument to routine call SHAP_LEV from IMT-1
                to IMU.  This facilitate the implementation of the
                cyclic boundary conditions.
              * Avoid calling BOUNDARY to set western and eastern
                lateral boundary conditions when "cyclic" is activated.
              * Add call to new entry ANAVBC which sets the analytical
                vertical boundary conditions (forcing fields) when the
                option "analytical" is activated.

     (25) tracer.F
            version 7.24
              * Insure cyclic boundary conditions in initial fields
                when "cyclic" is activated.
              * Correct computation of TERMBT(K,1,M); loop 400.

     (26) workspb.h
            version 7.24
              * Add new arrays associated with conjugate gradient
                solution: ASUM, GDIR, FDIR, and HDIR.

     (29) All other relevant codes are upgrated to VERSION 7.24


**** March 28, 1995  Double/single precision operations and output.

    
     (1)  cdefs.h
            version 7.25
              * NEW include file that is used to define globally the
                size of floating-point variables (single or double).
              * Users are recomended to follow the declactation style
                for floating points varibles: use FLOAT everytime that
                real variable is defined instead of "real"; leave the
                line in blank to allow expansion of the FLOAT macro
                (real, real*8, double precesion, etc). For example:

      FLOAT
     *      myrealvar,myrealarray(*)

              * Everytime that a conversion operation from interger
                to real is needed, use
                   
      x=FLoaT(i)    instead of      x=float(i)

              * Other definitions can be added in the future as
                instructions of the C-preprocessor.

     (2)  pconst.h
            version 7.25
              * NEW include file which contains all the constant
                parameter definitions.  Users are encoraged to follow
                the naming convenctions rules.

     (3)  state.F
            version 7.25
              * Correct simplified nonlinear equation of state; DO loops
                10 and 20 were missing.

     (4)  *.F *.h
            version 7.25

              * Almost all routines and include files are modified so the 
                declarations of floating-point variables are generic; that is,
                the C-preprocessing directive FLOAT is used.  Same for the
                integer to real conversion FLoaT.
              * All apostrophes are removed from commented lines because it
                confuse the C-preprocesor in the CRAY and C90.  Problems can
                arise also from double quotes if they are not closed in the
                same commented line.
              * New common blocks are created to separate integers and
                logicals from real and from character variables to avoid
                aligment problems.  For example, the include file
                "tracks.h" has now three different common blocks:

                      common /itracks/      integers and logicals variales
                      common /ftracks/      floating-point variables
                      common /ctracks/      character variables

                It is recommended to users to follow this convection.
                      
     (5)  All other relevant codes are upgrated to VERSION 7.25


**** April 25, 1995  Biological model and NetCDF input/output revisited

     (1)  anaflds.F
            version 7.26
              * Add include files "pconst.h" and "cbiopnh.h".
              * Add initialization of biological fields, their boundary
                conditions, and their surface and bottom fluxes.

     (2)  biosource.F
            version 7.26
              * Routine and biological model was revised to include
                a closure: add detritus.

     (3)  biopnh.in
            version 7.26
              * Modify input parameters to biological module.

     (4)  blkdat.F
            version 7.26
              * Rename parameter from GAMMA to ATTH2O.

     (5)  cbiopnh.h
            version 7.26
              * Add new variables associated with biological model.

     (6)  cdfout.F
            version 7.26
              * Add writting of new field: internal mode velocities,
                NH4 production rate, NO3 production rate, and zooplankton
                grazing.
              * Change values of IOUT and reorder writting of fields.

     (7)  cinpvbc.h
            version 7.26
              * Add new variables associated with new surface nutrient
                flux.

     (8)  clinic.F
            version 7.26
              * Rename variables USAV to UCL, VSAV to VCL, USAVB to UCLB,
                VSAVB to VCLB, UCLIN to UCLP, VCLIN to VCLP, UCLINB to
                UCLBP, and VCLINB to VCLBP.
              * Manage the rolling of baroclinic variables at the
                beginning to avoid confusion on J and J+1 data.
              * Use the correct baroclinic velocity in the computation
                of WVELU.
              * Renumber some statements.

     (9)  ctsrc.h
            version 7.26
              * Increase number of point sources from 5 to 7.
              * Separate common block between integers and floats.

     (10) cvmix.h
            version 7.26
              * Rename parameter from GAMMA to ATTH2O.

     (11) defnrg.F
            version 7.26
              * Increase dimension of output variable IOUT from 20 to 30.
              * Rename switch IOUT(16) to IOUT(9).

     (12) defout.F
            version 7.26
              * Reorder definition of output variables according to
                the new order of IOUT.
              * Define new output field VCLIN for internal mode
                (baroclinic) velocities.
              * Define new output field associated with the biological
                model: detritus, NH4 production rate, NO3 production
                rate, zooplankton grazing rate.
              * Increase dimension of output variable IOUT from 20 to 30.

     (13) infld.F
            version 7.26
              * Input NetCDF variables renamed from VINI to VCLIN,
                PINI to PBAR, and TRC#INI to TRC#.   This variable had
                now a time dimension.  However, only one time record
                (the first one) is addressed: initialization.  So input
                and output fields have the same NetCDF variable name.

     (14) inparm.F
            version 7.26
              * Read new input card for IOUT; elements 21-30.
              * Modify input cards for the biological model.  Modify
                the report of biological parameters.

     (15) Makefile.cray, Makefile.iris, Makefile.sun3, Makefile.sun4,
          Makefile.vms
            version 7.26
              * Add new C-preprocessing option "pttrcsrc".

     (16) oiassi.F
            version 7.26
              * Input NetCDf variables renamed from POBS to PBAR,
                POBSERR to PBARERR, TRC#OBS to TRC#, VOBS to VCLIN. 

     (17) options.h
            version 7.26
              * Document common block variables.
              * Increase dimension of IOUT from 20 to 30.

     (18) PEmakefile.F
            version 7.26
              * Add new dependencies to targets ANAFLDS, BIOSOURCE,
                CDFOUT, DEFOUT, and SETVBC.

     (19) pconst.h
            version 7.26
              * Add new parameter constant.

     (20) pe_netcdf.h
            version 7.2
              * Add IDs for new NetCDF variables in input and output
                files.

     (21) pemodel.in
            version 7.26
              * Add new input card to allow IOUT to expand from 20 to
                30 elements.
              * Reorder output fields in IOUT to allow a continuous and
                logical expansion of additional tracers (biological)
                fields.
              * Update documentation of input parameters.

     (22) ppmix.h
            version 7.26
              * Modify value of parameter EPSLN from 1.0e-20 to 1.0e-2.

     (23) readvbc.F
            version 7.26
              * Add reading of surface forcing for biology (surface
                nutrient flux) from input forcing NetCDF file.

     (24) step.F
            version 7.26
              * Rename variables USAV to UCL, VSAV to VCL, USAVB to UCLB,
                VSAVB to VCLB, UCLIN to UCLP, VCLIN to VCLP, UCLINB to
                UCLBP, and VCLINB to VCLBP.
              * Use index M instead of N in biological tracers, loops
                295, 296, 395, 396, and 435.

     (25) setvbc.F
            version 7.26
              * Add surface and bottom fluxes for biological tracers.

     (26) tsource.F
            version 7.26
              * Add new C-preprocessing option "pttrcsrc" for the
                specification of point tracer sources.

     (27) vmix_aux.h
            version 7.26
              * Rename parameter from GAMMA to ATTH2O.
	
     (28) workspa.h
            version 7.26
              * Manage the maintanance of internal mode velocity for
                output and clearity.
              * Rename variables USAV to UCL, VSAV to VCL, USAVB to UCLB,
                VSAVB to VCLB, UCLIN to UCLP, VCLIN to VCLP, UCLINB to
                UCLBP, and VCLINB to VCLBP.
              * Add new variables UCLM and VCLM.

     (29) wrtcdf.F
            version 7.26
              * Add logic that determines the grid point type for
                new output fields.

     (30) All other relevant codes are upgrated to VERSION 7.26


**** May 8, 1995  Cleanning and documenting.


     (1)  bdryindx.F
            version 7.27
              * Write out masking arrays LANDT and LANDV only if
                WNETCDF=.true.

     (2)  bndata.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".

     (3)  cbiopnh.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (4)  ccfl.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (5)  cdfout.F
            version 7.27
              * Move down by two the switches to plot biological fields.
                They are now IOUT(16)-IOUT(23).
              * Write density at row JMT; for consistency with output
                temperature and salinity fields, the data at row JMT is
                the same as row JMTM1.
              * Write mixed-layer depth if IOUT(15) is activated.

     (6)  cdiag.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (7)  cinpvbc.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (8)  clinic.F
            version 7.27
              * Remove call to obsolete routine "grad2_p" and C-preprocessing
                option "newgradp".
              * Rename MIXMEQ to MIXVEL.
              * Change range bounds in the initialization of ZUN and ZVN
                from 2-IMUM1 to 1-IMU.
              * Correct the writting of boundary arrays for the reduced
                physics option in ZTD when cyclic boundary conditions
                are activated.
              * Correct energy term associate with Coriolis term.a

     (9)  cppmix.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (10) ctsrc.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (11) cvbc.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (12) cvmix.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (13) defnrg.F
            version 7.27
              * Define variables TGRID3 and BUOY into energy NetCDF file
                only if switch IOUT(14) is activated.
              * Define variables VGRID3, KE_TOT, and KE_TREMS into energy
                NetCDF file only if switch IOUT(9) is activated.

     (14) defout.F
            version 7.27
              * Rename variables:
                 MIXMEQ => MIXVEL, MIXHEQ => MIXTRC, MIXVEQ => MIXZTD
                 NORDM,NTIMM,NFRQM  => NORDV,NTIMV,NFRQV
                 NORDH,NTIMH,NFRQH  => NORDT,NTIMT,NFRQT
              * Add a switch to plotting buoyancy work in energy
                NetCDF file: IOUT(14).
              * Move down by two the switches to plot biological fields.
                They are now IOUT(16)-IOUT(23).
              * Write positional arrays TGRID3 and VGRID3 into energy
                NetCDF file only if IOUT(14) and IOUT(9) are respectively
                activated.

     (15) derivs0.F
            version 7.27
              * Correct boundary condition in the Bessel interpolation
                at the last 4x4 grid. 

     (16) diag.F
            version 7.27
              * Rename variable MIXHEQ to MIXTRC.
              * Write BUOY into energy NetCDF file only if switch IOUT(14)
                is activated.
              * Write KE_TOT and KE_TERMS into energy NetCDF file only if
                switch IOUT(9) is activated:
                    IOUT(9)=1   write KE_TOT.
                    IOUT(9)=2   write KE_TERMS.
                    IOUT(9)=3   write both KE_TOT and KE_TERMS.

     (17) fields.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".
              * Add new variables to common block: ZUN, ZVN, ZUS, ans ZVS
                they were previously in "onedim.h".

     (18) filtdat.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".
              * Rename variables:
                 MIXMEQ => MIXVEL, MIXHEQ => MIXTRC, MIXVEQ => MIXZTD
                 NORDM,NTIMM,NFRQM  => NORDV,NTIMV,NFRQV
                 NORDH,NTIMH,NFRQH  => NORDT,NTIMT,NFRQT
              * Remove obsolete arrays ALPHA and DGDZ.

     (19) fullwd.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".
              * Remove obsolete variables: MSB, NDW, NERGY
              * Add new logical variable WNETCDF.

     (20) getdgdz.F
            version 7.26
              * Routine eliminated.

     (21) grad2_p.F
            version 7.26
              * Routine eliminated.

     (22) grad24_p.F
            version 7.27
              * Update documentation.

     (23) gradp.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".

     (24) hvgrid.F
            version 7.27
              * Remove unused variable SWLDEG.

     (25) hybrid.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".
              * Remove obsolete arrays KCO and HL.

     (26) ioi.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".
              * Create new common block to differentiate between float
                and integer variables.

     (27) iounits.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".
              * Remove obsolete variable IOIINP.

     (28) inparm.F
            version 7.27
              * Remove documentation for obsolete C-preprocessing option
                "newgradp".
              * Rename variables from MIXMEQ to MIXVEL, MIXHEQ to MIXTRC,
                and MIXVEQ to MIXZTD.
              * Rename Shapiro filter switches:
                 NORDM,NTIMM,NFRQM  => NORDV,NTIMV,NFRQV
                 NORDH,NTIMH,NFRQH  => NORDT,NTIMT,NFRQT
              * Remove reporting documentation of switch IOPT(5).  Boundary
                conditions on Shapiro filter are obsolete.
              * Remove reporting documentation of switch IOPT(6).  Surface
                to apply Shapiro filter.  Only along "sigma" surfaces is
                supported.

     (29) Makefile.cray Makefile.iris Makefile.sun3 Makefile.sun4
          Makefile.vms
            version 7.27
              * Add new C-preprocessing "rmdocinc" to remove documentation
                in all include files.
              * Remove C-preprocessing "newgradp"; it becomes the default
                option.
              * Remove obsolete routines "getdgdz" and "grad2_p" from targets.

     (30) moddat.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".

     (31) ocean.F
            version 7.27
              * Remove initialization of unused variables NDW, IOIOUT.
              * Rename variables from ICNTM to ICNTV and ICNTH to ICNTT.
              * Create new logical variable WNETCDF which activates the
                creation and writing of output NetCDF files.
                  
     (32) oiopts.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".

     (33) onedim.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".
              * Remove unused arrays: EEH, EEM, FFH, FFM, DZZ, DZ2R, C2DZ,
                                      ZDZ, DZZ2R, and ZDZZ.

     (34) options.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".

     (35) param_tmp.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (36) pconst.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (37) PEmakefile
            version 7.27
              * Remove dependecies for obsolete files "getdgdz.f" and                          "grad2_p.f".
              * Add "cvmix.h" to target "cdfout.f".

     (38) pemodel.in
            version 7.27
              * Rename variables from MIXMEQ to MIXVEL and MIXHEQ to MIXTRC.
              * Deactivate switches IOPT(5) and IOPT(6): boundary conditions
                on Shapiro filter and surface to apply it are obselete. The
                Shapiro filter is now done over "sigma' surfaces only.
              * Move down by one the switches to plot biological fields.
                They are now IOUT(16)-IOUT(23).
              * Add writing of buoynacy work into energy NetCDF file only
                if switch IOUT(14) is activated.
              * Add writing of mixed-layer depth if IOUT(15) is activated.
              * Modify switch IOUT(9) as follows:
                    IOUT(9)=1   write KE_TOT.
                    IOUT(9)=2   write KE_TERMS.
                    IOUT(9)=3   write both KE_TOT and KE_TERMS.

     (39) pe_netcdf.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".
              * Add new switch MLDID to writing mixed-layer depth.

     (40) relax.F
            version 7.27
              * Rename MIXVEQ to MIXZTD.

     (41) rhomean.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".

     (42) robc.F
            version 7.27
              * Correct entries TROBC_ORI and VROBC_ORI; a factor of 2
                was missing.

     (43) runid.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".
              * Rename common block to convention.

     (44) scalar.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".
              * Remove obsolete varaible SWLDEG.

     (45) shap_filt.F
            version 7.26
              * Routine eliminated.

     (46) shap_lev.F:
            version 7.27
              * Remove unused arrays DGDZ and ALPHA from subroutine arguments.
              * Add missing statements after filtering by columns when the
                C-preprocessing "cyclic" is activated.

     (47) step.F
            version 7.27
              * Replace logical statement (NLEV.GT.0) with WNETCDF.
              * Rename variables from MIXMEQ to MIXVEL and MIXHEQ to MIXTRC.
              * Rename Shapiro filter switches:
                 NORDM,NTIMM,NFRQM,ICNTM  => NORDV,NTIMV,NFRQV,ICNTV
                 NORDH,NTIMH,NFRQH,ICNTH  => NORDT,NTIMT,NFRQT,ICNTH
              * Remove call to obsolete routine GETDGDZ.  Remove obsole
                arrays DGDZ and ALPHA from argument list to SHAP_LEV.

     (48) tracer.F
            version 7.27
              * Rename variable from MIXHEQ to MIXTRC.

     (49) tracks.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (50) tracktime.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".

     (51) trkfld.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".

     (52) trkscl.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".

     (53) vertslabs.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (54) vmix_aux.h
            version 7.27
              * Roll arrays MLDU and MLDUM at the beggining of the
                routine to facilitate access to those arrays from
                outside.

     (55) voldat.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".

     (56) workspa.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".

     (57) workspb.h
            version 7.27
              * Document common block and add new C-preprocessing option
                "rmdocinc".

     (58) workspb.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (59) wrtcdf.h
            version 7.27
              * Add statements for writing mixed-layer depth.

     (60) xtr_opts.h
            version 7.27
              * Add new C-preprocessing option "rmdocinc".

     (61)  All other relevant codes are upgrated to VERSION 7.27


**** August 28, 1995  Reinstating spherical coordinates.

     (1) anaflds.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Add call to NEW routine READGRIDS which allows the user
                to get the domain configuration from GRIDS NetCDF file
                when new C-preprocessing option "grids" is activated.
              * Add code to initialize new biological models.

     (2) assiwght.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (3) bdryindx.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Move reading of LANDV to landsea.F and writing of mask
                data to DEFOUT.

     (4) bioAnder.in
            version 7.28
              * NEW input script for Anderson's biological model.

     (5) bioFasham.in
            version 7.28
              * NEW input script for Fasham et al. biological model.

     (6) bioMcGillic.in
            version 7.28
              * NEW input script for McGillicuddy et al. biological model.

     (7) biosource.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Re-structure routine to include the following biological
                models:
                  (1) McGillicuddy et al. Model (option "bioMcGillic").
                  (2) Anderson's modification to McGillicuddy et al. Model
                      (option "bioMcGillic").
                  (3) Fasham et al. Model (option "bioFasham").

     (8) blkdat.F
            version 7.28
              * The initialization of several common block variables
                were moved from OCEAN to here.
              * Initialize new horizontal coordinate parameter COORD.
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Set tracer variables names.

     (9) boundary.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Activate switched for closed boundary conditions on
                change of barotropic vorticity.

    (10) bracket_z.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

    (11) bupdate.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

    (12) cbiopnh.h
            version 7.28
              * Re-structure common block to include the variables for
                the following biological models:
                  (1) McGillicuddy et al. Model (option "bioMcGillic").
                  (2) Anderson's modification to McGillicuddy et al. Model
                      (option "bioMcGillic").
                  (3) Fasham et al. Model (option "bioFasham").

    (13) cdfout.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Write new biological tracers according to biological
                model.

    (14) cdiag.h
            version 7.28
              * Increased number of balance terms for momentum.

    (15) cfl.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Included cosine metric factors with DX terms.

    (16) cinpvbc.h
            version 7.28
              * Replace C-preprocessing option "biopnh" with
                "bioMcGillic", "bioFasham", or "bioAnder".

    (17) clinic.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Added metric terms Umet, UUtan, UVtan and Vmet.
              * Added Laplacian along terrain following levels.
              * Corrected calculation of vertical velocity (z)
              * Add C-preprocessing option "barotropic" to avoid 
                warnings of "DO range never executed" during barotropic
                model configuration (KM=1).

    (18) cnvmix.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Add C-preprocessing option "barotropic" to avoid 
                warnings of "DO range never executed" during barotropic
                model configuration (KM=1).

    (19) day_code.F
            version 7.28
              * NEW routine used by GET_DATE to decode the day of the
                week.

    (20) defnrg.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Write new horizontal coordinate parameter COORD.
              * Added metric terms to KE and momentum balance.
              * Define units for KE_TERMS (microWatts/m^3) and
                KE_EXTAVG (gigaWatts).
              * Add output/input file names as global attributes.
              * Add history attribute.

    (21) defout.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Write new horizontal coordinate parameter COORD.
              * Document option: Laplacian along terrain following levels.
              * Move common block data initialization to routine
                BLKDAT.
              * Add output/input file names as global attributes.
              * Add history attribute and call to new routine GET_DATE
                to set the current date/time string.
              * Name of NetCDF tracers variables was added to TNAME
                array.
              * Add definition of new variables associated with new
                biological models.
              * Move writting of mask data from BDRYINDX to here.

    (22) depthlev.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

    (23) depthslab.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

    (24) derivs0.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Include metric factor in scaling of velocity.
              * Set separate horizontal scales in X- and Y-directions.
              * Allow periodic domains.

    (25) diag.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Write additional time rate of change of kinetic
                energy components.
              * Additional terms added to ENGLEAK, PLICIN and PLICEX
              * Add forgotten metric factors.
              * Include new Laplacian option.
              * Scale KE_TERMS to microWatts/m^3 when writting. 
              * Scale KE_EXTAVG to gigaWatts.

     (26) drifters.F
            version 7.28
              * Update call for new LL2XY.
              * Remove STDOUT argument from routine call.  Its value is
                pass via common block IOUNITS.
              * Use new variable DPOSNAM as the name of the file containing
                the initial positions of the Langrangian drifters.
              * Add include files "param.h", "moddat.h", and "iounits.h".
              * Allow periodic domains.

     (27) exitus.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (28) extrap.F
            version 7.28
              * Don't declare unused variables for 4th order case.

     (29) filtdat.h
            version 7.28
              * Document option: Laplacian along terrain following levels.

     (30) fsigma.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Allow periodic domains.

     (31) get_date.F
            version 7.28
              * NEW routine used to set the current date/time string.
              * It uses NEW routine DAY_CODE.

     (32) get_ewpt.F
            version 7.28
              * NEW routine for rotated spherical grids.

     (33) get_thick.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Add C-preprocessing option "barotropic" to avoid 
                warnings of "DO range never executed" during barotropic
                model configuration (KM=1).

     (34) grad24_p.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Add C-preprocessing option "barotropic" to avoid 
                warnings of "DO range never executed" during barotropic
                model configuration (KM=1).

     (35) gradhp2.h
            version 7.28
              * Better use of metric factors.

     (36) gradhp4.h
            version 7.28
              * Better use of metric factors.

     (37) gradp2.h
            version 7.28
              * Better use of metric factors.

     (38) gradp4.h
            version 7.28
              * Better use of metric factors.

     (39) hvgrid.F
            version 7.28
              * Compute factors for cartesian, spherical or rotated
                spherical grids.
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Add C-preprocessing option "barotropic" to avoid 
                warnings of "DO range never executed" during barotropic
                model configuration (KM=1).

     (40) infld.F
            version 7.28
              * Read new horizontal coordinate parameter COORD.
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Read in number of points in mean TS profile.  The
                option to read KM+2 points became obsolete.  It read as
                many points as the user provides.

     (41) inparm.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Remove statements for getting the current date/time
                strings.  They are now set by new routine GET_DATE.
              * Remove switches for writting out biological fields from
                variable IOUT. Remove input Card 13 from main PE model
                input script.  These are now entered in the biological
                model input script via variable IBIOUT.
              * Add Cards 15-26 for reading in output and input file names.
              * Add new C-preprocesing for biological model formulations:
                "bioMcGillic", "bioFasham", or "bioAnder".
              * Add reading of biolocal model parameters according to
                their C-preprocessing options.
              * Report input/output file names.
              * Document option: Laplacian along terrain following levels.

     (42) int_gradrho.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Add C-preprocessing option "barotropic" to avoid 
                warnings of "DO range never executed" during barotropic
                model configuration (KM=1).

     (43) invtri.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Add C-preprocessing option "barotropic" to avoid 
                warnings of "DO range never executed" during barotropic
                model configuration (KM=1).

     (44) iounits.h
            version 7.28
              * Remove variable BTHINP.
              * Add a integer and character common block.
              * Add output/input file names:  OUTNAME, NRGNAME, TRKNAME,
                INPNAME, FRCNAME, ASSNAME, APARNAME, DPOSNAM, XPARNAM,
                BPARNAM, GRDNAME, and USRNAME.

     (45) landsea.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Remove ASCII reads for analytic initialization
              * Read in LANDV.

     (46) lap_depth.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Added gradient of velocity for use in metric terms.
              * Incorrect references to KHI and KLOW in entry LAPT_DEPTH
                at western sides in linear interpolations.
              * Added fluxes of horizontal gradients through top and bottom.

     (47) lap_filt.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Use new entry calls to LAP_LEV.
              * Reworked spacings.

     (48) lap_lev.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Added gradient of velocity for use in metric terms.
              * Rewrote with entries similar to lap_depth.F

     (49) ll2xy.F
            version 7.28
              * Add spherical and rotated spherical conversions.

     (50) load_sig.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (51) Makefile.cray Makefile.iris Makefile.sun3 Makefile.sun4
          Makefile.vms
            version 7.28
              * Re-structure UNIX Makefiles to allow compiling in 
                directories other than source code directory.
              * Add new C-preprocessing options: "bioAnder", "bioFasham",
                "bioMcGillic", "grids", "craydate", and "vaxdate".
              * Remove C-preprocessing options: "biopnh" and "decdate".

     (52) meanrho.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * TS profile has now NPROF points.

     (53) moddat.h
            version 7.28
              * Introduce new horizontal coordinate parameter COORD.

     (54) ocean.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Move various parameter initialization to block data
                routine BLKDAT.
              * Remove argument STDOUT from call to DRIFTERS.
              * Replace C-preprocessing option "biopnh" with
                "bioMcGillic", "bioFasham", or "bioAnder".

     (55) odam.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (56) oiassi.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Use new variable APARNAM to open assimilation parameters
                file. Add error checking during reading.
              * Renumber.

     (57) oibndry.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (58) okeep.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (59) onedim.h
            version 7.28
              * Resized variable TNG.
              * Added metric coefficients for laplacian of velocity.

     (60) osav.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (  ) param_tmp.h
            version 7.28
              * Dimension NT according to biological model used.
              * Add new parameter MPROF for the maximum number of points
                in mean TS profile.

     (61) PEmakefile
            version 7.28
              * Add FILELINK target to allow compiling in other directories
                other than the source directory
              * Update dependecies for object files.
              * Add dependencies for C-preprocessing files.

     (62) pconst.h
            version 7.28
              * Change C-preprocessing "double" to "dblprec".
              * Add variable ROOT2.

     (63) pe_netcfd.h
            version 7.28
              * Set tracer names in routine BLKDAT.
              * Create integer and character common blocks.
              * Remove IO file names; they are now located in IOUNITS.
              * Add TNAME and HISTORY to character common block.
              * Add new ID variables associated with biological model:
                BGRDID, BGRNID, EXPTID, FPFLID, ZGRBID, ZGROID, ZGRPID.

     (64) pemodel.in
            version 7.28
              * New option for mixing (MIXVEL  MIXTRC).
              * Remove switches to plot biological fields.  They are now
                located in biological model input script.
              * Add input Cards 15-26 which specify output/input file
                names:  OUTNAME, NRGNAME, TRKNAME, INPNAME, FRCNAME,
                ASSNAME, APARNAME, DPOSNAM, XPARNAM, BPARNAM, GRDNAME,
                and USRNAME.

     (65) ppmix.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (66) readgrids.F
            version 7.28
              * NEW routine to read domain configuration from a GRIDS
                NetCDF file.  It could be used when the C-preprocessing
                options "grids" is activated.

     (67) readvbc.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Replace C-preprocessing option "biopnh" with
                "bioMcGillic", "bioFasham", or "bioAnder".

     (68) relax.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (69) rk40.F
            version 7.28
              * Allow periodic domains.

     (70) robc.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (71) rotangle.F
            version 7.28
              * NEW routine for rotated spherical grids.

     (72) rotparm.F
            version 7.28
              * NEW routine for rotated spherical grids.

     (73) runid.h
            version 7.28
              * Change VERSION to a character variable.
              * Remove obsolete variable RUNPE.
              * Add new variable DATE_STR

     (74) setvbc.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Update surface and bottom biological tracer fluxes 
                according to C-preprocessing options "bioAnder",
                "bioFasham", and "bioMcGillic".

     (75) setvert.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (76) shap_lev.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (77) sig2z.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (78) sig_search.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (79) sigma2z.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Allow periodic domains.

     (80) state.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (81) step.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Initialize Laplacian metric terms
              * Replace C-preprocessing option "biopnh" with
                "bioMcGillic", "bioFasham", or "bioAnder".

     (82) tracer.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Added Laplacian along terrain following levels.
              * Correct vertical (z) velocities.
              * Replace C-preprocessing option "biopnh" with
                "bioMcGillic", "bioFasham", or "bioAnder".
              * Add C-preprocessing option "barotropic" to avoid 
                warnings of "DO range never executed" during barotropic
                model configuration (KM=1).

     (83) trackbound.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Allow periodic domains.

     (84) trackfin.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (85) trackinit.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Set separate horizontal scales in X- and Y-directions.
              * Convert degree grid spacing to cm.

     (86) trackrefresh.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (87) tracksout.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Update call to XY2LL.
              * Add output/input file names as global attributes.
              * Add history attribute.

     (88) trackstep.F
            version 7.28
              * Moved velocity rescaling to new routine TRKVSCL.

     (89) trackup.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (90) trkscl.h
            version 7.28
              * Separate horizontal scales in X- and  Y-directions.

     (91) trkvscl.F
            version 7.28
              * NEW routine for rescaling drifter velocities.

     (92) tsource.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.

     (93) vmix_aux.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Add C-preprocessing option "barotropic" to avoid 
                warnings of "DO range never executed" during barotropic
                model configuration (KM=1).

     (94) workspa.h
            version 7.28
              * Added metric terms Umet, UUtan, UVtan and Vmet.

     (95) wrtcdf.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Add checking in new NetCDF variable IDs: BGRDID, BGRNID,
                EXPTID, FPFLID, ZGRBID, ZGROID, and ZGRPID; and remove
                ZOOGID.

     (96) xtr_psi.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Get (x,y) interpolation positions from ll2xy.F

     (97) xtr_trc.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Get (x,y) interpolation positions from ll2xy.F

     (98) xtr_vel.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Get (x,y) interpolation positions from ll2xy.F
              * Generalized the velocity rotation angles.

     (99) xtr_vel.F
            version 7.28
              * NEW routine used to extract time rate of change of
                vorticity.  This was removed from "xtr_psi" to facilitate
                generality.

   (100) xtract.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Change variables VINI to VCLIN and PINI to PBAR.  Add 
                time dimension when reading.
              * Updated call to XTR_VEL.

   (101) xtrsubdom.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.
              * Use new variable XPARNAM as input file name.
              * Correct time clock.

   (102) xy2ll.F
            version 7.28
              * Add spherical and rotated spherical conversions.

   (103) zetabar.F
            version 7.28
              * Set include for "param.h" to inhibit searching in local
                directory.


 ***  July 22, 1996:

      Version 8.1:

       * All UNIX make files changed to GNU makefiles.  This handles
         the alternate directory paths better and much more uniformly
         than version 7.28.  Names changed from Makefile.* to
         GNUmakefile.*

       * All CPP include directives delimited with " " changed to
         being delimited with < >.

      (1) anaflds.F
           * Report double sigma parameters.

      (2) bdryindx.F
           * Remove printing of starting & ending indices of segments
             when land mask is present.
           * Flush output buffers, if necessary.

      (3) bes2d.F
           * Reinstating this routine for nesting.

      (4) blkdat.F
           * Initialize new version data.
           * Correct initialization of TINIT and NPROF when using
             analytic initialization.
           * Initialize netCDF output file status flags.

      (5) bndata.h
           * Separate common blocks for integer and floating point data.

      (6) bndyrlx.h   (new)
           * New common block for boundary relaxation.

      (7) cdfout.F
           * Write vertical velocities (not fluxes) at center of
             box levels.

      (8) cdiag.h
           * Define space for boundary relaxation balance terms.

      (9) clinic.F
           * Compute vertical velocities (not fluxes) at center of
             U-boxes.
           * Initialize boundary relaxation fields.
           * Implement boundary relaxation forcing terms.
           * Compute boundary relaxation balance terms.

      (10) chkparm.F   (new)
           * New routine to check consistency between C Pre-Processing
             choices and software switches.

      (11) defnrg.F
           * Use new version data.
           * Document balance term components.
           * Remove illegal attribute names.
           * Set netCDF output file status flag.

      (12) defout.F
           * Use new version data.
           * Correct definition of mixed layer depth.
           * Vertical velocities (not fluxes) defined at center of
             box levels.
           * Record boundary relaxation scales.
           * Remove illegal attribute names.
           * Set netCDF output file status flag.

      (13) diag.F
           * Improve generalization (easier updating for new terms).

      (14) drifters.F
           * Correct call to routine LL2XY.

      (15) exitus.F
           * Close or abort netCDF output files depending upon status.

      (16) frecv.C   (new)
           * New routine to send data through a socket.

      (17) fsend.C   (new)
           * New routine to send data through a socket.

      (18) headln.F   (new)
           * New routine to date stamp and version information to echo file.

      (19) infld.F
           * Report double sigma parameters.

      (20) inparm.F
           * Move checking of software switches to new routine CHKPARM.
           * Move reporting of double sigma parameters to INFLD  and ANAFLDS.
           * Read in boundary relaxation scales.
           * Replace computed goto's by extended if-elseif constructs
             for standard input cards (not for bio input).
           * Correct recording of activated C Pre-Processing options.
           * Add names for socket files.

      (21) iounits.h
           * Add names for socket files.

      (22) nest.h   (new)
           * New common block for socket nesting information.

      (23) ocean.F
           * Call new routine CHKPARM.
           * Call new routine HEADLN.
           * Include routine for initializing sockets.

      (24) oiassi.F
           * Update boundary relaxation fields.
           * Flush output buffers, if necessary.

      (25) param.h
           * Set dimension for volume storage for passed data.

      (26) pconst.h
           * Add new constant for 1/3.
           * Ensure correct precision for PI, RE & ROOT2.

      (27) pemodel.in
           * Boundary relaxation scales.
           * Add names for socket files.

      (28) pe_netcdf.h
           * Add output file status flags.

      (29) readgrids.F
           * Only access double sigma parameters when option DBLSIGMA is active.
           * Correct erroneous RCODE test when reading ZREF and TBATH
             (use to fail if RCODE was 0).
           * Change name of variable DBLSIGMA to not conflict with
             same named pre-processing option.

      (30) relax.F
           * correct call to SHAP_LEV for transport streamfunction.
           * Implement boundary relaxation forcing terms.

      (31) rmblklines.FF   (new)
           * New program to remove C Pre-Processing blank lines when
             compiling codes.

      (32) runid.h
           * Move version data to new file VERSION.H.

      (33) set_brlx.F   (new)
           * New routine to initialize boundary relaxation factors.

      (34) sock_init.F   (new)
           * New routine to initialize sockets.

      (35) sock_interior.F   (new)
           * New routine to pass 3D interior data through sockets.

      (36) sock_link.C   (new)
           * New routine to link to a socket for two-way nesting.

      (37) sock_make.C   (new)
           * New routine to create a socket for two-way nesting.

      (38) sock_rec_bc.F   (new)
           * New routine to receive boundary conditions via sockets.

      (39) sock_snd_bc.F   (new)
           * New routine to send boundary conditions via sockets.

      (40) sock_test.F   (new)
           * New routine to test sockets.

      (41) sock_ztc_bc.F   (new)
           * New routine to pass boundary conditions for barotropic vorticity.

      (42) step.F
           * Add calls to sockets two-way nesting routines.

      (43) tracer.F
           * Compute vertical velocities (not fluxes) at center of
             T-boxes.
           * Initialize boundary relaxation fields.
           * Implement boundary relaxation source terms.
           * Compute boundary relaxation balance terms.

      (44) tracksout.F
           * Use new version data.
           * Set netCDF output file status flag.

      (45) trkvscl.F
           * Correct call to routine BES1D.

      (46) version.h   (new)
           * New common block file to contain version information.

      (47) vertslabs.h
           * Separate common blocks for integer and floating point data.

      (48) workspa.h
           * Define arrays for boundary relaxation forcing terms.


 ***  July 31, 1996:

      Version 8.2:
      (1) boundary.F
           * Corrections to tracers bdy conditions iopt(1)=2.
           * iopt(4)=0 omitted.
           * added Orlanski bdy condition for transport iopt(4)=3.
      (2) infld.F
           * added call of msk_bdy if cpp coast option is enabled.
      (3)  inparm.F
           * correction to iopt messages.
      (4) ind_bdy.F (new)
           * to identify suitable nodes at coastal boundaries
             [called by robc].
      (5) msk_bdy.F (new)
           * mask land points in boundary arrays [called by infld]
      (6) ocean.F
           * correction within cpp  coast option.
           * added call to vertslab if anaflds is used.
      (7) okeep.F
           * new cpp option secondmean designed to remove
             mean of internal velocities after the Shapiro filter.
      (8) relax.F
           * correction within cpp coast option to ensure the
             domain of definition of the Poisson solver is precisely
             the proper interior points for the transport.
      (9) robc.F
           * Correction to vrobc_moi vrobc_roi entries
           * Implement zrobc_roi including adapting change of
             Transport along open coastal boundaries. 
           * Correction to probc_roi
       
 *** August 6, 1996:
 
      Version 8.3:

      (1) GNUmakefile.*
           * Consistent with coding changes.

      (2) bes2d.F
           * Prevent interpolation with masked points.

      (3) blkdat.F
           * Update version number and closing date.

      (4) clinic.F
           * New (consistent) momentum flux algorithm.

      (5) depthslab.F 
          * Metric terms for new flux algorithm.

      (6) extra.h   (new)
          * Extra slab of depth information.

      (7) hvgrid.F 
          * Metric terms for new flux algorithm.

      (8) nest.h 
          * Remove extraneous variables.

      (9) set_depths.F   (new).
          * Metric terms for new flux algorithm.

      (10) setvert.F 
          * Metric terms for new flux algorithm.

      (11) step.F
           * New (consistent) momentum flux algorithm.

      (12) sock_domain.F
           * Update space-check on storage variable XVOL.
           * Declare as local variables removed from NEST.H.

      (13) sock_interior.F
           * Recognize flagged values.
           * Only pass values with over half support in larger grid.

      (14) sock_init.F
           * Exchange flag values with other processes.

      (15) sock_rec_bc.F
           * Move interpolations to sending process.
           * Recognize flagged values.

      (16) sock_snd_bc.F
           * Move interpolations to sending process.
           * Recognize new call to coastal BES2D.

      (17) sock_ztc_bc.F
           * Move interpolations to sending process.
           * Recognize new call to coastal BES2D.
           * Recognize flagged values.

      (18) vertical.h   (new)
          * Re-averaged topographies (for new flux algorithm).


 *** December 19, 1996:
 
      Version 8.4:

      (1) GNUmakefile.*
           * Change "vaxdate" to "decdate".
           * Ensure output of cpp is directed to local directory.
           * Add rmblklines to items deleted by clean.
           * Protect against GNU make aborts from ill-defined vpaths (includes)
           * Remove concatenation option.
           * Consistent with coding changes.

      (2) GNUmakefile.alpha
           * "-Ddecdate" added to default CPPFLAGS.
           * "-O4" added to default FFLAGS.

      (3) GNUmakefile.rs6000
           * Compilier option to increase memory limit.

      (4) GNUmakefile.sun4
           * "-O" added to default FFLAGS.

      (5) *.com
           * Change vaxdate to decdate
           * Consistent with code changes.

      (6) Dead_File
           * Add BUPDATE.F.

      (7) anaflds.F
           * Remove extraneous declarations of TGRID and VGRID.

      (8) bdryindx.F
           * Identify coastal boundary nodes and averaging indices.
           * Call to SET_BRLX after resetting LANDV.

      (9) bes2d.F
           * Separate masked and unmasked interpolation.

      (10) bes2d_msk.F   (new)
           * New routine for masked Bessel interpolation.

      (11) biosource.F
           * Remove unused variable.
           * Protect sinking rates in barotropic modes.

      (12) blkdat.F
           * Update version number and closing date.
           * Initialize netCDF flags for pressure gradient bias file.

      (13) bndyrlx.h
           * Add fields for coastal friction and bottom friction.

      (14) cdiag.h
           * Update for coastal & bottom friction.

      (15) clinic.F
           * Add coastal & bottom friction.
           * Save barotropic velocities at row J-1.
           * Compute barotropic velocities at row J, for boundary conditions.
           * Account for pressure gradient bias.

      (16) defbias.F   (new)
           * New routine to create pressure bias I/O netCDF file.

      (17) defnrg.F
           * Expand boundary relaxation energy terms to include
             coastal & bottom frictions.
           * Correct variable ID for tracer balance attribute for
             boundary relaxation (coastal & bottom friction do NOT apply).
             (similar error in almost all of these added attributes).

      (18) defout.F
           * Record coastal & bottom friction parameters.

      (19) drifters.F
           * Move initialization to BLKDAT.
           * Correct call to TRACKSOUT.

      (20) edges.h   (new)
           * New block for averaging indices next to coast lines.

      (21) exitus.F
           * Close netCDF pressure gradient bias file, if present.

      (22) extrap.F
           * Set for no gradients when no good data available.

      (23) get_date.F
           * Change "vaxdate" to "decdate".
           * Protect against misnavigation of blank date string.

      (24) grad24_p.F
           * Block unused variable when barotropic option is on.

      (25) ip2ij.F   (new)
           * New routine to decode ip=i+(j-1)*im type index.

      (26) ind_bdy.F
           * Correctly handle islands.

      (27) inparm.F
           * Remove unused variable.
           * Correct format statements.
           * Read file name for pressure bias fields.
           * Read parameters for coastal & bottom friction.
           * Record coastal & bottom friction options in log file.
           * Remove CPP flag SPLINTRP.

      (28) iounits.h
           * Add file name for pressure bias fields.

      (29) meanrho.F
           * Remove CPP flag SPLINTRP.

      (30) nest.h
           * Change parameter ITT_FAC to type integer.

      (31) ocean.F
           * Include call to initialize boundary relaxation coefficients.
           * Move call to SET_BRLX to BDRYINDX.

      (32) oiassi.F
           * Move variable IP1 to enclosed by -Dbndy_rlx.
           * Write statements indicating assimilation taking place to log file.
           * Correct format statement 903

      (33) onedim.h
           * Add slab storage for barotropic velocity components.

      (34) pb0wrtcdf.F   (new)
           * New routine to write pressure gradient bias fields to netCDF file.

      (35) press_bias.F   (new)
           * New routine to remove pressure gradient bias.

      (36) press_bias0.F   (new)
           * New routine to set up pressure gradient bias fields.

      (37) pemodel.in
           * Add file name for pressure gradient bias fields.
           * Add parameters for coastal & bottom friction.

      (38) pe_netcdf.h
           * Add netCDF flags for pressure gradient bias file.

      (39) readgrids.F
           * Correct format statements 901 and 903.

      (40) readvbc.F
           * Enable user to enter starting clock from outside.
           * Correct format statements 920, 940 and 950.

      (41) relax.F
           * Correct timestep in boundary relaxation during mixing timestep,
             line 191.
           * Only call shap_lev if cppflag "shapiro" is set.

      (42) robc.F
           * Rewrite Orlanski in terms of internal mode velocities.
           * Rework Orlanski transport vorticity boundary conditions.

      (43) set_brlx.F
           * Protect against long lines when double precision is turned on.
           * LANDV is now binary: 0=land  km=sea.
           * Compute coefficients for coastal & bottom friction.

      (44) set_depths.F
           * Block unexecuted loop when barotropic option is on.
           * Correct cyclic boundary conditions

      (45) set_edges.F   (new)
           * New routine to average values next to coastal segments.

      (46) setvbc.F
           * Enable user to enter starting clock from outside.

      (47) shap_lev.F
           * Make inner (segment) loops a little more obvious.

      (48) shap_mean.F   (new)
           * New routine for adding/removing mean? tracer fields.

      (49) sock_domain.F
           * Block unused variables.

      (50) sock_intit.F
           * Correct format statement 900.

      (51) sock_interior.F
           * Reversed order of nested loop 10 and nested loop 20.
           * Corrected misnavigation of pointer XIP in loops 30 & 40.
           * Change name of input parameter from ITT to NTSTEP to avoid
             conflict with common blocks (small domain w/ coasts)

      (52) sock_make.C
           * Remove extra argument in argument list.

      (53) sock_snd_bc.F
           * Remove extraneous calls to BES2D.
           * Change incorrect pointer J_S to I_S in lines 127, 129, 141 & 143.
           * Do not use masking when interpolating transport streamfunction.
           * New calls to BES2D_MSK.
           * Block unused variables during null test.

      (54) sock_ztc_bc.F
           * New calls to BES2D_MSK.
           * Change incorrect pointer J to I in loops 70 & 80.
           * Block unused variables during null test.
           * Correct format statement 900.

      (55) spline.F
           * Move work array to argument list.

      (56) step.F
           * Option -Dclose_tracers to "correctly close" N + S boundaries.
           * Option -Dnocfl to disable CFL checking for debugging.
           * Compute barotropic velocities at row J=1.
           * Add transport vorticity Orlanski boundary condition.
           * Allow for removal of mean tracer field before Shapiro filtering.
           * Allow for averaging of tracers next to coastal segments.
           * Remove calls to BUPDATE.

      (57) tracer.F
           * Correctly block out convective adjustment when barotropic
             option is on.

      (58) upbox.F   (new)
           * New routine to determine indices for averaging next to coastlines.

      (59) voldat.h
           * Storage array for mean? tracer fields

      (60) vmix_aux.F
           * For constant mixed layer depth, get mixed layer depth for
             tracers from MLDMIN and mld for velocity from MLDMAX rather
             than getting both from MLDVAL.

      (61) workspa.h
           * Update for coastal & bottom friction.

      (62) xtrsubdom.F
           * Correct format statement 900.

      (63) xtr_trc.F
           * Block unexecuted loop when barotropic option is on.
           * Block unused variables when barotropic option is on.

      (64) xtr_vel.F
           * Block unexecuted loop when barotropic option is on.
           * Block unused variables when barotropic option is on.



 *** March 7, 1997:
 
      Version 9.1:

      (1) GNUmakefile.*
           * Consistent with coding changes.
           * Make sure all CPP options are documented.

      (2) GNUmakefile.sun5   (new)
           * New GNUmakefile for SUN Ultra systems.

      (3) anaflds.F
           * Correct subscripts for HR in loop 110.

      (4) blkdat.F
           * Add initializations for profile sampling.
           * Update version data.

      (5) caldate.F   (new)
           * New routine to convert Julian date to a date & time string.

      (6) check_prf.F   (new)
           * New routine to determine when to write a profile.

      (7) clinic.F
           * Add CPP option "linear_physics".
           * Replace bottom friction with "bottom steering".
           * Make implicit boundary relaxation an option, not the standard.

      (8) defbias.F
           * Correct definitions of netCDF variables "press_bias" &
             "tracer_mean".

      (9) depthslab.F
           * Remove improper use of CPP option "rmcomments".

      (10) frecv.C
           * Move include file directory info to GNUmakefiles.

      (11) fsend.C
           * Move include file directory info to GNUmakefiles.

      (12) gregorian.F   (new)
           * New routine to convert Julian date to Gregorian date.

      (13) hydro.h   (new)
           * New common block for profile data.

      (14) infld.F
           * Remove improper use of CPP option "rmcomments".

      (15) inparm.F
           * Replace improper CPP option "notadvh" with "notadvt".
           * Replace CPP option "diagini" with "frozentrc".
           * Correct descriptions of CPP options "notadvm" & "notadvt".
           * Add CPP option "linear_physics".
           * Report all active CPP options.
           * Add additional input for profile sampling I/O files.
           * Report input/output files for pressure gradient bias & profile
             sampling.
           * Add CPP option "vel_conv".
           * Report status of IOPT(5).

      (16) iounits.h
           * Add unit numbers and file names for profile sampling.

      (17) ocean.F
           * Add optional call to profile sampling initialization.

      (18) oiassi.F
           * Use IOPT(5) to control verbosity of "diagnostic" log output.

      (19) options.h
           * Use IOPT(5) to control verbosity of "diagnostic" log output.

      (20) param.h
           * Add array sizes for profile sampling.

      (21) pconst.h
           * Add flag for barotropic vorticity for shapiro filter.

      (22) pemodel.in
           * Correct default values for "MLDMIN" & "MLDMAX".
           * Change default value for "NTDGN".
           * Correct documentation.
           * Add I/O file names for profile sampling.
           * Use IOPT(5) to control verbosity of "diagnostic" log output.

      (23) press_bias0.F
           * Correct writing of mean TS field.

      (24) prf.h   (new)
           * New common block for profile sampling data.

      (25) readprf.F   (new)
           * New routine to initialize profile sampling.

      (26) relax.F
           * Make implicit boundary relaxation an option, not the standard.
           * Add CPP option "vel_conv", requires convergence in barotropic
             velocity tendencies.

      (27) rem_llist.F   (new)
           * New routine to remove element from linked list.

      (28) robc.F
           * Remove improper use of CPP option "rmcomments".

      (29) set_brlx.F
           * Protect occasionally used variables under CPP options.

      (30) set_depths.F
           * Under CPP option "cyclic", reverse order of loops 100 & 110.

      (31) shap_lev.F
           * Add special boundary conditions for filter barotropic vorticity.

      (32) sock_init.F
           * Use IOPT(5) to control verbosity of "diagnostic" log output.

      (33) sock_interior.F
           * Use IOPT(5) to control verbosity of "diagnostic" log output.

      (34) sock_link.C
           * Move include file directory info to GNUmakefiles.

      (35) sock_make.C
           * Move include file directory info to GNUmakefiles.
           * Use IOPT(5) to control verbosity of "diagnostic" log output.

      (36) sock_rec_bc.F
           * Use IOPT(5) to control verbosity of "diagnostic" log output.

      (37) sock_snd_bc.F
           * Use IOPT(5) to control verbosity of "diagnostic" log output.

      (38) sock_ztd_bc.F   (new)
           * New routine to replace misnamed sock_ztc_bc.F
           * Change type of variable ITT_FAC when passing to SOCK_TEST.
           * Use IOPT(5) to control verbosity of "diagnostic" log output.

      (39) step.F
           * Add optional calls to profile sampling routines.

      (40) tracer.F
           * Add CPP option "linear_physics".
           * Change test criterion for frozen tracers.
           * Make implicit boundary relaxation an option, not the standard.

      (41) vbar_test.F   (new)
           * New function to test barotropic velocity tendency convergence.

      (42) vertical.h
           * Replace improper CPP option "rmcomments" with "rmdocinc".

      (43) writehydro.F   (new)
           * New routine to write a cast in MODS ASCII format.

      (44) wrt_prf.F   (new)
           * New routine to extract cast for writing.

      (45) wrtstr.F   (new)
           * New routine to write a string to the MODS format header array.


 *** October 25, 1997:
 
      Version 9.2:

      (1) GNUmakefile.*
           * Consistent with coding changes.

      (2) assiwght.F
           * Allow for writing of forecast error fields.

      (3) blkdat.F
           * Update version data.
           * Allow for writing of forecast error fields.
           * For peprf, initialize Julian day offset.

      (4) cdefs.h
           * Add tokens for complex vs double complex.

      (5) cdfout.F
           * Allow for writing of forecast error fields.

      (6) cdiag.h
           * Add point by point tracer balance reporting.

      (7) clinic.F
           * Improve ease of adding optional energy terms.

      (8) defnrg.F
           * Make sure all time dependent fields have the attributes
             "_FillValue" and "missing_value".
           * Improve ease of documenting optional terms.
           * Add point by point tracer balance reporting.

      (9) defout.F
           * Make sure all time dependent fields have the attributes
             "_FillValue" and "missing_value".
           * Add point by point tracer balance reporting (write positions).
           * Allow for writing of forecast error fields.

      (10) diag.F
           * Add point by point tracer balance reporting.

      (11) hvgrid.F
           * Correct some non-standard printing statements.

      (12) ioi.h
           * Allow for writing of forecast error fields.

      (13) length.F   (new)
           * New, non-destructive routine to get starting & ending pointers to
             the non-blank portions of a string.

      (14) options.h
           * Add point by point tracer balance reporting.
           * Allow for writing of forecast error fields.

      (15) pe_netcfd.h
           * Add point by point tracer balance reporting.
           * Allow for writing of forecast error fields.

      (16) pemodel.in
           * Add point by point tracer balance reporting.
           * Allow for writing of forecast error fields.

      (17) ppmix.F
           * Correction to safely handle regions with small vertical shear.

      (18) press_bias0.F
           * Correctly write out tracer fields at slabs 1, JMTM1 & JMT(?).

      (19) setvbc.F
           * Correctly scale point source E-P.

      (20) tracer.F
           * Improve ease of adding optional balance terms.
           * Add point by point tracer balance reporting.

      (21) vmix_aux.F
           * Generalize computation of vertical gradient of potential density.
           * Fill inactive points in mixed-layer array for MLDOPT=2
             (for plotting purposes).

      (22) writehydro.F
           * Use variable Julian day offset.
           * Add buffer flushing.

      (23) wrtcdf.F
           * Allow for writing of forecast error fields.

      (24) wrtstr.F
           * Use nondestructive "length" instead of "lnblk".


 *** July 20, 1998:
 
      Version 9.3:

      (1) GNUmakefile.*
           * Consistent with coding changes.
           * Don't assume "." is in user's path (when using rmblklines)
           * Corrected IRIS (Silicon Graphics) makefile.
           * Improve alternate path search (don't confuse partial matches).
           * Don't supply netcdf.inc  (allows user to specify correct version)

      (2) bess1d.F   (new)
           * New 1D interpolation routine for nesting (get collocation right).

      (3) bess2d.F   (new)
           * New 2D interpolation routine for nesting (get collocation right).

      (4) bess2d_msk.F   (new)
           * New 2D interpolation routine for nesting with masks.

      (5) blkdat.F
           * Update version data.
           * Allow shifted grids.
           * Set default REFZ close to values in MassBay example.

      (6) boundary.F
           * For S-bndy cond. of Orlanski on tracers, correct routine call.

      (7) ccfl.h
           * Allow checking of both WU and WT.

      (8) cdiag.h
           * Remove metric advection terms (not correct for integral
             based discretization).

      (9) cfl.F
           * Add CPP option to enable CFL checking in the vertical.
           * Allow checking of both WU and WT.

      (10) clinic.F
           * Remove metric advection terms (not correct for integral
             based discretization).

      (11) defnrg.F
           * Allow shifted grids.
           * Remove metric advection terms (not correct for integral
             based discretization).

      (12) defout.F
           * Allow shifted grids.

      (13) derivs0.F
           * Remove unnessecary dependency on moddat.h.

      (14) diag.F
           * Allow checking of both WU and WT.

      (15) drifters.F
           * Allow shifted grids.

      (16) get_date.F
           * Allow AIX (IBM RS6000) date.

      (17) gradp4.h
           * Correct indexing on cosine metric factors.

      (18) gradph4.h
           * Correct indexing on cosine metric factors.

      (19) hvgrid.F
           * Allow shifted grids.
           * Remove metric advection terms (not correct for integral
             based discretization).

      (20) infld.F
           * Allow shifted grids.

      (21) inparm.F
           * Add CPP option to enable CFL checking in the vertical.
           * Protect against line overrun in double precision mode.

      (22) ll2xy.F
           * Allow shifted grids.

      (23) moddat.h
           * Allow shifted grids.

      (24) onedim.h
           * Remove metric advection terms (not correct for integral
             based discretization).

      (25) readgrids.F
           * Allow shifted grids.

      (26) readprf.F
           * Correct determination of (lat/lon) extrema.
           * Allow shifted grids.

      (27) robc.F
           * Remove extraneous factors of 2.

      (28) shap_lev.F
           * Test for starting indices greater than or equal to ending,
             not just equal.

      (29) sock_domain.F
           * Allow shifted grids.

      (30) sock_interior.F
           * Remove unpaired quotation mark.
           * Correct indexing on xvol.

      (31) sock_snd_bc.F
           * Ensure collocated interpolation.
           * Use latest attempt to nest with masks.

      (32) sock_ztd_bc.F
           * Remove unpaired quotation mark.
           * Ensure collocated interpolation.
           * Use latest attempt to nest with masks.

      (33) step.F
           * Ensure proper vertical slabs active when setting S-bndy cond.
           * Mask external part of meridional momentum flux at slab 2.

      (34) tracer.F
           * Correct compound #if argument.

      (35) tracksout.F
           * Allow shifted grids.

      (36) userdiag.F
           * Remove unpaired quotation mark.

      (37) vmix_aux.F
           * Correctly nest parameter statement in #ifdef.

      (38) workspa.h
           * Remove metric advection terms (not correct for integral
             based discretization).

      (39) xtr_psi.F
           * Allow shifted grids.

      (40) xtr_trc.F
           * Allow shifted grids.

      (41) xtr_vel.F
           * Allow shifted grids.

      (42) xtr_vor.F
           * Allow shifted grids.

      (43) xy2ll.F
           * Allow shifted grids.


 *** August 15, 2000:
 
      Version 9.4:

      (1) GNUmakefile.*
           * Consistent with current changes.
           * Now designed to fail if an invalid CPP option is requested.

      (2) VMSmakefile.com
           * Consistent with current changes.

      (3) addtide.F   (new)
           * New routine to add external tides.

      (4) all_uc.F   (new)
           * New routine to set all letters in a string to capital letters.

      (5) anaflds.F
           * Add Dusenberry biological model.

      (6) aphread.F   (new)
           * New routine to read in values of the absorption coefficients.

      (7) aphy.dat   (new)
           * New sample data file of the absorption coefficients.

      (8) bdryindx.F
           * If nesting w/land, set-up transport streamfunction mask.
           * Revised filter BCs.

      (9) bess2d_msk.F
           * Add pressure gradient algorithm to ensure interior
             4 points correctly filled.
           * Use flag value if none of 4 center points is valid.
           * Clean-up internal documentation.

     (10) bess2d_pmsk.F   (new)
           * New routine to Bessel interpolate transport streamfunction
             in the presence of a land mask.

     (11) bio*.in
           * Revise biological I/O flags.

     (12) bio*Cod.in   (new)
           * New biological parameter input file for use with attached
             cod model.

     (13) bioDuse*.in   (new)
           * New sample input for Dusenberry biological model parameters.
             with and without attached cod model.

     (14) bioparm*.F   (new)
           * New routines to read biological model parameters for various
             biological models.
           * Add attached cod model.

     (15) biosource*.F   (new)
           * New routines to compute biological source terms for various
             biological models.
           * Add attached cod model.

     (16) blkdat.F
           * Set unit number for pre-defining tidally active regions.
           * Remove obsolete I/O unit CSTINP.
           * Convert from sockets to PVM.
           * Add Dusenberry biological model.
           * Add attached cod model.

     (17) cbiopnh.h
           * Add Dusenberry biological model.
           * Add attached cod model.

     (18) cdfout.F
           * Add tidal velocity to total velocity.
           * Write tidal velocity, surface elevation and residual stress.
           * Reset IOUT consistent with new definitions.
           * Add Dusenberry biological model.

     (19) cdrspv.F   (new)
           * New routine to compute cod response velocity.

     (20) cell_ok.F   (new)
           * New routine to determine if Bessel interpolation footprint is
             all valid.

     (21) cfl.F
           * Add tidal velocity to CFL tests.

     (22) chkparm.F
           * Add Dusenberry biological model.

     (23) cinpvbc.h
           * Add Dusenberry biological model.

     (24) clinic.F
           * Change bottom/coastal friction from nudging to -Ubaro to
             nudging towards zero.
           * Revised time discretization in bottom stress algorithm
           * Quicker by-pass for biological adjustment
           * Use sum of vertical thickness for averaging velocities.

     (25) cnvmix.F
           * Perform rolling & initialization of DRHO & DRHOP.
           * move division of density gradient by dz to PDENVGRAD

     (26) ctsrc.h
           * Revised tracer points sources for river relaxation.

     (27) cvbc.h
           * Revised time discretization in bottom stress algorithm

     (28) cvmix.h
           * Add tidal mixing model parameters.

     (29) defbparm*.F   (new)
           * New routines to define biological model parameters for various
             biological models.
           * Add attached cod model.

     (30) defnrg.F
           * Correct attribute name for KE_TERMS (09 -> TERM09).
           * Correct documentation on LANDV values
           * Reset IOUT consistent with new definitions.
           * Add Dusenberry biological model.

     (31) defout.F
           * Define tidal velocity, surface elevation and residual stress.
           * Correct documentation on LANDV values
           * Reset IOUT consistent with new definitions.
           * Consistent with changes to GET_THICK.
           * Record model thicknesses
           * Add Dusenberry biological model.

     (32) derivs0.F
           * Allow extended surface drifters  (dead whales).
           * Add tidal velocities.

     (33) diag.F
           * Reset IOUT consistent with new definitions.

     (34) drftdv.F   (new)
           * New routine to add tidal velocities.

     (35) drifters.F
           * Add auxiliary data field.
           * Allow extended surface drifters  (dead whales).
           * Update diagnostic printing (format 907)

     (36) errio.F  (new)
           * New routine to report on read/write errors.

     (37) exitus.F
           * Close external tidal netCDF data file.
           * Exit from PVM, if necessary.
           * Close ASCII I/O files.
           * Add Dusenberry biological model.

     (38) extrap.F
           * Move 2nd order extrapolation to subroutine.

     (39) extrap2.F  (new)
           * New routine to compute 2nd order extrapolation.

     (40) file_chk.F  (new)
           * New routine to check the validity of file names.

     (41) fullwd.h
           * Add transport streamfunction mask.
           * Allow input of non-integer reset starting Julian dates.
           * Revised filter BCs.

     (42) get_date.F
           * Set for new century marker.

     (43) get_thick.F
           * Allow construction of depths from box thicknesses.

     (44) grad24_p.F
           * Correct extraction of Northern most row of tracer data.

     (45) gradp4.h
           * Correct the correction to indexing CSTR.

     (46) hopsrecv.h   (new)
           * New routine, a front-end for PVM's timed receive.

     (47) host_check.h   (new)
           * New routine to check validity of requested host.

     (48) hvgrid.F
           * Allow defining of V-grid topography & interface external to PE.

     (49) hybrid.h
           * Allow defining of V-grid topography & interface external to PE.

     (50) infld.F
           * Allow defining of V-grid topography & interface external to PE.

     (51) inittdpth.F  (new)
           * New routine to initialize tidally active zones for
             CPP option "posmxtid".

     (52) inparm.F
           * Read Niiler-Kraus MCOEF and NCOEF.
           * Allow nesting of models w/ different numbers of tracer variables.
           * Read in external tidal mixing model parameters.
           * Input external tidal netCDF data file name.
           * Allow input of non-integer reset starting Julian dates.
           * Convert from sockets to PVM.
           * Add Dusenberry biological model.
           * Add attached cod model.

     (53) invtri.F
           * Revised time discretization in bottom stress algorithm

     (54) iounits.h
           * Add I/O name & units for pre-defining tidally active regions.
           * NetCDF id & status flag for external tide data file.
           * Convert from sockets to PVM.
           * Remove obsolete I/O unit CSTINP.

     (55) lagrange.dat
           * Add auxiliary data field.
           * Allow extended surface drifters  (dead whales).

     (56) landsea.F
           * Actually read JEIS not IEIS twice.

     (57) length.F
           * Exclude leading & trailing unprinted ASCII characters.

     (58) lintrp.F
           * Use constant extrapolation as in PE_initial version.

     (59) nest.h
           * Reset valid number of averaging nodes to pass interior corners
             in masks (ie 4 active points in 3x scaling).
           * Option to replace fine transport with coarse.
           * Convert from sockets to PVM.

     (60) nest_domain.F  (new)
           * PVM replacement for SOCK_DOMAIN.
           * Option to replace fine transport with coarse.

     (61) nest_errchk.F  (new)
           * New routine to report on PVM errors.

     (62) nest_flags.F  (new)
           * New routine to exchange flag values using PVM.  A partial
             replacement for SOCK_INIT.
           * Allow nesting of models w/ different numbers of tracer variables.

     (63) nest_init.F  (new)
           * New routine enroll process in PVM.  A partial replacement for
             SOCK_INIT.

     (64) nest_interior.F  (new)
           * PVM replacement for SOCK_INTERIOR.
           * Reset valid number of averaging nodes to pass interior corners
             in masks (ie 4 active points in 3x scaling).
           * Allow nesting of models w/ different numbers of tracer variables.

     (65) nest_rec_bc.F  (new)
           * PVM replacement for SOCK_REC_BC.
           * Address PO array with pre-defined NORTH, SOUTH, EAST, WEST
             parameters.
           * Optional insurance of zero vertical mean of passed baroclinic
             velocity boundary conditions
           * Allow user control on number of tracers passed.
           * Option to receive barotropic vorticity tendency boundary conditions
             at same time as receive other boundary conditions.
           * Option to replace fine transport with coarse.

     (66) nest_snd_bc.F  (new)
           * PVM replacement for SOCK_SND_BC.
           * Special interpolation "under the mask" for transport streamfunction
           * Optional insurance of zero vertical mean of passed baroclinic
             velocity boundary conditions
           * Allow user control on number of tracers passed.
           * Revise masked interpolation to flag points under the mask
           * Option to pass barotropic vorticity tendency boundary conditions
             at same time as pass other boundary conditions.

     (67) nest_spawn.F  (new)
           * New routine spawn a new process in PVM.  A partial replacement for
             SOCK_INIT.

     (68) nest_t_align.F   (new)
           * New routine to ensure alignment of times during nesting transfers.

     (69) nest_test.F  (new)
           * PVM replacement for SOCK_TEST.

     (70) no_digit.F  (new)
           * New function to determine the number of digits of an integer.

     (71) ocean.F
           * Convert from sockets to PVM.

     (72) okeep.F
           * Add optional Asselin filter

     (73) options.h
           * Document changes to IOUT.

     (74) param.h
           * Add dimension for number of external tidal components
           * Add maximum number of tidally active zones for CPP option
             "posmxtid".
           * Option to replace fine transport with coarse.
           * Add Dusenberry biological model.
           * Add attached cod model.

     (75) pconst.h
           * Additional constants.

     (76) pe_netcdf.h
           * Add identifiers for external tidal fields
           * Allow extended surface drifters  (dead whales).
           * Remove drifter time dimension index.

     (77) pemodel.in
           * Add Niiler-Kraus MCOEF and NCOEF.
           * Allow nesting of models w/ different numbers of tracer variables.
           * Add external tidal mixing model parameters.
           * Allow input of external tidal data file.
           * Add switches to write external tidal fields.
           * Allow input of non-integer reset starting Julian dates.
           * Convert from sockets to PVM.

     (78) ppmix.F
           * Perform rolling of DRHO & DRHOP.
           * move division of density gradient by dz to PDENVGRAD
           * revise implementation of Richardson Number calculation.

     (79) press_bias.F
           * Look for new shapmean fields in initialization file.

     (80) press_bias0.F
           * Correct extraction of Northern most row of tracer data.

     (81) priprod.F   (new)
           * New routine to compute the primary productivity.

     (82) putbparm*.F   (new)
           * New routines to write biological model parameters for various
             biological models.
           * Add attached cod model.

     (83) read_tide.F   (new)
           * New routine to read external tide data.

     (84) readprf.F
           * Allow input of non-integer reset starting Julian dates.

     (85) readvbc.F
           * Allow input of non-integer reset starting Julian dates.
           * Add Dusenberry biological model.

     (86) relax.F
           * Fix line data output format.

     (87) reset_t_thickness.F   (new)
           * New routine to reset T-grid thickness for tidal tracer advection.

     (88) rich_no.F   (new)
           * New routine to compute Richardson Number.

     (89) robc.F
           * Only fix transport streamfunction values along exterior coasts.
           * Use sum of vertical thickness for averaging velocities.
           * Reset baroclinicity after setting corner points.  Also reset
             baroclinicity on corner points.

     (90) scalvcln.F   (new)
           * New routine to scale baroclinic velocities by box thicknesses
             before passing to another nested domain.

     (91) set_brlx.F
           * Revised CPP options to avoid unused variables

     (92) set_depths.F
           * Define V-grid topography & interface external to PE.
           * Construct depths from box thicknesses.
           * Sum V-grid thicknesses to form "topography" for velocity averaging.

     (93) set_depths_old.F   (new)
           * New file to retain old SET_DEPTHS algorithm.
           * Retain V-grid topography for velocity averaging.

     (94) set_pmask.F   (new)
           * New routine to define transport streamfunction mask.

     (95) setvbc.F
           * Revised time discretization in bottom stress algorithm
           * Allow input of non-integer reset starting Julian dates.
           * Add Dusenberry biological model.

     (96) setvert.F
           * Consistent with changes to GET_THICK.

     (97) shap_lev.F
           * Revised filter BCs.

     (98) step.F
           * Optional external tidal model.
           * Revised temporal alignment during nesting.
           * Option to transfer barotropic vorticity tendency boundary
             conditions at same time as transfer other boundary conditions.
           * Option to replace fine transport with coarse.
           * Add optional Asselin filter
           * Quicker by-pass of relaxation calculation for biological adjustment
           * Convert from sockets to PVM.
           * When setting northern boundary conditions, use j=JMTM1 not JMTM2.
           * Add Dusenberry biological model.
           * Add attached cod model.
           * Add optional special Shapiro filtering of cod

     (99) tid_indx.F  (new)
           * New routine to match tidal component to working storage.

    (100) tide_aux.F  (new)
           * New routine to handle auxiliary tide I/O functions.

    (101) tide_depth.F  (new)
           * New function to determine flag depth of water column for
             tidally enhanced vertical mixing.

    (102) tide_val.F  (new)
           * New function to compute tidally enhanced vertical mixing.

    (103) tidebox.dat  (new)
           * New sample data file for tidally enhancing mixing coefficients
             based on geography and total water depth.

    (104) tidephase.dat  (new)
           * New sample data file for tidal phase data.

    (105) tidesp.h   (new)
           * New work space for external tidal variables.

    (106) tracer.F
           * Revised time discretization in bottom stress algorithm
           * Add Dusenberry biological model.
           * Add attached cod model.

    (107) tracks.h
           * Allow extended surface drifters  (dead whales).

    (108) tracksout.F
           * Allow extended surface drifters  (dead whales).
           * Replace calls to LNBLK by calls to LENGTH.
           * Compact the netCDF file, each drifter has its own
             time index.
           * Only print drifter information for status=1.
             (ie. drifter deployed & within domain)
           * Add Dusenberry biological model (run documentation).

    (109) trackstep.F
           * Allow extended surface drifters  (dead whales).

    (110) trkscl.h
           * Allow extended surface drifters  (dead whales).

    (111) tsource.F
           * Move initialization to zero to tracers.F
           * Replace with river source code.

    (112) tsource_river.dat   (new)
           * New sample data file for point tracer sources for river relaxation.

    (113) userdiag.F
           * Create optional section to use SUN timing data.

    (114) vavgv.F   (new)
           * New routine to vertically average velocities.

    (115) vertical.h
           * Maintain 3D structure of box thicknesses.

    (116) vertslabs.h
           * Maintain separate "V-grid topography" for averaging velocities.

    (117) vmix_aux.F
           * Change the protection against division by zero in Niiler-Kraus.
           * All mixed layer models ALWAYS enhance mixing in top level.
           * Update mixing coefficients based on tidal velocities.
           * Remove rolling of DRHO & DRHOP.
           * do division of density gradient by dz in entry PDENVGRAD

    (118) vntrpv.F   (new)
           * New routine to vertically interpolate velocities.

    (119) workspr.h   (new)
           * New common block for Asselin filter.

    (120) wrt_prf.F
           * Allow input of non-integer reset starting Julian dates.

    (121) wrtcdf.F
           * Write tidal velocity and surface elevation.


 *** January 11, 2001:
 
      Version 9.5:

      (1) GNUmakefile.*
           * Consistent with current changes.
           * Correct CPP criteria for activating julian date code.

      (2) *.com
           * Consistent with current changes.

      (3) anaflds.F
           * Move comment ??? to right in statements where "FLoaT" can
             become "dble".
           * Move DATA statement after SAVE statement (ANSI compatibility).
           * Add missing comma in referencing HR for cyclic conditions.
           * Add working variable WSNKPHY2 for CPP option "bioDuse".

      (4) assiwght.F
           * Optional revisions for managing assimilation error fields.

      (5) bess2d_msk.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (6) biosourceDuse.F
           * Correct CPP criteria for including common block "onedim".
           * Correct fatal typos.

      (7) blkdat.F
           * Update version data.
           * Optional revisions for managing assimilation error fields.

      (8) bdryindx.F
           * Apply coastedge averaging on first points.
           * Only use interior points for averaging.

      (9) boundary.F
           * Replace tabulation characters with spaces (ANSI compatibility).

      (10) cbiopnh.h
           * Correct CPP criteria for defining cod variables.

      (11) ccfl.h
           * Tighten CFL test.

      (12) cdfout.F
           * Add external velocity to identification procedure for 2D fields.

      (13) cfl.F
           * Correct reporting of CFL statistics.
           * Tighten CFL test.
           * Create optional CFL test on sum of limitations.

      (14) check_prf.F
           * Replace tabulation characters with spaces (ANSI compatibility).

      (15) clinic.F
           * Replace tabulation characters with spaces (ANSI compatibility).
           * Correct CPP criteria for defining most variables.

      (16) ctsrc.h
           * Remove local variable "kmsrc" from common area.

      (17) defnrg.F
           * Add external velocity to identification procedure for 2D fields.

      (18) defout.F
           * Make CPP option "gridavg" the default behavior.  Introduce new
             CPP option "gridold" to recover old algorithm.
           * Add external velocity to identification procedure for 2D fields.

      (19) depthlev.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (20) derivs0.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (21) diag.F
           * Move DATA statement after SAVE statement (ANSI compatibility).
           * Add external velocity to identification procedure for 2D fields.

      (22) fsigma.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (23) fullwdr.h
           * Enable setup of Asselin filter coefficient in pemodel.in  

      (24) get_thick.F
           * Make CPP option "gridavg" the default behavior.  Introduce new
             CPP option "gridold" to recover old algorithm.
           * Correct CPP criteria for defining variable "k".

      (25) grad24_p.F
           * Move DATA statements after SAVE statements (ANSI compatibility).

      (26) gregorian.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (27) hvgrid.F
           * Make CPP option "gridavg" the default behavior.  Introduce new
             CPP option "gridold" to recover old algorithm.

      (28) hybrid.h
           * Make CPP option "gridavg" the default behavior.  Introduce new
             CPP option "gridold" to recover old algorithm.

      (29) ind_bdy.F
           * Replace tabulation characters with spaces (ANSI compatibility).

      (30) infld.F
           * Make CPP option "gridavg" the default behavior.  Introduce new
             CPP option "gridold" to recover old algorithm.

      (31) inittdpth.F
           * Correct bad format statement.

      (32) inparm.F
           * Make CPP option "gridavg" the default behavior.  Introduce new
             CPP option "gridold" to recover old algorithm.
           * Enable setup of Asselin filter coefficient in pemodel.in
           * Correct CPP criteria for defining RESETJULIAN variables.
           * Add external velocity to identification procedure for 2D fields.

      (33) int_gradrho.F
           * Move DATA statements after SAVE statements (ANSI compatibility).

      (34) ioi.h
           * Optional revisions for managing assimilation error fields.

      (35) lap_filt.F
           * Move DATA statements after SAVE statements (ANSI compatibility).

      (36) ll2xy.F
           * Move DATA statements after SAVE statements (ANSI compatibility).

      (37) msk_bdy.F
           * Ensure correct indexing on UV points.

      (38) ocean.F
           * Replace tabulation character with spaces (ANSI compatibility).
           * Remove incorrect vertical mean from internal mode velocities after
             assimilation.

      (39) oi.dat
           * Add time decay rate for use with CPP option "fcsterr".

      (40) oiassi.F
           * Remove incorrect vertical mean from internal mode velocities after
             assimilation.
           * Optional revisions for managing assimilation error fields.

      (41) okeep.F
           * Enable setup of Asselin filter coefficient in pemodel.in

      (42) pe_netcdf.h
           * Add external velocity to identification procedure for 2D fields.

      (43) pemodel.in
           * Enable setup of Asselin filter coefficient in pemodel.in
           * Add external velocity to identification procedure for 2D fields.

      (44) ppmix.F
           * Replace tabulation characters with spaces (ANSI compatibility).

      (45) press_bias.F
           * Remove duplicate declaration of variables (ANSI compatibility).
           * Move DATA statement after SAVE statement (ANSI compatibility).
           * Correct CPP criteria for defining variable "new".

      (46) press_bias0.F
           * Remove duplicate declaration of variable (ANSI compatibility).
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (47) read_tide.F
           * Move DATA statement after EQUIVALENCE statement
             (ANSI compatibility).

      (48) readprf.F
           * Replace tabulation characters with spaces (ANSI compatibility).
           * Remove extraneous comma from format statement 910.

      (49) readvbc.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (50) relax.F
           * Revise indices for resetting residuals under mask in SOR.

      (51) rich_no.F
           * Remove duplicate declaration of variable (ANSI compatibility).
           * Replace tabulation characters with spaces (ANSI compatibility).

      (52) robc.F
           * Replace tabulation characters with spaces (ANSI compatibility).

      (53) rotangle.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (54) rseterr.F  (new)
           * New function to manage ramping by resetting observation errors.

      (55) set_depths.F
           * Move DATA statement after SAVE statement (ANSI compatibility).
           * Correct CPP criteria for defining variable "km1".

      (56) set_depths_old.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (57) setvbc.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (58) setvert.F
           * Make CPP option "gridavg" the default behavior.  Introduce new
             CPP option "gridold" to recover old algorithm.

      (59) shap_lev.F
           * Shapiro filter Vorticity out to boundary.
           * Replace tabulation characters with spaces (ANSI compatibility).

      (60) sigma2z.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (61) step.F
           * Define variable for ensuring positive bio-tracers in absence
             of Shapiro filter.
           * Renumber statement labels to avoid potential collisions.
           * Move DATA statement after all declarations (ANSI compatibility).

      (62) tide_aux.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (63) tide_depth.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (64) tracer.F
           * Avoid Leap-Frog/Euler jumping in line statistics.
           * Block CPP option "linear_physics" from vertically advecting
             mean tracer fields if biology is active.  Current coding only
             valid for 2 tracers (T&S).

      (65) tracksout.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (66) tsource.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (67) vbar_test.F
           * Added UBARO & VBARO as new "state" variables.

      (68) vertical.h
           * Make CPP option "gridavg" the default behavior.  Introduce new
             CPP option "gridold" to recover old algorithm.

      (69) vmix_aux.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (70) writehydro.F
           * Remove list-directed write to internal file (ANSI compatibility).
           * Remove very non-standard format (ANSI compatibility).

      (71) wrtcdf.F
           * Add external velocity to identification procedure for 2D fields.

      (72) wrt_prf.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (73) xtr_trc.F
           * Replace tabulation characters with spaces (ANSI compatibility).

      (74) xtrsubdom.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (75) xy2ll.F
           * Move DATA statement after SAVE statement (ANSI compatibility).

      (76) vbar_test.F
           * Change ubaro vbaro to ubtst vbtst respectively.


 *** August 21, 2001:
 
      Version 9.6:

      (1) GNUmakefile.*
           * Consistent with current changes.

      (2) *.com
           * Consistent with current changes.

      (3) assiwght.F
           * Eliminate CPP option WRTERR.

      (4) blkdat.F
           * Update version data.
           * Consistent with current changes.

      (5) ccfl.h
           * Eliminate parameter cflcrt.

      (6) cdfout.F
           * Eliminate CPP option WRTERR.

      (7) cfl.F
           * Retain reporting of individual components.
           * CPP option "nocfl" now computes CFL statistics but does not stop
             simulation.
           * Make "sumcfl" the default, remove its negation.
           * Make "wcfl" the default.  Retain its negation under the
             CPP option "nowcfl".

      (8) clinic.F
           * Refine timing probes.

      (9) defout.F
           * Eliminate CPP option WRTERR.

      (10) fullwd.h
           * Correct declaration of variables ISP and IEP.

      (11) inparm.F
           * Update CPP reports.

      (12) ioi.h
           * Eliminate CPP option WRTERR.

      (13) lintrp.F
           * Clean code & documentation.

      (14) nest.h
           * Codify message tags to improve ease of updating.

      (15) nest_domain.F
           * Codify message tags to improve ease of updating.

      (16) nest_flags.F
           * Codify message tags to improve ease of updating.

      (17) nest_init.F
           * Codify message tags to improve ease of updating.

      (18) nest_interior.F
           * Codify message tags to improve ease of updating.
           * Separately track timings for nesting communications
             proper and auxillary nesting calculations.
           * Avoid expensive use of SETVERT.

      (19) nest_rec_bc.F
           * Codify message tags to improve ease of updating.
           * Separately track timings for nesting communications
             proper and auxillary nesting calculations.
           * Avoid expensive use of SETVERT.

      (20) nest_snd_bc.F
           * Codify message tags to improve ease of updating.
           * Separately track timings for nesting communications
             proper and auxillary nesting calculations.

      (21) nest_spawn.F
           * Codify message tags to improve ease of updating.

      (22) nest_t_align.F
           * Separately track timings for nesting communications
             proper and auxillary nesting calculations.

      (23) nest_test.F
           * Codify message tags to improve ease of updating.

      (24) okeep.F
           * Ensure include file pconst.h is used whenever its needed.

      (25) options.h
           * Eliminate CPP option WRTERR.

      (26) pe_netcdf.h
           * Eliminate CPP option WRTERR.

      (27) pemodel.in
           * Eliminate CPP option WRTERR.

      (28) press_bias.F
           * Eliminate error messages when probing netCDF file.

      (29) robc.F
           * Correct "wave speed" estimates in Orlanski transport conditions.
           * Remove incorrect vertical means from baroclinic velocity estimates.

      (30) rseterr.F
           * Include simple ramping scheme.
           * Improve protection against singular cases.

      (31) scalvcln.F
           * Avoid expensive use of SETVERT.

      (32) splint.F
           * Use constant extrapolation.

      (33) step.F
           * CPP option "nocfl" now computes CFL statistics but does not stop
             simulation.
           * Preserve incidental data when setting southern boundary.
           * Ensure volume data exists for nesting & Asselin filter.
           * Refine timing probes.

      (34) tracer.F
           * Refine timing probes.

      (35) userdiag.F
           * Refine timing probes.

      (36) vmix_aux.F
           * Use MAX function to ensure that mixed-layer and convective
             coefficient adjustments never decrease the mixing coefficient.
           * Add more protections for CPP option BAROTROPIC

      (37) wrtcdf.F
           * Correct writing of barotropic velocities.
           * Eliminate CPP option WRTERR.
