ODEIntegrator

ozone.ode_integrator.ODEIntegrator(ode_function, formulation, method_name, initial_conditions=None, static_parameters=None, dynamic_parameters=None, initial_time=None, final_time=None, normalized_times=None, times=None, **kwargs)

Create and return an OpenMDAO group containing the ODE integrator.

The returned group can be the model or a part of a larger model in OpenMDAO.

Parameters:

ode_function : ODEFunction

The ODE function instance representing the ‘f’ in dy_dt = f(t, y, x).

formulation : str

Formulation for solving the ODE: ‘time-marching’, ‘solver-based’, or ‘optimizer-based’.

method_name : str

The time integration method. The list of methods can be found in the documentation.

initial_conditions : dict or None

Optional dictionary of initial condition values keyed by state name. If not given here, it must be connected from outside the integrator group.

static_parameters : dict or None

Optional dictionary of static parameter values keyed by parameter name. If not given here, it must be connected from outside the integrator group.

dynamic_parameters : dict or None

Optional dictionary of static parameter values keyed by parameter name. If not given here, it must be connected from outside the integrator group.

initial_time : float or None

Only required if times is not given and not connected from outside the integrator group.

final_time : float or None

Only required if times is not given and not connected from outside the integrator group.

normalized_times : np.ndarray[:]

Vector of times given if initial & final times are provided or connected from the outside. If given, this vector is normalized to the [0, 1] interval. Not necessary if times is provided.

times : np.ndarray[:]

Vector of times required if initial time, final time, and normalized_times are not given.

Returns:

Group

The OpenMDAO Group instance representing the requested integrator.