[Dart-dev] [4924] DART/trunk/models/cam: Major update to cam-related files. Notably:
nancy at ucar.edu
nancy at ucar.edu
Tue May 31 11:25:55 MDT 2011
Revision: 4924
Author: nancy
Date: 2011-05-31 11:25:55 -0600 (Tue, 31 May 2011)
Log Message:
-----------
Major update to cam-related files. Notably:
- Added the changes needed to the CAM build tree for CAM 4.0.x
- Updates to CAM documentation to bring it in sync with the
current code.
- All trans routines replaced with: dart_to_cam, cam_to_dart,
and advance_time.
- Minor changes to CAM model_mod, including adding a routine to
write out the times file so utilities can call it in a single
location, plus additional optional arg on write routine.
- Most debugging output is off by default; a new namelist
item 'print_details' will re-enable the original output.
- Added build support for new tools (closest member, common
subset, fill inflation) and removed for obsolete (merge obs).
- The original 'trans' build files and src are now in a
'deprecated' directory so if users need them for backwards
compatibility, they are still available.
- The archive scripts are updated for the HPSS (hsi) and
the MSS versions (msrcp) are removed.
- The shell_scripts and full_experiment scripts are updated.
Modified Paths:
--------------
DART/trunk/models/cam/full_experiment/analyses2initial.csh
DART/trunk/models/cam/full_experiment/clm_FillValue_vars.csh
DART/trunk/models/cam/full_experiment/job_mpi.csh
DART/trunk/models/cam/shell_scripts/advance_model.csh
DART/trunk/models/cam/shell_scripts/input.pert0.nml
DART/trunk/models/cam/shell_scripts/run-cam.csh
DART/trunk/models/cam/work/caminput.nc
DART/trunk/models/cam/work/input.nml
Added Paths:
-----------
DART/trunk/models/cam/CCSM4_0_DART_mods.gztar
DART/trunk/models/cam/deprecated/
DART/trunk/models/cam/deprecated/README
DART/trunk/models/cam/deprecated/mkmf_trans_date_to_dart
DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv
DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv_pert0
DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv_time0
DART/trunk/models/cam/deprecated/mkmf_trans_sv_pv
DART/trunk/models/cam/deprecated/mkmf_trans_time
DART/trunk/models/cam/deprecated/path_names_trans_date_to_dart
DART/trunk/models/cam/deprecated/path_names_trans_pv_sv
DART/trunk/models/cam/deprecated/path_names_trans_pv_sv_pert0
DART/trunk/models/cam/deprecated/path_names_trans_pv_sv_time0
DART/trunk/models/cam/deprecated/path_names_trans_sv_pv
DART/trunk/models/cam/deprecated/path_names_trans_time
DART/trunk/models/cam/deprecated/trans_date_to_dart.f90
DART/trunk/models/cam/deprecated/trans_date_to_dart.html
DART/trunk/models/cam/deprecated/trans_pv_sv.f90
DART/trunk/models/cam/deprecated/trans_pv_sv_pert0.f90
DART/trunk/models/cam/deprecated/trans_pv_sv_time0.f90
DART/trunk/models/cam/deprecated/trans_pv_sv_time0.html
DART/trunk/models/cam/deprecated/trans_sv_pv.f90
DART/trunk/models/cam/deprecated/trans_time.f90
DART/trunk/models/cam/full_experiment/auto_ICs2hpss.csh
DART/trunk/models/cam/full_experiment/auto_diag2hpss_LSF.csh
DART/trunk/models/cam/full_experiment/auto_diagPOP2hpss_LSF.csh
DART/trunk/models/cam/full_experiment/auto_re2hpss_LSF.csh
DART/trunk/models/cam/full_experiment/hpss2restart.csh
DART/trunk/models/cam/full_experiment/obs_seq2hpss.csh
DART/trunk/models/cam/shell_scripts/advance_model.retry.csh
DART/trunk/models/cam/shell_scripts/input.nml.diag.template
DART/trunk/models/cam/shell_scripts/monthlydiags.csh
DART/trunk/models/cam/work/cam_phis.nc
Removed Paths:
-------------
DART/trunk/models/cam/full_experiment/auto_ICs2ms.csh
DART/trunk/models/cam/full_experiment/auto_diag2ms_LSF.csh
DART/trunk/models/cam/full_experiment/auto_diagPOP2ms_LSF.csh
DART/trunk/models/cam/full_experiment/auto_re2ms_LSF.csh
DART/trunk/models/cam/full_experiment/ms2restart.csh
DART/trunk/models/cam/full_experiment/obs_seq2ms.csh
DART/trunk/models/cam/trans_date_to_dart.f90
DART/trunk/models/cam/trans_date_to_dart.html
DART/trunk/models/cam/trans_pv_sv.f90
DART/trunk/models/cam/trans_pv_sv_pert0.f90
DART/trunk/models/cam/trans_pv_sv_time0.f90
DART/trunk/models/cam/trans_pv_sv_time0.html
DART/trunk/models/cam/trans_sv_pv.f90
DART/trunk/models/cam/trans_time.f90
DART/trunk/models/cam/work/mkmf_trans_date_to_dart
DART/trunk/models/cam/work/mkmf_trans_pv_sv
DART/trunk/models/cam/work/mkmf_trans_pv_sv_pert0
DART/trunk/models/cam/work/mkmf_trans_pv_sv_time0
DART/trunk/models/cam/work/mkmf_trans_sv_pv
DART/trunk/models/cam/work/mkmf_trans_time
DART/trunk/models/cam/work/path_names_trans_date_to_dart
DART/trunk/models/cam/work/path_names_trans_pv_sv
DART/trunk/models/cam/work/path_names_trans_pv_sv_pert0
DART/trunk/models/cam/work/path_names_trans_pv_sv_time0
DART/trunk/models/cam/work/path_names_trans_sv_pv
DART/trunk/models/cam/work/path_names_trans_time
Property Changed:
----------------
DART/trunk/models/cam/
-------------- next part --------------
Property changes on: DART/trunk/models/cam
___________________________________________________________________
Added: svn:mergeinfo
+ /DART/branches/cam-update:4903-4923
Added: DART/trunk/models/cam/CCSM4_0_DART_mods.gztar
===================================================================
(Binary files differ)
Property changes on: DART/trunk/models/cam/CCSM4_0_DART_mods.gztar
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: DART/trunk/models/cam/deprecated/README
===================================================================
--- DART/trunk/models/cam/deprecated/README (rev 0)
+++ DART/trunk/models/cam/deprecated/README 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,19 @@
+The files in this directory are deprecated.
+
+The mkmf_trans_* and path_names_trans_* files are for building
+the original translation tools between DART initial condition/
+restart file format and CAM netCDF file format, and also translating
+time between DART and CAM formats. All are completely superceeded
+by the following 3 tools:
+
+dart_to_cam
+cam_to_dart
+advance_time
+
+If you need to continue to use the original tools,
+copy the source files into DART/models/cam, copy the mkmf_*
+and path_names_* files into ../work, and run ./quickbuild.csh
+from the work directory.
+
+
+
Property changes on: DART/trunk/models/cam/deprecated/README
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:eol-style
+ native
Added: DART/trunk/models/cam/deprecated/mkmf_trans_date_to_dart
===================================================================
--- DART/trunk/models/cam/deprecated/mkmf_trans_date_to_dart (rev 0)
+++ DART/trunk/models/cam/deprecated/mkmf_trans_date_to_dart 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,18 @@
+#!/bin/csh
+#
+# DART software - Copyright 2004 - 2011 UCAR. This open source software is
+# provided by UCAR, "as is", without charge, subject to all terms of use at
+# http://www.image.ucar.edu/DAReS/DART/DART_download
+#
+# $Id$
+
+../../../mkmf/mkmf -p trans_date_to_dart -t ../../../mkmf/mkmf.template -c "-Duse_netCDF" \
+ -a "../../.." path_names_trans_date_to_dart
+
+exit $status
+
+# <next few lines under version control, do not edit>
+# $URL$
+# $Revision$
+# $Date$
+
Property changes on: DART/trunk/models/cam/deprecated/mkmf_trans_date_to_dart
___________________________________________________________________
Added: svn:executable
+ *
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Date Rev Author HeadURL Id
Added: svn:eol-style
+ native
Added: DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv
===================================================================
--- DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv (rev 0)
+++ DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,18 @@
+#!/bin/csh
+#
+# DART software - Copyright 2004 - 2011 UCAR. This open source software is
+# provided by UCAR, "as is", without charge, subject to all terms of use at
+# http://www.image.ucar.edu/DAReS/DART/DART_download
+#
+# $Id$
+
+../../../mkmf/mkmf -p trans_pv_sv -t ../../../mkmf/mkmf.template -c "-Duse_netCDF" \
+ -a "../../.." path_names_trans_pv_sv
+
+exit $status
+
+# <next few lines under version control, do not edit>
+# $URL$
+# $Revision$
+# $Date$
+
Property changes on: DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv
___________________________________________________________________
Added: svn:executable
+ *
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Date Rev Author HeadURL Id
Added: svn:eol-style
+ native
Added: DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv_pert0
===================================================================
--- DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv_pert0 (rev 0)
+++ DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv_pert0 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,18 @@
+#!/bin/csh
+#
+# DART software - Copyright 2004 - 2011 UCAR. This open source software is
+# provided by UCAR, "as is", without charge, subject to all terms of use at
+# http://www.image.ucar.edu/DAReS/DART/DART_download
+#
+# $Id$
+
+../../../mkmf/mkmf -p trans_pv_sv_pert0 -t ../../../mkmf/mkmf.template -c "-Duse_netCDF" \
+ -a "../../.." path_names_trans_pv_sv_pert0
+
+exit $status
+
+# <next few lines under version control, do not edit>
+# $URL$
+# $Revision$
+# $Date$
+
Property changes on: DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv_pert0
___________________________________________________________________
Added: svn:executable
+ *
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Date Rev Author HeadURL Id
Added: svn:eol-style
+ native
Added: DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv_time0
===================================================================
--- DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv_time0 (rev 0)
+++ DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv_time0 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,18 @@
+#!/bin/csh
+#
+# DART software - Copyright 2004 - 2011 UCAR. This open source software is
+# provided by UCAR, "as is", without charge, subject to all terms of use at
+# http://www.image.ucar.edu/DAReS/DART/DART_download
+#
+# $Id$
+
+../../../mkmf/mkmf -p trans_pv_sv_time0 -t ../../../mkmf/mkmf.template -c "-Duse_netCDF" \
+ -a "../../.." path_names_trans_pv_sv_time0
+
+exit $status
+
+# <next few lines under version control, do not edit>
+# $URL$
+# $Revision$
+# $Date$
+
Property changes on: DART/trunk/models/cam/deprecated/mkmf_trans_pv_sv_time0
___________________________________________________________________
Added: svn:executable
+ *
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Date Rev Author HeadURL Id
Added: svn:eol-style
+ native
Added: DART/trunk/models/cam/deprecated/mkmf_trans_sv_pv
===================================================================
--- DART/trunk/models/cam/deprecated/mkmf_trans_sv_pv (rev 0)
+++ DART/trunk/models/cam/deprecated/mkmf_trans_sv_pv 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,18 @@
+#!/bin/csh
+#
+# DART software - Copyright 2004 - 2011 UCAR. This open source software is
+# provided by UCAR, "as is", without charge, subject to all terms of use at
+# http://www.image.ucar.edu/DAReS/DART/DART_download
+#
+# $Id$
+
+../../../mkmf/mkmf -p trans_sv_pv -t ../../../mkmf/mkmf.template -c "-Duse_netCDF" \
+ -a "../../.." path_names_trans_sv_pv
+
+exit $status
+
+# <next few lines under version control, do not edit>
+# $URL$
+# $Revision$
+# $Date$
+
Property changes on: DART/trunk/models/cam/deprecated/mkmf_trans_sv_pv
___________________________________________________________________
Added: svn:executable
+ *
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Date Rev Author HeadURL Id
Added: svn:eol-style
+ native
Added: DART/trunk/models/cam/deprecated/mkmf_trans_time
===================================================================
--- DART/trunk/models/cam/deprecated/mkmf_trans_time (rev 0)
+++ DART/trunk/models/cam/deprecated/mkmf_trans_time 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,18 @@
+#!/bin/csh
+#
+# DART software - Copyright 2004 - 2011 UCAR. This open source software is
+# provided by UCAR, "as is", without charge, subject to all terms of use at
+# http://www.image.ucar.edu/DAReS/DART/DART_download
+#
+# $Id$
+
+../../../mkmf/mkmf -p trans_time -t ../../../mkmf/mkmf.template -c "-Duse_netCDF" \
+ -a "../../.." path_names_trans_time
+
+exit $status
+
+# <next few lines under version control, do not edit>
+# $URL$
+# $Revision$
+# $Date$
+
Property changes on: DART/trunk/models/cam/deprecated/mkmf_trans_time
___________________________________________________________________
Added: svn:executable
+ *
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Date Rev Author HeadURL Id
Added: svn:eol-style
+ native
Added: DART/trunk/models/cam/deprecated/path_names_trans_date_to_dart
===================================================================
--- DART/trunk/models/cam/deprecated/path_names_trans_date_to_dart (rev 0)
+++ DART/trunk/models/cam/deprecated/path_names_trans_date_to_dart 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,5 @@
+models/cam/trans_date_to_dart.f90
+time_manager/time_manager_mod.f90
+mpi_utilities/null_mpi_utilities_mod.f90
+utilities/utilities_mod.f90
+common/types_mod.f90
Added: DART/trunk/models/cam/deprecated/path_names_trans_pv_sv
===================================================================
--- DART/trunk/models/cam/deprecated/path_names_trans_pv_sv (rev 0)
+++ DART/trunk/models/cam/deprecated/path_names_trans_pv_sv 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,11 @@
+obs_kind/obs_kind_mod.f90
+models/cam/trans_pv_sv.f90
+models/cam/model_mod.f90
+assim_model/assim_model_mod.f90
+utilities/utilities_mod.f90
+mpi_utilities/null_mpi_utilities_mod.f90
+common/types_mod.f90
+time_manager/time_manager_mod.f90
+location/threed_sphere/location_mod.f90
+random_seq/random_seq_mod.f90
+random_nr/random_nr_mod.f90
Added: DART/trunk/models/cam/deprecated/path_names_trans_pv_sv_pert0
===================================================================
--- DART/trunk/models/cam/deprecated/path_names_trans_pv_sv_pert0 (rev 0)
+++ DART/trunk/models/cam/deprecated/path_names_trans_pv_sv_pert0 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,11 @@
+models/cam/trans_pv_sv_pert0.f90
+models/cam/model_mod.f90
+obs_kind/obs_kind_mod.f90
+assim_model/assim_model_mod.f90
+utilities/utilities_mod.f90
+mpi_utilities/null_mpi_utilities_mod.f90
+common/types_mod.f90
+time_manager/time_manager_mod.f90
+location/threed_sphere/location_mod.f90
+random_seq/random_seq_mod.f90
+random_nr/random_nr_mod.f90
Added: DART/trunk/models/cam/deprecated/path_names_trans_pv_sv_time0
===================================================================
--- DART/trunk/models/cam/deprecated/path_names_trans_pv_sv_time0 (rev 0)
+++ DART/trunk/models/cam/deprecated/path_names_trans_pv_sv_time0 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,11 @@
+models/cam/trans_pv_sv_time0.f90
+models/cam/model_mod.f90
+obs_kind/obs_kind_mod.f90
+assim_model/assim_model_mod.f90
+utilities/utilities_mod.f90
+mpi_utilities/null_mpi_utilities_mod.f90
+common/types_mod.f90
+time_manager/time_manager_mod.f90
+location/threed_sphere/location_mod.f90
+random_seq/random_seq_mod.f90
+random_nr/random_nr_mod.f90
Added: DART/trunk/models/cam/deprecated/path_names_trans_sv_pv
===================================================================
--- DART/trunk/models/cam/deprecated/path_names_trans_sv_pv (rev 0)
+++ DART/trunk/models/cam/deprecated/path_names_trans_sv_pv 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,11 @@
+obs_kind/obs_kind_mod.f90
+models/cam/trans_sv_pv.f90
+models/cam/model_mod.f90
+assim_model/assim_model_mod.f90
+utilities/utilities_mod.f90
+mpi_utilities/null_mpi_utilities_mod.f90
+common/types_mod.f90
+location/threed_sphere/location_mod.f90
+time_manager/time_manager_mod.f90
+random_seq/random_seq_mod.f90
+random_nr/random_nr_mod.f90
Added: DART/trunk/models/cam/deprecated/path_names_trans_time
===================================================================
--- DART/trunk/models/cam/deprecated/path_names_trans_time (rev 0)
+++ DART/trunk/models/cam/deprecated/path_names_trans_time 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,11 @@
+obs_kind/obs_kind_mod.f90
+models/cam/trans_time.f90
+time_manager/time_manager_mod.f90
+assim_model/assim_model_mod.f90
+utilities/utilities_mod.f90
+mpi_utilities/null_mpi_utilities_mod.f90
+common/types_mod.f90
+location/threed_sphere/location_mod.f90
+random_seq/random_seq_mod.f90
+random_nr/random_nr_mod.f90
+models/cam/model_mod.f90
Copied: DART/trunk/models/cam/deprecated/trans_date_to_dart.f90 (from rev 4923, DART/trunk/models/cam/trans_date_to_dart.f90)
===================================================================
--- DART/trunk/models/cam/deprecated/trans_date_to_dart.f90 (rev 0)
+++ DART/trunk/models/cam/deprecated/trans_date_to_dart.f90 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,72 @@
+! DART software - Copyright 2004 - 2011 UCAR. This open source software is
+! provided by UCAR, "as is", without charge, subject to all terms of use at
+! http://www.image.ucar.edu/DAReS/DART/DART_download
+
+program trans_date_to_dart
+
+! <next few lines under version control, do not edit>
+! $URL$
+! $Id$
+! $Revision$
+! $Date$
+
+!----------------------------------------------------------------------
+! purpose: generate a Gregorian/DART date & time from standard date and time
+!
+! method: Read ASCII input(/output) file containing yyyy/mm/dd hh:mm:ss .
+! Reform time and date into form needed by DART.
+! Write out CAM time and date to i/o file for use in input.nlm .
+!
+! author: Kevin Raeder 8/18/03
+!
+!----------------------------------------------------------------------
+
+use utilities_mod, only : get_unit, initialize_utilities, finalize_utilities
+use time_manager_mod, only : time_type, write_time, &
+ get_time, set_time, get_date, set_date, &
+ set_calendar_type, GREGORIAN, get_calendar_type
+
+implicit none
+
+! version controlled file description for error handling, do not edit
+character(len=128), parameter :: &
+ source = "$URL$", &
+ revision = "$Revision$", &
+ revdate = "$Date$"
+
+integer :: calendar_type = GREGORIAN
+integer :: file_unit, seconds, &
+ year, month, day, hour, minute, second, &
+ cam_date, cam_tod
+type(time_type) :: dart_time
+character (len = 128) :: file_name = 'date_greg'
+
+call initialize_utilities('Trans_date_to_dart')
+
+call set_calendar_type(calendar_type)
+! debug
+seconds = get_calendar_type()
+PRINT*,'calendar type = ',seconds
+
+file_unit = get_unit()
+PRINT*,'file_unit = ',file_unit
+
+! read in date and time
+open(unit = file_unit, file = file_name, status='old',form='formatted')
+read(file_unit, '(I4,5(1X,I2))') year, month, day, hour, minute, second
+PRINT*,'read in date = ',year, month, day, hour, minute, second
+
+! create and write DART date (Gregorian)
+dart_time = set_date(year, month, day, hour, minute, second)
+call write_time (file_unit,dart_time)
+
+! create and write CAM date
+cam_date = (year)*10000 + month*100 + day
+cam_tod = hour*3600 + minute*60 + second
+write (file_unit,'(2I8)') cam_date, cam_tod
+
+close(unit = file_unit)
+
+call finalize_utilities()
+
+end program trans_date_to_dart
Copied: DART/trunk/models/cam/deprecated/trans_date_to_dart.html (from rev 4923, DART/trunk/models/cam/trans_date_to_dart.html)
===================================================================
--- DART/trunk/models/cam/deprecated/trans_date_to_dart.html (rev 0)
+++ DART/trunk/models/cam/deprecated/trans_date_to_dart.html 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,76 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+ "http://www.w3.org/TR/html4/strict.dtd">
+<HTML>
+<HEAD>
+<TITLE>program trans_date_to_dart</TITLE>
+<link rel="stylesheet" type="text/css" href="../../doc/html/doc.css" />
+</HEAD>
+<BODY>
+<A NAME="TOP"></A>
+
+<H1>PROGRAM <em class="program">trans_date_to_dart</em></H1>
+
+<table border=0 summary="" cellpadding=5>
+<tr>
+ <td valign=middle>
+ <img src="../../doc/html/Dartboard9.png" alt="DART project logo" height=70 />
+ </td>
+ <td>
+ <P>Jump to <a href="../../index.html">DART Documentation Main Index</a><br />
+ <small><small>version information for this file: <br />
+ <!-- version tag follows, do not edit -->
+ $Id$</small></small>
+ </P></td>
+</tr>
+</table>
+
+<A HREF="#Legalese">TERMS OF USE</A>
+
+<H2>Overview</H2>
+
+<P>
+<em class="program">trans_date_to_dart</em> translates a standard date and time into
+Gregorian and DART date/time pairs. It will be compiled automatically by
+<em class="program">.../DART/models/cam/work/quickbuild.csh</em> or it can be built
+in the usual way.
+It opens a pre-existing file called '<em class="file">date_greg</em>'
+which must be in the run directory and which must contain a date and time on the
+first line, in the form
+</P>
+<PRE>
+yyyy/mm/dd hh:mm:ss
+</PRE>
+<P>
+It will write out the gregorian day and time onto line 2 of the same file.
+It will also write out the date in the format the CAM wants to see onto the 3rd line.
+It does not require any namelist input from <em class="file">input.nml</em> .
+</P>
+
+<!--==================================================================-->
+<!-- Legalese & Metadata -->
+<!--==================================================================-->
+
+<A NAME="Legalese"></A>
+<HR>
+<H2>Terms of Use</H2>
+
+<P>
+DART software - Copyright 2004 - 2011 UCAR.<br>
+This open source software is provided by UCAR, "as is",<br>
+without charge, subject to all terms of use at<br>
+<a href="http://www.image.ucar.edu/DAReS/DART/DART_download">
+http://www.image.ucar.edu/DAReS/DART/DART_download</a>
+</P>
+
+<TABLE border=0 cellpadding=0 width=100% summary="">
+<TR><TD valign=top>Contact: </TD><TD> Kevin Raeder </TD></TR>
+<TR><TD valign=top>Revision: </TD><TD> $Revision$ </TD></TR>
+<TR><TD valign=top>Source: </TD><TD> $URL$ </TD></TR>
+<TR><TD valign=top>Change Date: </TD><TD> $Date$ </TD></TR>
+<TR><TD valign=top>Change history: </TD><TD> try "svn log" or "svn diff" </TD></TR>
+</TABLE>
+
+<!--==================================================================-->
+
+</BODY>
+</HTML>
Copied: DART/trunk/models/cam/deprecated/trans_pv_sv.f90 (from rev 4923, DART/trunk/models/cam/trans_pv_sv.f90)
===================================================================
--- DART/trunk/models/cam/deprecated/trans_pv_sv.f90 (rev 0)
+++ DART/trunk/models/cam/deprecated/trans_pv_sv.f90 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,110 @@
+! DART software - Copyright 2004 - 2011 UCAR. This open source software is
+! provided by UCAR, "as is", without charge, subject to all terms of use at
+! http://www.image.ucar.edu/DAReS/DART/DART_download
+
+program trans_pv_sv
+
+! <next few lines under version control, do not edit>
+! $URL$
+! $Id$
+! $Revision$
+! $Date$
+
+!----------------------------------------------------------------------
+! purpose: interface between CAM and DART
+!
+! method: Read CAM 'initial' file for model state, but not time (netCDF format).
+! Get target time from assim_model_state_ic (temp_ic).
+! Reform fields into a state vector.
+! Write out state vector in "proprietary" format for DART
+!
+! author: Kevin Raeder 2/21/03
+! based on prog_var_to_vector and vector_to_prog_var by Jeff Anderson
+!
+!----------------------------------------------------------------------
+
+use types_mod, only : r8
+use utilities_mod, only : get_unit, file_exist, &
+ initialize_utilities, finalize_utilities
+use model_mod, only : model_type, init_model_instance, end_model_instance, &
+ prog_var_to_vector, read_cam_init
+use assim_model_mod, only : assim_model_type, static_init_assim_model, &
+ init_assim_model, get_model_size , set_model_state_vector, write_state_restart, &
+ set_model_time, open_restart_read, open_restart_write, close_restart, &
+ aread_state_restart
+! Guam; move time stripping from advance_model to here
+use time_manager_mod, only : time_type, read_time
+
+implicit none
+
+! version controlled file description for error handling, do not edit
+character(len=128), parameter :: &
+ source = "$URL$", &
+ revision = "$Revision$", &
+ revdate = "$Date$"
+
+! character (len = 128) :: file_name = 'caminput.nc', file_out = 'temp_ic'
+! Guam; move time stripping from script into here
+character (len = 128) :: file_name = 'caminput.nc', file_out = 'temp_ud', &
+ file_time = 'temp_ic'
+
+! Temporary allocatable storage to read in a native format for cam state
+type(assim_model_type) :: x
+type(model_type) :: var
+type(time_type) :: model_time, adv_to_time
+real(r8), allocatable :: x_state(:)
+integer :: file_unit, x_size
+logical :: do_output = .false.
+
+call initialize_utilities('Trans_pv_sv')
+
+if(file_exist('element1')) do_output = .true.
+
+! Static init assim model calls static_init_model
+! which now (merge/MPI) calls read_cam_init)
+call static_init_assim_model()
+
+! Initialize the assim_model instance
+call init_assim_model(x)
+
+! Allocate the local state vector
+x_size = get_model_size()
+allocate(x_state(x_size))
+
+! Allocate the instance of the cam model type for storage
+! Nancy; why did we comment this out?
+! Do it in read_cam_init?
+! What about end_model_instance?
+! I'll just point to the space I need, not;
+call init_model_instance(var)
+
+! Read the file cam state fragments into var, but not time
+call read_cam_init(file_name, var)
+
+! transform fields into state vector for DART
+call prog_var_to_vector(var, x_state)
+
+call end_model_instance(var)
+
+! Put this in the structure
+call set_model_state_vector(x, x_state)
+
+! Integration of model was controlled by the restart file,
+! so we use the target time of the restart file (from assim_model_state)
+! as the current model state time.
+file_unit = open_restart_read(file_time)
+! We're done with x_state, so it can be uselessly filled in aread_state_restart,
+! while getting model_time.
+call aread_state_restart(model_time, x_state, file_unit, adv_to_time)
+call set_model_time (x, adv_to_time)
+call close_restart(file_unit)
+
+! Get channel for output,
+! write out state vector in "proprietary" format
+file_unit = open_restart_write(file_out)
+call write_state_restart(x, file_unit)
+call close_restart(file_unit)
+
+call finalize_utilities()
+
+end program trans_pv_sv
Copied: DART/trunk/models/cam/deprecated/trans_pv_sv_pert0.f90 (from rev 4923, DART/trunk/models/cam/trans_pv_sv_pert0.f90)
===================================================================
--- DART/trunk/models/cam/deprecated/trans_pv_sv_pert0.f90 (rev 0)
+++ DART/trunk/models/cam/deprecated/trans_pv_sv_pert0.f90 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,159 @@
+! DART software - Copyright 2004 - 2011 UCAR. This open source software is
+! provided by UCAR, "as is", without charge, subject to all terms of use at
+! http://www.image.ucar.edu/DAReS/DART/DART_download
+
+program trans_pv_sv_pert0
+
+! <next few lines under version control, do not edit>
+! $URL$
+! $Id$
+! $Revision$
+! $Date$
+
+!----------------------------------------------------------------------
+! purpose: interface between CAM and DART,
+! Modify field (esp. parameter field) values to have spread
+!
+! method: Read CAM 'initial' file (netCDF format).
+! Use ensemble member (in file 'element') to set a unique seed for init_ran1.
+! Change values by call to model_mod:pert_model_state.
+! Reform fields into a state vector.
+! Write out state vector in "proprietary" format for DART
+!
+! author: Kevin Raeder 3/21/07
+! based on trans_pv_sv_pert0
+!
+!----------------------------------------------------------------------
+
+use types_mod, only : r8
+use utilities_mod, only : nmlfileunit, error_handler, E_ERR, E_MSG, find_namelist_in_file, &
+ check_namelist_read, initialize_utilities, finalize_utilities
+use model_mod, only : model_type, init_model_instance, read_cam_init, &
+ prog_var_to_vector, pert_model_state
+
+use assim_model_mod, only : assim_model_type, static_init_assim_model, &
+ init_assim_model, get_model_size , set_model_state_vector, write_state_restart, &
+ set_model_time, open_restart_read, open_restart_write, close_restart, &
+ aread_state_restart
+! Guam; move time stripping from advance_model to here
+use time_manager_mod, only : time_type, read_time, set_time
+
+implicit none
+
+! version controlled file description for error handling, do not edit
+character(len=128), parameter :: &
+ source = "$URL$", &
+ revision = "$Revision$", &
+ revdate = "$Date$"
+
+character (len = 128) :: file_name = 'caminput.nc', file_out = 'temp_ud'
+! Hawaii; file_time = 'temp_ic'
+! trans_pv_sv_pert0 should get its time from the namelist,
+! not from temp_ic, which came from filter_ics, which will not exist for a new
+! set of fields comprising the state vector.
+
+! Temporary allocatable storage to read in a native format for cam state
+type(assim_model_type) :: x
+type(model_type) :: var
+type(time_type) :: model_time
+real(r8), allocatable :: x_state(:), x_temp(:)
+integer :: file_unit, x_size, iunit, io
+
+! define exactly the same stuff as in the perfect_model_obs namelist.
+logical :: start_from_restart = .false., output_restart = .false., &
+ interf_provided
+integer :: async = 0
+integer :: init_time_days = 0, init_time_seconds = 0, output_interval = 1, &
+ first_obs_days, first_obs_seconds, &
+ last_obs_days, last_obs_seconds
+character(len = 129) :: restart_in_file_name = 'perfect_ics', &
+ restart_out_file_name = 'perfect_restart', &
+ obs_seq_in_file_name = 'obs_seq.in', &
+ obs_seq_out_file_name = 'obs_seq.out', &
+ adv_ens_command = './advance_model.csh'
+
+namelist /perfect_model_obs_nml/ &
+ start_from_restart, output_restart, async, &
+ init_time_days, first_obs_days, first_obs_seconds, last_obs_days, &
+ last_obs_seconds,init_time_seconds, output_interval, &
+ restart_in_file_name, restart_out_file_name, &
+ obs_seq_in_file_name, obs_seq_out_file_name, &
+ adv_ens_command
+
+!-------------------------
+
+call initialize_utilities('trans_sv_pv_pert0')
+
+! Static init assim model calls static_init_model
+PRINT*,'static_init_assim_model in trans_pv_sv'
+call static_init_assim_model()
+
+! Initialize the assim_model instance
+call init_assim_model(x)
+
+! Allocate the local state vector
+x_size = get_model_size()
+allocate(x_state(x_size), x_temp(x_size))
+
+! Allocate the instance of the cam model type for storage
+call init_model_instance(var)
+
+! Read the file cam state fragments into var
+call read_cam_init(file_name, var)
+
+! transform fields into state vector for DART
+call prog_var_to_vector(var, x_state)
+
+! Replace mean/base value and/or add spread to (parameter) fields
+! according to the namelist entries pert_names, pert_sd, and pert_base_vals.
+! Random value (< pert_sd) will be added to pert_base_vals.
+! The seed for the random # will be derived from the ensemble member #,
+! so it should be unique for each ensemble member (and variable).
+! (This isn't always true for some random number generators).
+
+call pert_model_state(x_state, x_temp, interf_provided)
+
+! Put this in the structure
+call set_model_state_vector(x, x_temp)
+
+! Read the namelist entry
+call find_namelist_in_file("input.nml", "perfect_model_obs_nml", iunit)
+read(iunit, nml = perfect_model_obs_nml, iostat = io)
+call check_namelist_read(iunit, io, "perfect_model_obs_nml")
+
+! Record the namelist values used for the run ...
+write(nmlfileunit, nml=perfect_model_obs_nml)
+write( * , nml=perfect_model_obs_nml)
+
+
+call filter_set_initial_time
+
+call set_model_time (x, model_time)
+call close_restart(file_unit)
+
+! Get channel for output
+file_unit = open_restart_write(file_out)
+PRINT*,'In trans_pv_sv file_out unit = ',file_unit
+PRINT*,' '
+! write out state vector in "proprietary" format
+call write_state_restart(x, file_unit)
+call close_restart(file_unit)
+
+call finalize_utilities()
+
+!-------------------------------------------------------------------------
+contains
+!-------------------------------------------------------------------------
+
+subroutine filter_set_initial_time
+
+if(init_time_days >= 0) then
+ model_time = set_time(init_time_seconds, init_time_days)
+else
+ model_time = set_time(0, 0)
+endif
+
+end subroutine filter_set_initial_time
+
+end program trans_pv_sv_pert0
+
Copied: DART/trunk/models/cam/deprecated/trans_pv_sv_time0.f90 (from rev 4923, DART/trunk/models/cam/trans_pv_sv_time0.f90)
===================================================================
--- DART/trunk/models/cam/deprecated/trans_pv_sv_time0.f90 (rev 0)
+++ DART/trunk/models/cam/deprecated/trans_pv_sv_time0.f90 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,148 @@
+! DART software - Copyright 2004 - 2011 UCAR. This open source software is
+! provided by UCAR, "as is", without charge, subject to all terms of use at
+! http://www.image.ucar.edu/DAReS/DART/DART_download
+
+program trans_pv_sv_time0
+
+! <next few lines under version control, do not edit>
+! $URL$
+! $Id$
+! $Revision$
+! $Date$
+
+!----------------------------------------------------------------------
+! purpose: interface between CAM and DART
+!
+! method: Read CAM 'initial' file (netCDF format).
+! Reform fields into a state vector.
+! Write out state vector in "proprietary" format for DART
+!
+! author: Kevin Raeder 2/21/03
+! based on prog_var_to_vector and vector_to_prog_var by Jeff Anderson
+!
+!----------------------------------------------------------------------
+
+use types_mod, only : r8
+use utilities_mod, only : nmlfileunit, error_handler, E_ERR, E_MSG, find_namelist_in_file, &
+ check_namelist_read, initialize_utilities, finalize_utilities
+use model_mod, only : model_type, init_model_instance, read_cam_init, &
+ prog_var_to_vector
+
+use assim_model_mod, only : assim_model_type, static_init_assim_model, &
+ init_assim_model, get_model_size , set_model_state_vector, write_state_restart, &
+ set_model_time, open_restart_read, open_restart_write, close_restart, &
+ aread_state_restart
+! Guam; move time stripping from advance_model to here
+use time_manager_mod, only : time_type, read_time, set_time
+
+implicit none
+
+! version controlled file description for error handling, do not edit
+character(len=128), parameter :: &
+ source = "$URL$", &
+ revision = "$Revision$", &
+ revdate = "$Date$"
+
+character (len = 128) :: file_name = 'caminput.nc', file_out = 'temp_ud'
+! Hawaii; file_time = 'temp_ic'
+! trans_pv_sv_time0 should get it's time from the namelist,
+! not from temp_ic, which came from filter_ics, which will not exist for a new
+! set of fields comprising the state vector.
+
+! Temporary allocatable storage to read in a native format for cam state
+type(assim_model_type) :: x
+type(model_type) :: var
+type(time_type) :: model_time
+real(r8), allocatable :: x_state(:), x_temp(:)
+integer :: file_unit, x_size, iunit, io
+
+! define exactly the same stuff as in the perfect_model_obs namelist.
+logical :: start_from_restart = .false., output_restart = .false., &
+ interf_provided
+integer :: async = 0
+integer :: init_time_days = 0, init_time_seconds = 0, output_interval = 1, &
+ first_obs_days, first_obs_seconds, &
+ last_obs_days, last_obs_seconds
+character(len = 129) :: restart_in_file_name = 'perfect_ics', &
+ restart_out_file_name = 'perfect_restart', &
+ obs_seq_in_file_name = 'obs_seq.in', &
+ obs_seq_out_file_name = 'obs_seq.out', &
+ adv_ens_command = './advance_model.csh'
+
+namelist /perfect_model_obs_nml/ &
+ start_from_restart, output_restart, async, &
+ init_time_days, first_obs_days, first_obs_seconds, last_obs_days, &
+ last_obs_seconds,init_time_seconds, output_interval, &
+ restart_in_file_name, restart_out_file_name, &
+ obs_seq_in_file_name, obs_seq_out_file_name, &
+ adv_ens_command
+
+!-------------------------
+
+call initialize_utilities('Trans_sv_pv_time0')
+
+! Static init assim model calls static_init_model
+PRINT*,'static_init_assim_model in trans_pv_sv'
+call static_init_assim_model()
+
+! Initialize the assim_model instance
+call init_assim_model(x)
+
+! Allocate the local state vector
+x_size = get_model_size()
+allocate(x_state(x_size), x_temp(x_size))
+
+! Allocate the instance of the cam model type for storage
+call init_model_instance(var)
+
+! Read the file cam state fragments into var
+call read_cam_init(file_name, var)
+
+! transform fields into state vector for DART
+call prog_var_to_vector(var, x_state)
+
+! Put this in the structure
+call set_model_state_vector(x, x_state)
+
+! Read the namelist entry
+call find_namelist_in_file("input.nml", "perfect_model_obs_nml", iunit)
+read(iunit, nml = perfect_model_obs_nml, iostat = io)
+call check_namelist_read(iunit, io, "perfect_model_obs_nml")
+
+! Record the namelist values used for the run ...
+write(nmlfileunit, nml=perfect_model_obs_nml)
+write( * , nml=perfect_model_obs_nml)
+
+
+call filter_set_initial_time
+
+call set_model_time (x, model_time)
+call close_restart(file_unit)
+
+! Get channel for output
+file_unit = open_restart_write(file_out)
+PRINT*,'In trans_pv_sv file_out unit = ',file_unit
+PRINT*,' '
+! write out state vector in "proprietary" format
+call write_state_restart(x, file_unit)
+call close_restart(file_unit)
+
+call finalize_utilities()
+
+!-------------------------------------------------------------------------
+contains
+!-------------------------------------------------------------------------
+
+subroutine filter_set_initial_time
+
+if(init_time_days >= 0) then
+ model_time = set_time(init_time_seconds, init_time_days)
+else
+ model_time = set_time(0, 0)
+endif
+
+end subroutine filter_set_initial_time
+
+!-------------------------------------------------------------------------
+end program trans_pv_sv_time0
+
Copied: DART/trunk/models/cam/deprecated/trans_pv_sv_time0.html (from rev 4923, DART/trunk/models/cam/trans_pv_sv_time0.html)
===================================================================
--- DART/trunk/models/cam/deprecated/trans_pv_sv_time0.html (rev 0)
+++ DART/trunk/models/cam/deprecated/trans_pv_sv_time0.html 2011-05-31 17:25:55 UTC (rev 4924)
@@ -0,0 +1,172 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<HTML>
+<HEAD>
+<TITLE>program trans_pv_sv_time0</TITLE>
+<link rel="stylesheet" type="text/css" href="../../doc/html/doc.css" />
+</HEAD>
+<BODY>
+<A NAME="TOP"></A>
+
+<H1>PROGRAM <em class=program>trans_pv_sv_time0</em></H1>
+
+<table border=0 summary="" cellpadding=5>
+<tr>
+ <td valign=middle>
+ <img src="../../doc/html/Dartboard9.png" alt="DART project logo" height=70 />
+ </td>
+ <td>
+ <P>Jump to <a href="../../index.html">DART Documentation Main Index</a><br />
+ <small><small>version information for this file: <br />
+ <!-- version tag follows, do not edit -->
+ $Id$</small></small>
+ </P></td>
+</tr>
+</table>
+
+<A HREF="#Namelist">NAMELIST</A> /
+<A HREF="#FilesUsed">FILES</A> /
+<A HREF="#References">REFERENCES</A> /
+<A HREF="#Errors">ERRORS</A> /
+<A HREF="#FuturePlans">PLANS</A> /
+<A HREF="#Legalese">TERMS OF USE</A>
+
+<H2>Overview</H2>
+
+<H1>Program <em class=program>trans_pv_sv_time0</em></H1>
+
+<P>
+You can make <em class="file">filter_ic</em> files from <em class="file">caminput_#.nc</em>
+files using the program <em class="file">.../DART/models/cam/trans_pv_sv_time0.f90</em>.
+This is compiled in <em class="file">.../DART/models/cam/work</em> by default if you use
+<em class="file">quickbuild.csh</em> or it can be compiled standalone in the usual way.
+<em class="program">trans_pv_sv_time0</em> needs to be run for each caminput file.
+So far there is not a robust script for running <em class="program">trans_pv_sv_time0</em>,
+but you can write your own.
+<br><br>
+You'll need to have several files in the directory where <em class="program">trans_pv_sv_time0</em> is run:
+</P>
+
+<UL>
+ <LI><em class="file">input.nml</em> containing <em class=code>perfect_model_nml</em>,
+ which provides the Gregorian timestamp for <em class="file">filter_ic</em>
+ in variables
+ <div class="routine"><PRE>
+ &perfect_model_nml
+ init_time_days = 146827,
+ init_time_seconds = 0,</PRE>
+ </div>
+ <br />
+ This date can be generated using
+ <A HREF="trans_date_to_dart.html">.../DART/models/cam/trans_date_to_dart.f90</A>.
+ </LI><br />
+ <LI> '<em class="file">topog_file.nc</em>' for your resolution.
+ A copy of this should be in with the rest of the CAM
+ input files that are listed in the CAM "namelistin" in variable bnd_topo.
+ It will be named similarly to
+ <em class="file">.../something/else/more/topo-from-cami_0000-09-01_64x128_L26_c030918.nc</em>
+ </LI><br />
+ <LI>link or copy your CAM initial file <em class="file">caminput_#.nc</em>
+ to '<em class="file">caminput.nc</em>', which is the name
+ <em class="file">trans_pv_sv_time0</em> requires.
+ </LI>
+</UL>
+
+<P>
+Each run of trans_pv_sv_time0 will create a 'temp_ud' file,
+which should be renamed <em class="file">filter_ic.####</em>,
+where <em class="code">#### = 1,...,num_ens</em> (padded with 0s)
+is taken from the caminput_#.nc used as input.
+<!-- You might want to put these new filter_ic files in a directory that has MPI
+in the name, so that you know whether they work with Jamaica (new state vector order)
+or Iceland (old) -->.
+</P>
+
+<!--==================================================================-->
+<!--=================== DESCRIPTION OF A NAMELIST ===================-->
+<!--==================================================================-->
+
+<A NAME="Namelist"></A>
+<HR>
+<H2>NAMELIST</H2>
+<P>
+There is no namelist unique to this program.
+</P>
+
+<!--==================================================================-->
+<!-- Describe the Files Used by this module. -->
+<!--==================================================================-->
+
+<A NAME="FilesUsed"></A>
+<HR>
+<H2>FILES</H2>
+<P>
+still working on this part
+</P>
+
+<!--==================================================================-->
+<!-- Cite references, if need be. -->
+<!--==================================================================-->
+
+<A NAME="References"></A>
+<HR>
+<H2>REFERENCES</H2>
+<ul>
+<li> none </li>
+</ul>
+
+<!--==================================================================-->
+<!-- Describe all the error conditions and codes. -->
+<!--==================================================================-->
+
+<A NAME="Errors"></A>
+<HR>
+<H2>ERROR CODES and CONDITIONS</H2>
+<P>
+still working on this part
+</P>
+
+<H2>KNOWN BUGS</H2>
+<P>
+none at this time
+</P>
+
+<!--==================================================================-->
+<!-- Describe Future Plans. -->
+<!--==================================================================-->
+
+<A NAME="FuturePlans"></A>
+<HR>
+<H2>FUTURE PLANS</H2>
+<P>
+none at this time
+</P>
+
+<!--==================================================================-->
+<!-- Legalese & Metadata -->
+<!--==================================================================-->
+
+<A NAME="Legalese"></A>
+<HR>
+<H2>Terms of Use</H2>
+
+<P>
+DART software - Copyright 2004 - 2011 UCAR.<br>
+This open source software is provided by UCAR, "as is",<br>
+without charge, subject to all terms of use at<br>
+<a href="http://www.image.ucar.edu/DAReS/DART/DART_download">
+http://www.image.ucar.edu/DAReS/DART/DART_download</a>
+</P>
+
+<TABLE border=0 cellpadding=0 width=100% summary="">
+<TR><TD valign=top>Contact: </TD><TD> Kevin Raeder </TD></TR>
@@ Diff output truncated at 40000 characters. @@
More information about the Dart-dev
mailing list