#
# <next four lines automatically updated by CVS, do not edit>
# $Source: /home/thoar/CVS.REPOS/DART/work/README,v $ 
# $Revision: 1.8 $ 
# $Date: 2003/02/06 21:44:44 $ 
# $Author: thoar $ 
#
#                   - ensemble_1 -- |...!...............|
#                  /    ...         |...!...............|
#    ------------- -- ensemble_i -- |...!...............|
#                  \    ...         |...!...............|
#                   - ensemble_N -- |...!...............|
#
#    |           |  | ensemble      |   !output start ...
#    spin_up_steps  | spin-up steps | num_steps ........|


ens_size          [  20 ]  N in above diagram  
spin_up_steps     [   0 ]  steps past initial conditions before ANYTHING
ens_spin_up_steps [   0 ] 
num_steps         [ 200 ] *model* steps in assimilation experiment
output_start      [   0 ]
obs_freq          [   1 ]
cov_inflate       [ 1.01 ]
mean_inflate      [ 1.0 ]
restart           [ .FALSE. ]
add_on            [ .FALSE. ]
noise_amp         [ 0.0 ]

"lorenz_96_obs_def"

./seq_obs

new rms of ensemble mean  2.992207
new ensemble mean of rms  4.0356273
normalized ratio is  1.0232953

# Step 0: Observation Definitions are "implied" at this point

# Step 1: Define SETS of observations
 rm *.mod *.o                        ;# necessary ... create_obs_def.o ...
 ../compile_it create_obs_set_def    ;# build the executable
 ./create_obs_set_def                ;# answer the questions -OR- modify &
                                     ;# redirect create_obs_set_def.in
 ./create_obs_set_def < create_obs_set_def.in

# Step 2: Create SEQUENCES of observation SETS
 rm create_obs_set_def.o                 ;# necessary 
 ../compile_it create_obs_sequence   ;# build the executable
 ./create_obs_sequence               ;# answer the questions -OR- modify &
                                     ;# redirect create_obs_sequence.in

 ./create_obs_sequence < create_obs_sequence.in

# Step 3: Populate the sequences
 rm create_obs_sequence.o
 ../compile_it perfect_model_obs     ;# build the executable
 ./perfect_model_obs                 ;# you get the drift by now ...
                                     ;# perfect_model_obs.f90 creates file "true_state"
 
# Step 4: filter
 rm perfect_model_obs.o
 ../compile_it filter
 ./filter                            ;# asks for name of file that is 
                                     ;# result of "perfect_model_obs"

# As it turns out, the input.nml input for perfect_model_obs and filter
# create some peculiar restart scenarios. Jeff is working on clearing
# up these problems.  ~thoar/scripts/FullRun   is a script intended to
# illustrate how to execute a top-to-bottom run (but doesn't as of Jan 30).

filter: creates four files. These are to be replaced by netCDF files.  

   prior_obs_diagnostics	[prior_obs_unit]
                                obs_sequence_mod:write_obs_sequence()

   prior_diag			[prior_state_unit]
				assim_model_mod:init_diag_output(),
				assim_model_mod:output_diagnostics()

   posterior_obs_diagnostics    obs_sequence_mod:write_obs_sequence()

   posterior_diag               




./obs_sequence/filter.f90:
   init_diag_output(*)

   prior_state_unit = init_diag_output('prior_diag', 'prior ensemble state', &
                                       ens_size, ens_copy_meta_data)
   ! Initializes a diagnostic output file. Should be NetCDF shortly but
   ! for now just opens file and dumps stuff. A file_id is returned which
   ! is simply implemented as an integer unit number for now.

   do j = 1, ens_size      ! Advance the ensembles to this time
      call output_diagnostics(prior_state_unit, ens(j), j)
   enddo




./obs_sequence/filter.f90:open(unit = prior_obs_unit, file = 'prior_obs_diagnostics')


changed the location of the netcdf work.pc file ...
OK -- now verify the netcdf dump of the state vector worked ...

ncdump prior_state.nc ... read into Matlab?   the state vector ...



