class foxes.input.states.FieldData(foxes.input.states.DatasetStates)[source]

Heterogeneous ambient states on a regular horizontal grid in NetCDF format.

Attributes

states_coord: str

The states coordinate name in the data

x_coord: str

The x coordinate name in the data

y_coord: str

The y coordinate name in the data

h_coord: str

The height coordinate name in the data

weight_ncvar: str

Name of the weight data variable in the nc file(s)

bounds_extra_space: float or str

The extra space, either float in m, or str for units of D, e.g. ‘2.5D’

height_bounds: tuple, optional

The (h_min, h_max) height bounds in m. Defaults to H +/- 0.5*D

Examples

Simplistic example of the NetCDF structure:

>>>    Dimensions:  (state: 2, h: 2, y: 2, x: 2)
>>>    Coordinates:
>>>    * state    (state) int32 8B 0 1
>>>    * h        (h) float32 8B 0.0 300.0
>>>    * y        (y) float32 8B 0.0 2.5e+03
>>>    * x        (x) float32 8B 0.0 2.5e+03
>>>    Data variables:
>>>        ws       (state, h, y, x) float32 64B ...
>>>        wd       (state, h, y, x) float32 64B ...

Public members

FieldData(*args, states_coord='Time', x_coord='UTMX', ...)[source]

Constructor.

load_data(algo, verbosity=0)[source]

Load and/or create all model data that is subject to chunking.

property data_source

The data source

preproc_first(algo, data, cmap, vars, bounds_extra_space, ...)[source]

Preprocesses the first file.

gen_states_split_size()[source]

Generator for suggested states split sizes for output writing.

set_running(algo, data_stash, sel=None, isel=None, verbosity=0)[source]

Sets this model status to running, and moves all large data to stash.

unset_running(algo, data_stash, sel=None, isel=None, verbosity=0)[source]

Sets this model status to not running, recovering large data from stash

output_point_vars(algo)[source]

The variables which are being modified by the model.

size()[source]

The total number of states.

index()[source]

The index list

get_calc_data(mdata, cmap, variables)[source]

Gathers data for calculations.

interpolate_data(idims, icrds, d, pts, vrs, times)[source]

Interpolates data to points.

calculate(algo, mdata, fdata, tdata)[source]

The main model calculation.

reset(algo=None, states_sel=None, states_loc=None, verbosity=0)[source]

Reset the states, optionally select states

classmethod new(states_type, *args, **kwargs)[source]

Run-time states factory.

output_coords()[source]

Gets the coordinates of all output arrays

ensure_output_vars(algo, tdata)[source]

Ensures that the output variables are present in the target data.

run_calculation(algo, *data, out_vars, **calc_pars)[source]

Starts the model calculation in parallel.

__repr__()[source]

Return repr(self).

property model_id

Unique id based on the model type.

var(v)[source]

Creates a model specific variable name.

unvar(vnm)[source]

Translates model specific variable name to origninal variable name.

property initialized

Initialization flag.

sub_models()[source]

List of all sub-models

initialize(algo, verbosity=0, force=False)[source]

Initializes the model.

property running

Flag for currently running models

finalize(algo, verbosity=0)[source]

Finalizes the model.

get_data(variable, target, lookup='smfp', mdata=None, ...)[source]

Getter for a data entry in the model object or provided data sources