- class foxes.models.turbine_models.Calculator(foxes.core.TurbineModel)[source]
Calculates variables based on given functions.
Attributes¶
- in_vars: list of str
The input farm variables
- out_vars: list of str
The output variables
- func: Function
The function: f(in0, in1, …, stsel) -> (out0, out1, …) where inX and outY are numpy.ndarrays and st_sel is the state-turbine selection slice or array. All arrays have shape (n_states, n_turbines).
Public members¶
- output_farm_vars(algo)[source]
The variables which are being modified by the model.
- classmethod new(tmodel_type, *args, **kwargs)[source]
Run-time turbine model factory.
- output_coords()[source]
Gets the coordinates of all output arrays
- ensure_variables(algo, mdata, fdata)[source]
Add variables to fdata, initialized with NaN
- run_calculation(algo, *data, out_vars, **calc_pars)[source]
Starts the model calculation in parallel, via xarray’s apply_ufunc.
- property model_id
Unique id based on the model type.
- 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
-
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
-
get_data(variable, target, lookup=
'smfp'
, mdata=None
, ...)[source] Getter for a data entry in the model object or provided data sources