FOAM Version History
History of FOAM 1.5 development
Notable events in FOAM 1.5
FOAM 1.5 was finalized on February 11, 2002.
Internally, the first version of FOAM1.5 was FOAM 1.5.8.
All version of FOAM 1.5 after version 1.5.8 produce bit-for-bit identical answers for a standard case
The simulations produced for a standard case, defined as:
- fully coupled
- restart run
- default (modern) values of orbital forcing and gas constants.
are identical (bit-for-bit) for all FOAM versions after 1.5.8.
Beginning with 1.5.8, FOAM was developed and distributed with a multi-directory source code structure. The last single-directory version of FOAM is equivalent to 1.5.8.
Other events:
- 1.5.20 - Data atmosphere capability added
- 1.5.32 - NetCDF output from coupler and ocean.
- 1.5.40 - NetCDF input by atmosphere.
- 1.5.41 - NetCDF output from atmosphere.
- 1.5.43 - Switch between initial/restart runs without recompiling.
- 1.5.44 - Ability to do an initial run without a coupler restart file.
Answer changes for non-standard cases
- 1.5.12 - Sea ice bug fixed for slab ocean experiments with fixed SST
- 1.5.50 - Sea ice initial temperature bug (in initial run) fixed.
Changes to history output
- 1.5.16 - Atmosphere history changed to add Z, VT, VZ, VQ, VVPUU, ALB, ALBCR, and PSL to default output. Remove CMFLQ, CMFSL, DQP, EFFCLD and TA01 from default output (still available as optional output).
- 1.5.18 - Ocean history output changed so avheat and avsalt includes sea-ice formation. Also change coupler history output so only positive meltp is recorded.
- 1.5.27 - Atmosphere output changed to add FSNTOA, FSNTOAC, LWCF, SWCF, FLUT, FLUTC, FSDS and FSDSC to default output. Also output RELHUM, PRECSL, and PRECSC by default. Change definition of FLNTC and FSNTC.
- 1.5.30 - optionally output atmosphere heat/momentum budget variables UQ, UT, UU, UV, UW, VW, VV, WQ, WT, and WW
Guide to Table
This table describes in brief what is different between versions of FOAM 1.5.
The strings under "Version" are CVS tags. They correspond simply to version numbers: F1_5_6 = FOAM 1.5.6.
You can find your version by looking for the CVS tag on the bottom of the README.FOAM file.
Beginning with FOAM 1.5.15, the main components of FOAM which are available as separate modules were tagged separately.
The equivalent tags are indicated in the Description.
Beginning with FOAM 1.5.46, a branch was created for FOAM1.5 and the tags are slightly different: bpF15_F1_5_49 = FOAM 1.5.49
FOAM 1.5 version table
Version | Date | Modifications |
---|---|---|
F1_5_8 | 2/11/02 | Final version of FOAM 1.5 physics/dynamics. Build works on SGI, IBM, and SUN as well as linux. Gives same answers as 1.5.8 in one-directory source. |
F1_5_9 | 5/7/02 | Fix slab model to not call restart_clean. Clean up Makefile. |
F1_5_10 | 5/28/02 | Add gas and solar constant namelist options to atmosphere. |
F1_5_11 | 5/31/02 | Changes to support standalone atmosphere. Change communicator names in PCCM3 |
F1_5_12 | 7/8/02 | compile simsice always. Keep ice temps below freezing of SST_FROM_FILE is defined. Changes answers only when using the slab ocean and fixed SST options. |
F1_5_13 | 7/16/02 | Some more changes for standalone atmosphere. don't calculate pcoszrs pre-swapped. swap it in radxfr. Don't swap boundary condition albedoes since albedo calculation is now outside radcsw (in standalone model.) |
F1_5_14 | 9/22/02 | Add in hooks for lpj option. Protex header in top-level Makefile. |
F1_5_15 | 12/30/02 | (= PCCM3UW_1_0_1 and OM3ALONE_1_0_1)
add changes for IBM SP4 compile |
F1_5_16 | 1/2/03 | (= PCCM3UW_1_0_2 and OM3ALONE_1_0_1)
changes to change default history fields (physics.F and radctl.F and pagrid.com). Change default history fields (bldfld.F). Make PRIMARY and EXCLUDE namelist vars work (rdbcst.F). |
F1_5_17 | 1/3/03 | (= PCCM3UW_1_0_3 and OM3ALONE_1_0_1)
refactor rdbcst.F for readability. |
F1_5_18 | 1/9/03 | (= PCCM3UW_1_0_3 and OM3ALONE_1_0_2)
add om3_exit and call it instead of exit. om3_exit calls MPI_Abort and exit. |
F1_5_19 | 2/14/03 | (=PCCM3UW_1_0_4 and OM3ALONE_1_0_2)
Support for T31 in coup_restart. change nxpt in pmgrid,prgrid for T31. |
F1_5_20 | 2/21/03 | (=PCCM3UW_1_0_5 and OM3ALONE_1_0_2)
Add data atmosphere to code and makefile add help target to makefile |
F1_5_21 | 2/25/03 | (=PCCM3UW_1_0_6 and OM3ALONE_1_0_2)
Use comorb in pcoszrs.F. |
F1_5_22 | 2/28/03 | (=PCCM3UW_1_0_7 and OM3ALONE_1_0_3) --RELEASE to UofC and UW
Add slab ocean code and target to Makefile.
Reorganize Makefile and redo some comments |
F1_5_23 | 6/17/03 | (=PCCM3UW_1_0_8 and OM3ALONE_1_0_3) first tag in new repo.
Changes to make T31 SLT scheme handle high cross-pole winds. |
F1_5_24 | 12/23/03 | (=PCCM3UW_1_0_8 and OM3ALONE_1_0_3)
Tag change to makefile for Portland Group compiler. done on July 2 |
F1_5_25 | 2/13/04 | (=PCCM3UW_1_0_9 and OM3ALONE_1_0_3)
Tag change to mpi datatypes in pstswm/mpi.F |
F1_5_26 | 3/18/04 | (=PCCM3UW_1_0_11 and OM3ALONE_1_0_3)
changes to read T42 input data. |
F1_5_27 | 6/17/04 | (=PCCM3UW_1_0_12 and OM3ALONE_1_0_3)
Add extra fields to atmosphere output suggested by CAM.
Mostly radiation. |
F1_5_28 | 7/30/04 | (=PCCM3UW_1_0_13 and OM3ALONE_1_0_3)
Turn on SLT fix for R15. Doesn't change answers |
F1_5_29 | 4/5/05 | (=PCCM3UW_1_0_14 and OM3ALONE_1_0_3)
Include fixes for Intel 8.x compiler. |
F1_5_30 | 8/4/05 | (=PCCM3UW_1_0_15 and OM3ALONE_1_0_4)
Include code to output momentum/heat budget vars. Inactive by default. |
F1_5_31 | 8/16/05 | (=PCCM3UW_1_0_15 and OM3ALONE_1_1_0)
Modify Makefile so netcdf includes and libs can be added to build. Add ability to output ocean data in netcdf format. |
F1_5_32 | 9/2/05 | (=PCCM3UW_1_0_16 and OM3ALONE_1_1_1)
Add generic netcdf routines to foamshare and add a Makefile.
Modify top level Makefile to build foamshare. |
F1_5_40 | 10/7/05 | (=PCCM3UW_1_1_0 and OM3ALONE_1_1_1)
Add some more generic netcdf routines to foamshare. |
F1_5_41 | 1/27/06 | (=PCCM3UW_1_1_1 and OM3ALONE_1_1_1)
Add ability to output atmosphere history in netcdf. |
F1_5_42 | 2/2/06 | (=PCCM3UW_1_1_2 and OM3ALONE_1_1_1)
remove system calls from foam.c and mpi_coupled.c links. |
F1_5_43 | 4/17/06 | (=PCCM3UW_1_1_3 and OM3ALONE_1_1_2)
change foam.c to use inpakC to read run_params. |
F1_5_44 | 5/17/06 | (=PCCM3UW_1_1_4 and OM3ALONE_1_1_3)
Introduce new coup_init subroutine which will create an arbitrary initial condition for an initial run. |
F1_5_45 | 5/26/06 | (=PCCM3UW_1_1_5 and OM3ALONE_1_1_3)
Ability to change dtime during a restart run. |
bp_FOAM1_5 | 5/26/06 | Branch formed at F1_5_45 for further FOAM1.5 development
branch tags called bF15_ |
bF15_F1_5_46 | 10/23/06 | (=PCCM3UW_1_1_5 and OM3ALONE_1_1_3)
Fix a couple of build bugs for Intel and IBM xlf 10.0. |
bF15_F1_5_47 | 11/10/06 | (=bPC11_1_6 and OM3ALONE_1_1_3)
Add lpj. Include makefile mods for LPJ. |
bF15_F1_5_48 | 11/28/06 | (=bPC11_1_6 and OM3ALONE_1_1_3)
Add extra lpj variables and fix a bug in legrd. |
bF15_F1_5_49 | 12/21/06 | (=bPC11_1_6 and OM3ALONE_1_1_3)
Fix a bug in dataatm regarding communicators. |
bF15_F1_5_50 | 2/21/07 | (=bPC11_1_7 and OM3ALONE_1_1_3)
Add g95 compile ability. |
Version | Date | Modifications |
---|---|---|
OM3ALONE_1 | first working version of om3coupalone | |
OM3ALONE_2 | released version | |
OM3ALONE_1_0_0 | Includes removal of system calls. New COPYRIGHT. | |
OM3ALONE_1_0_1 | add CVS keywords to readme. | |
OM3ALONE_1_0_2 | add om3_exit and call it instead of exit. om3_exit calls MPI_Abort and exit. Also change avheat and avsalt to include effects of sea ice formation. | |
OM3ALONE_1_0_3 | move om3cplslab function to separate file. | |
OM3ALONE_1_0_4 | 8/4/05 | remove unused WIND_STRESS define |
OM3ALONE_1_1_0 | 8/16/05 | add NetCDF output as an option. |
OM3ALONE_1_1_1 | 9/2/05 | minor change to global attribute "platform". |
OM3ALONE_1_1_2 | 4/17/06 | Add inpakC to build. Use inpakC to processes run_params
Add new initialflag. Use it instead of CPP to switch between initial and restart run. |
OM3ALONE_1_1_3 | 5/17/06 | Fix bug involving time variable in netcdf output |
Version | Date | Modifications |
---|---|---|
PCCM3UW_1 | first working version of standalone model | |
PCCM3UW_1_0_1 | FOAM_LPJ changes, remove system link calls, Intel compiler change, remove albedo swapping.
T31, T63 changes | |
PCCM3UW_1_0_2 | changes to change default history fields (physics.F and radctl.F and pagrid.com). Change default history fields (bldfld.F). Make PRIMARY and EXCLUDE namelist vars work (rdbcst.F). | |
PCCM3UW_1_0_3 | refactor rdbcst.F for readability.
Change pagrid.com to allow all possible fields to be output Change bldfld.F to never check for ninavg.eq.Q. Fields can be output no matter what the history averaging period. aphys.F, physics.F tphys.F vdiff.F, vdintr.F -- change to allow calculation and output of any field in bldfld.F | |
PCCM3UW_1_0_4 | support for T31: increase nxpt in pmgrid,prgrid for T31
Make abort.c call MPI_Abort Add more info to bandij error message Change README to reflect PCCM version. | |
PCCM3UW_1_0_5 | remove TSPDAY from params.h
data.F now handles run_params stuff instead of preset.F Calculate ntspdy when needed in data.F, wrapup.F and pccm3uw.F | |
PCCM3UW_1_0_6 | introduce comorb.com to define orbital params.
set them in preset.F, print out in data.F. Use in radinp.F. Also do safe restart writing when on LINUX, wrapup.F and wrtrs1.F | |
PCCM3UW_1_0_7 | rename variables in comorb.com to match NCAR.
Add ability to set eccen, titld, anper, dayp via namelist. Change formatting on printout of orbital params from data.F (comorb.com, radinp.F, data.F preset.F data.F rdbcst.F) | |
PCCM3UW_1_0_8 | 6/17/2003 | changes to make T31 more stable in SLT scheme.
changes to bandij.F, sltb1.F prgrid.com,pmgrid.com Let abort.c call MPI_Abort to really abort. |
PCCM3UW_1_0_9 | 2/4/04 | add ifc options to Linux Make.
Remove MPI_REAL4, MPI_REAL8 from pstswm. |
PCCM3UW_1_0_10 | 3/18/04 | fix a harmless bug, found by -g, in mfinti
involving an undefined variable. |
PCCM3UW_1_0_11 | additional fix for SLT scheme. Add more info to error message when it happens. Also turn on fix for all resolutions except R15.
changes to sphdep.F sltb1.F bandij.F prgrid.com pmgrid.com | |
PCCM3UW_1_0_12 | add new diagnostic fields for radiation. Redefine FLNTC and FSNTC. Also add TMQ and turn on by default RELHUM and snow precip. | |
PCCM3UW_1_0_13 | Turn on SLT fix for R15. Now done for all resolutions (except T170) | |
PCCM3UW_1_0_14 | 4/5/05 | Add new hnstep variable to fix bug in history logic.
Some fixes for Intel 8.x compiler |
PCCM3UW_1_0_15 | add code to output momentum/heat budget variables WW, UU, UQ, etc.
change Makefile for IBM to use mpxlf/mpcc | |
PCCM3UW_1_0_16 | reorganize inidat.F to locate reads in one block. Preliminary step for netcdf conversion. bfb. Also tag some new files in foamshare. | |
PCCM3UW_1_1_0 | 10/7/2005 | add ability to read netcdf input files. Add netcdf option to build Add pccm_comm to comparll.com. Add comments to new fnc functions. |
PCCM3UW_1_1_1 | 1/27/06 | add ability to output netcdf files.
Use new hbuf2 array to hold averages. |
PCCM3UW_1_1_2 | 2/2/06 | open history and pccmout files with the correct names.
avoid system calls. |
PCCM3UW_1_1_3 | 4/17/06 | Use inpack to set new flags for initial run and filtering phis.
Use new flags. |
PCCM3UW_1_1_4 | 5/17/06 | Call new more generic versions of fnc_readXDFVar |
PCCM3UW_1_1_5 | 5/26/06 | Add code to check if dtime has changed in a restart run and correctly change twodt and nstep |
bp_PCCM3UW_1_1 | Branch formed at PCCM3UW_1_1_5 for FOAM 1.5 development.
call branch tags bPC11_ | |
bPC11_1_6 | 11/10/06 | add bug fix for aux2-aux5 in netcdf output. |
bPC11_1_7 | 2/18/07 | add changes for g95 compile |