program perfect_model_obs
Overview
Main program for creating synthetic observation sequences given a model for use in filter assimilations. Reads in an observation sequence file which has only observation definitions and generates synthetic observation values for an output observation sequence file. The execution of perfect_model_obs is controlled by the input observation sequence file and the model time-stepping capabilities in a manner analogous to that used by the filter program.
Namelist
This namelist is read from the file input.nml
. Namelists start with an ampersand ‘&’ and terminate with a slash ‘/’.
Character strings that contain a ‘/’ must be enclosed in quotes to prevent them from prematurely terminating the
namelist.
&perfect_model_obs_nml
single_file_in = .false.,
read_input_state_from_file = .false.,
input_state_files = "",
init_time_days = 0,
init_time_seconds = 0,
single_file_out = .false.,
output_state_files = "",
write_output_state_to_file = .false.,
output_interval = 1,
async = 0,
adv_ens_command = "./advance_model.csh",
tasks_per_model_advance = 1,
obs_seq_in_file_name = "obs_seq.in",
obs_seq_out_file_name = "obs_seq.out",
first_obs_days = -1,
first_obs_seconds = -1,
last_obs_days = -1,
last_obs_seconds = -1,
obs_window_days = -1,
obs_window_seconds = -1,
trace_execution = .false.,
output_timestamps = .false.,
print_every_nth_obs = 0,
output_forward_op_errors = .false.,
silence = .false.,
/
Item |
Type |
Description |
---|---|---|
read_input_state_from_file |
logical |
If false, model_mod must provide the input state. |
single_file_in |
logical |
Get all states from a single file. |
input_state_files |
character(len=256) dimension(MAX_NUM_DOMS) |
A list of files, one per domain. Each file must be a text file containing the name of the NetCDF file to open. |
write_output_state_to_file |
logical |
If false, state is not written out. |
single_file_out |
logical |
Write all states to a single file. |
output_state_files |
character(len=256) dimension(MAX_NUM_DOMS) |
A list of files, one per domain. Each file must be a text file containing the names of the NetCDF file to open. |
init_time_days |
integer |
If negative, don’t use. If non-negative, override the initial data time read from restart file. |
init_time_seconds |
integer |
If negative don’t use. If non-negative, override the initial data time read from restart file. |
output_interval |
integer |
Output state and observation diagnostics every nth assimilation time, n is output_interval. |
async |
integer |
Controls method for advancing model:
|
adv_ens_command |
character(len=129) |
Command sent to shell if async == 2 or 4. |
tasks_per_model_advance |
integer |
Number of tasks to use while advancing the model. |
obs_seq_in_file_name |
character(len=256) |
File name from which to read an observation sequence. |
obs_seq_out_file_name |
character(len=256) |
File name to which to write output observation sequence. |
first_obs_days |
integer |
If negative, don’t use. If non-negative, ignore any observations before this time. |
first_obs_seconds |
integer |
If negative, don’t use. If non-negative, ignore any observations before this time. |
last_obs_days |
integer |
If negative, don’t use. If non-negative, ignore any observations after this time. |
last_obs_seconds |
integer |
If negative, don’t use. If non-negative, ignore any observations after this time. |
obs_window_days |
integer |
If negative, don’t use. If non-negative, reserved for future use. |
obs_window_seconds |
integer |
If negative, don’t use. If non-negative, reserved for future use. |
trace_execution |
logical |
True means output very detailed messages about what routines are being called in the main loop. Useful if a job hangs or otherwise doesn’t execute as expected. |
output_timestamps |
logical |
True means output timestamps before and after the model advance and the forward observation computation phases. |
print_every_nth_obs |
integer |
If negative, don’t use. If non-negative, print a message noting the processing of every Nth observation. |
output_forward_op_errors |
logical |
True means output errors from forward observation operators. This is the ‘istatus’ error return code from the model interpolate routine. An ascii text file ‘forward_op_errors’ will be created in the current directory. Each line will contain an observation key number, and the istatus return code. |
silence |
logical |
True means output almost no runtime messages. Not recommended for general use, but can speed test programs if the execution time becomes dominated by the volume of output. |
Modules used
types_mod
utilities_mod
time_manager_mod
obs_sequence_mod
obs_def_mod
obs_model_mod
assim_model_mod
mpi_utilities_mod
random_seq_mod
ensemble_manager_mod
Files
observation sequence input file; name comes from obs_seq_in_file_name
observation sequence output file; name comes from obs_seq_out_file_name
input state vector file; name comes from restart_in_file_name
output state vector file; name comes from restart_out_file_name
perfect_model_mod.nml in input.nml
References
none