[Fwd: Re: [Dart-dev] [3233] DART/trunk: Major update to
merge_obs_seq:]
Nancy Collins
nancy at ucar.edu
Wed Feb 13 11:37:39 MST 2008
sorry - i meant to cc the dev list as well with my answer.
n.
-------- Original Message --------
Subject: Re: [Dart-dev] [3233] DART/trunk: Major update to merge_obs_seq:
Date: Wed, 13 Feb 2008 11:35:07 -0700
From: Nancy Collins <nancy at ucar.edu>
To: Hui Liu <hliu at ucar.edu>
References: <200802131708.m1DH88In015659 at subversion.ucar.edu>
<web-15464517 at mail.ucar.edu>
you can do it with a little script that sets the
input.nml first/last times and sets the output file
with the same single input file, and runs merge
multiple times. i have a test script which does
something close - i'll attach a script which you
can start with.
n.
Hui Liu wrote:
> Nancy et al:
>
> This is very convenient tool! Is there any similar stuff
> for splitting some big obs_seq files, say a ten-day file into 10 daily
> files
> ?
> Another thing is should we rename the workshop_setup.csh to a more
> meaningful name,
> such as compile_dart.csh? It is not so straight forward for some new
> users
> to understand the meaning of the script.
> Thanks.
>
> hui
>
-------------- next part --------------
#!/bin/ksh
# split a single obs_seq file into 10 daily files
# THIS SCRIPT OVERWRITES YOUR input.nml FILE, SO
# SAVE A COPY FIRST!!
# you'll have to fix the obs_kind_nml values
# to match your model.
# set up constant part at beginning
cat > input.nml.head <<EOF
&obs_sequence_nml
write_binary_obs_sequence = .false. /
&obs_kind_nml
assimilate_these_obs_types = 'RAW_STATE_VARIABLE' /
&utilities_nml
TERMLEVEL = 1,
module_details = .false.,
logfilename = 'dart_log.out' /
EOF
###############################
# do one of these per day - you need to set
# the first/last day to be the right day
cat input.nml.head - > input.nml <<EOF
&merge_obs_seq_nml
num_input_files = 1,
filename_seq = 'obs_seq.10days',
filename_out = 'obs_seq.day1',
first_obs_days = 149800,
first_obs_seconds = 0,
last_obs_days = 149800,
last_obs_seconds = 86399,
/
EOF
./merge_obs_seq
###############################
cat input.nml.head - > input.nml <<EOF
&merge_obs_seq_nml
num_input_files = 1,
filename_seq = 'obs_seq.10days',
filename_out = 'obs_seq.day2',
first_obs_days = 149801,
first_obs_seconds = 0,
last_obs_days = 149801,
last_obs_seconds = 86399,
/
EOF
./merge_obs_seq
# etc
More information about the Dart-dev
mailing list