Jump to DART Documentation Main Index
Utility program to create inflation restart files with constant values. Useful for a multi-step assimilation, so the values inf_initial_from_restart and inf_sd_initial_from_restart items in the &filter_nml namelist can be .TRUE. from the beginning.
This reads values from the namelist, prior_inf_mean, prior_inf_sd and/or post_inf_mean, post_inf_sd.
This program uses the information from the model_mod code to determine the number of items in the state vector. It must be compiled with the right model's model_mod, and if the items in the state vector are selectable by namelist options, the namelist when running this program must match exactly the namelist used during the assimilation run.
Alternatively you can use one of the standard NCO utilities like "ncap2" on a copy of another restart file to set the initial inflation mean, and another for the initial inflation standard deviation. Inflation mean and sd values look exactly like restart values, arranged by variable type like T, U, V, etc.
Depending on your version of the NCO utilities, you can use ncap2 to set the T,U and V inf values using one of two syntaxes:
ncap2 -s 'T=1.0;U=1.0;V=1.0' wrfinput_d01 input_priorinf_mean.nc ncap2 -s 'T=0.6;U=0.6;V=0.6' wrfinput_d01 input_priorinf_sd.nc -or- ncap2 -s 'T(:,:,:)=1.0;U(:,:,:)=1.0;V(:,:,:)=1.0' wrfinput_d01 input_priorinf_mean.nc ncap2 -s 'T(:,:,:)=0.6;U(:,:,:)=0.6;V(:,:,:)=0.6' wrfinput_d01 input_priorinf_sd.nc
Some versions of the NCO utilities change the full 3D arrays into a single scalar. If that's your result (check your output with ncdump -h) use the alternate syntax or a more recent version of the NCO tools.
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.
&fill_inflation_restart_nml input_state_files = '' write_prior_inf = .FALSE. prior_inf_mean = -88888.8888 prior_inf_sd = -88888.8888 write_post_inf = .FALSE. prior_inf_mean = -88888.8888 prior_inf_sd = -88888.8888 single_file = .FALSE. verbose = .FALSE. /
The namelist controls how the logging, namelist, messages, and general utility routines behave.
|input_state_files||character(:)||A template file that contains all of the variables in the state vector. If there is multiple domains you need to provide a file for each domain.|
|write_prior_inf||logical||Setting this to .TRUE. writes both the prior inflation mean and standard deviation file 'inflation_prior_mean', 'inflation_prior_sd'.|
|prior_inf_mean||real(r8)||Prior inflation mean value.|
|prior_inf_sd||real(r8)||Prior inflation standard deviation value.|
|write_post_inf||logical||Setting this to .TRUE. writes both the posterior inflation mean and standard deviation file 'inflation_post_mean', 'inflation_post_sd'.|
|post_inf_mean||real(r8)||Posterior inflation mean value.|
|post_inf_sd||real(r8)||Posterior inflation standard deviation value.|
|single_file||logical||Currently not supported, but would be used in the case where you have a single restart file that contains all of the ensemble members.|
|verbose||logical||Setting this to .TRUE. gives more output, and is generally used for debugging|
Here is an example of a typical namelist for fill_inflation_restart.
&fill_inflation_restart_nml input_state_files = 'caminput.nc' write_prior_inf = .TRUE. prior_inf_mean = 1.0 prior_inf_sd = 0.6 write_post_inf = .FALSE. prior_inf_mean = -88888.8888 prior_inf_sd = -88888.8888 single_file = .FALSE. verbose = .FALSE. /
Only works for models which have individual restart files and not the 'single_file' format, where all the ensemble members are contained in one file.
If requested we can implement the 'single_file' version of fill_inflation_restart.
|Contact:||DART core group|
|Revision:||$Revision: 12682 $|
|Change Date:||$Date: 2018-06-18 14:35:29 -0600 (Mon, 18 Jun 2018) $|
|Change history:||try "svn log" or "svn diff"|