iwopy.core.OptFunctionSubset.ana_deriv(vars_int, vars_float, var, components=None)[source]

Calculates the analytic derivative, if possible.

Use numpy.nan if analytic derivatives cannot be calculated.

Parameters

vars_int: np.array

The integer variable values, shape: (n_vars_int,)

vars_float: np.array

The float variable values, shape: (n_vars_float,)

var: int

The index of the differentiation float variable

components: list of int

The selected components, or None for all

Returns

deriv: numpy.ndarray

The derivative values, shape: (n_sel_components,)