MODULES / NAMELIST / FILES / REFERENCES / ERRORS / BUGS / PLANS

PROGRAM obs_diag

Contact: Tim Hoar
Reviewers:  
Revision: $Revision: 1.1 $
Release Name: $Name: post_iceland $
Change Date: $Date: 2005/10/10 23:19:08 $
Change history: see CVS log

OVERVIEW

Main program for observation-space diagnostics for the models with 1D locations. The model space is carved up into regions, hence the dependency on the location type. There is no discrimination between observation types, but the framework is still in the code - the main selection block is commented out. The result of the code is a pair of ASCII files that contain the RMS of the bias and the RMS of the spread of the prior (aka 'guess') and posterior (aka 'analysis') estimates as a function of time and region.

The namelist contains several unused features that are simply used to facilitate the matlab plotting routines until such time as the output is reformatted to a netCDF file. This documentation was created for the DA Workshop, summer 2005.

Optional namelist interface &obsdiag_nml may be read from file input.nml.




MODULES DIRECTLY USED

types_mod
obs_sequence_mod
obs_def_mod
location_mod
time_manager_mod
utilities_mod

MODULES INDIRECTLY USED

random_seq_mod
random_nr_mod
assim_model_mod
model_mod



NAMELIST

We adhere to the F90 standard of starting a namelist with an ampersand '&' and terminating with a slash '/'.

namelist / obsdiag_nml / 
      obs_sequence_name, obs_year, obs_month, obs_day,
      tot_days, iskip, level, obs_select, rat_cri,
      qc_threshold, bin_separation, bin_width

Discussion

This namelist is read in a file called input.nml

Contents Type Description
obs_sequence_name character(len=129) Contains name of observation sequence file. Default is "obs_seq.final"
obs_year integer not used - Default is 0.
obs_month integer not used - Default is 1.
obs_day integer not used - Default is 1.
tot_days integer not used - Default is 1.
iskip integer not used - Default is 0.
level integer not used - Default is 0.
obs_select integer not used - Default is 1.
rat_cri real(r8) Observation rejection ratio. If the following ratio is greater than rat_cri, the observation is rejected. abs(prior_mean - obsval) / sqrt( prior_spread + obs error variance). Since we don't have all the ensemble members (in general) we cannot calculate the covariance term that should be in the denominator, so it is not really the normalized distance. Default is 3.0.
qc_threshold real(r8) Maximum allowable QC value. Default is 4.0.
bin_separation integer The time between assimilations. Default is 3600 (seconds).
bin_width integer The window of time about the assimilation times in which to search for observations. Since the 1D models all have observations at exactly the assimilation times, this is usually zero for these models. Default is 0.



FILES

File formats

We intend to write the output as netCDF files eventually. Until then, here's the rosetta stone...
column 1day of observation
column 2seconds of observation
column 3rms of bias
column 4rms of spread
column 5number of observations
Columns 3,4,5 are repeated for each region
If there are no observations in a particular region, the default value of -99 is used for the bias and spread. The regions themselves are logged in ObsDiagAtts.m.


REFERENCES


ERROR CODES and CONDITIONS

RoutineMessageComment
get_last_obs No "last" observation in sequence Must have an incomplete observation sequence file.
get_first_obs No Observations in sequence. Empty observation sequence file.



KNOWN BUGS




FUTURE PLANS

Change output format to netCDF, eliminate reliance on ancillary plotting attributes file: ObsDiagAtts.m.

Discussion

None at this time.