# 6.21. prescribed_data.nml¶

This file contains a variable number of namelists that are used to prescribe time-varying input data that is not meteorological forcing. The namelist JULES_PRESCRIBED should occur only once at the top of the file. The value of n_datasets in JULES_PRESCRIBED then determines how many times the namelist JULES_PRESCRIBED_DATASET should occur.

## 6.21.1. JULES_PRESCRIBED namelist members¶

JULES_PRESCRIBED::n_datasets
Type: integer >= 0 0

The number of datasets that will be specified using instances of the JULES_PRESCRIBED_DATASET namelist.

## 6.21.2. JULES_PRESCRIBED_DATASET namelist members¶

This namelist should occur n_datasets times. Each occurrence of this namelist contains information about a single dataset (i.e. set of related files).

Members used to specify the start, end and period of the data

JULES_PRESCRIBED_DATASET::data_start
JULES_PRESCRIBED_DATASET::data_end
Type: character None

The times of the start of the first timestep of data and the end of the last timestep of data.

Each run of JULES (configured in timesteps.nml) can use part or all of the specified data. However, there must be data for all times between run start and run end (determined by main_run_start, main_run_end, spinup_start and spinup_end).

The times must be given in the format:

"yyyy-mm-dd hh:mm:ss"

JULES_PRESCRIBED_DATASET::data_period
Type: integer -2, -1 or > 0 None

The period, in seconds, of the data.

Special cases:

-1: Monthly data
-2: Yearly data
JULES_PRESCRIBED_DATASET::is_climatology
Type: logical F

Indicates whether the data is to be used as a climatology (use the same data for every year).

TRUE
Interpret the data as a climatology. data_start and data_end must be such that exactly one year of data is specified.
FALSE
Do not interpret the data as a climatology.

Members used to specify the files containing the data

Type: logical F

Switch controlling how data file names are determined for a given time.

TRUE
Use a list of data file names with times of first data.
FALSE
Use a single data file for all times or a template describing the names of the data files.
JULES_PRESCRIBED_DATASET::nfiles
Type: integer >= 0 0

Only used if read_list = TRUE.

The number of data files to read name and time of first data for.

JULES_PRESCRIBED_DATASET::file
Type: character None

If read_list = TRUE, this is the file to read the list of data file names and times from. Each line should be of the form:

'/data/file', 'yyyy-mm-dd hh:mm:ss'


In this case data file names may contain variable name templating only, with the proviso that either no file names use variable name templating or all file names do. The files must appear in chronological order.

If read_list = FALSE, this is either the single data file (if no templating is used) or a template for data file names. Both time and variable name templating may be used.

Members used to specify the provided variables

JULES_PRESCRIBED_DATASET::nvars
Type: integer >= 0 0

The number of variables that the dataset will provide.

See List of supported variables for the supported variables.

JULES_PRESCRIBED_DATASET::var
Type: character(nvars) None

List of variable names as recognised by JULES (see List of supported variables). Names are case sensitive.

Note

For ASCII files, variable names must be in the order they appear in the file.

JULES_PRESCRIBED_DATASET::var_name
Type: character(nvars) None

For each JULES variable specified in var, this is the name of the variable in the file(s) containing the data.

Note

For ASCII files, this is not used - only the order in the file matters, as described above.

JULES_PRESCRIBED_DATASET::tpl_name
Type: character(nvars) None

For each JULES variable specified in var, this is the string to substitute into the file name(s) in place of the variable name substitution string.

If the file name(s) do not use variable name templating, this is not used.

JULES_PRESCRIBED_DATASET::interp
Type: character(nvars) None

For each JULES variable specified in var, this indicates how the variable is to be interpolated in time (see Temporal interpolation).

### 6.21.2.1. List of supported variables¶

All variables input using prescribed_data.nml must have a time dimension using time_dim_name.

In theory, any variable with an entry in the subroutine populate_var in model_interface_mod (see I/O framework) can be updated via this mechanism, and the use of any of these variables is not explicitly prevented. However, it is up to the user to assess whether using this mechanism to update any particular variable is appropriate or desirable.

The use of the following variables is explicitly supported:

Name Description Levels dimension(s) required in files
ozone

Surface ozone concentration (ppb).

Note

Required if l_o3_damage = TRUE.

None
canht PFT canopy height (m). Single levels dimension of size npft using pft_dim_name.
lai PFT leaf area index. Single levels dimension of size npft using pft_dim_name.
albobs_sw

Observed SW diffuse albedo.

Note

Required if l_albedo_obs = TRUE and l_spec_albedo = FALSE.

None
albobs_vis

Observed VIS diffuse albedo.

Note

Required if l_albedo_obs = TRUE and l_spec_albedo = TRUE.

None
albobs_nir

Observed NIR diffuse albedo.

Note

Required if l_albedo_obs = TRUE and l_spec_albedo = TRUE.

None
co2_mmr
Concentration of atmospheric CO2, expressed as a mass mixing
ratio.

Note

A single value of co2_mmr is applied globally. Data must be supplied for each gridpoint, but only the value of the first grid-point is used.

None
frac_agr Fractional area of agricultural land in each gridbox. None