Given a gridname, fieldname and model time this routine will get data in a file whose
path is described in a user-provided data_table, do spatial and temporal interpolation if
necessary to convert data to model's grid and time.
Before using data_override a data_table must be created with the following entries:
gridname, fieldname_code, fieldname_file, file_name, ongrid, factor.
More explainations about data_table entries can be found in the source code (defining data_type)
If user wants to override fieldname_code with a const, set fieldname_file in data_table = ""
and factor = const
If user wants to override fieldname_code with data from a file, set fieldname_file = name in
the netCDF data file, factor then will be for unit conversion (=1 if no conversion required)
A field can be overriden globally (by default) or users can specify one or two regions in which
data_override will take place, field values outside the region will not be affected.
platform_mod
constants_mod
mpp_io_mod
mpp_mod
horiz_interp_mod
time_interp_external_mod
fms_io_mod
fms_mod
axis_utils_mod
mpp_domains_mod
time_manager_mod
call data_override_init
call call data_override(gridname,fieldname,data,time,override)
gridname | Grid name (Ocean, Ice, Atmosphere, Land) [character, dimension(*)] |
fieldname_code | Field name as used in the code (may be different from the name in NetCDF data file) [character, dimension(*)] |
time | model time [time_type] |
region1 | Restricts override to a rectangular region in lat,lon space.
This may not be a rectangular region in i,j space when the model grid is tripolar.
region1=(/lat_start, lat_end, lon_start, lon_end/)
Clarification regarding longitude: lon_start may be greater than lon_end.
The region overriden will be from lat_start eastward to lat_end.
e.g. if lat_start,lat_end = 180.,0.0 then the western hemisphere will be overriden. [real, dimension(4)] |
region2 | A second region to override. May be present only if region1 is also present. [real, dimension(4)] |
data_index |
[integer] |
data | array containing output data [real, dimension(:,:,:)] |
override | TRUE if the field is overriden, FALSE otherwise [logical] |