automata4cps.cps.CPSComponent

class automata4cps.cps.CPSComponent(id, initial_q=(), initial_xt: list = (), initial_xk: list = (), dt=-1.0, p=None, blocked_states=None, cont_state_names=None, discr_state_names=None, discr_output_names=None, cont_output_names=None, use_observed_timings=False)

General hybrid system class based on scipy and simpy. Based on

__init__(id, initial_q=(), initial_xt: list = (), initial_xk: list = (), dt=-1.0, p=None, blocked_states=None, cont_state_names=None, discr_state_names=None, discr_output_names=None, cont_output_names=None, use_observed_timings=False)

Methods

__init__(id[, initial_q, initial_xt, ...])

apply_event(e)

context(q, past_t, past_p, t)

discrete_event_dynamics(previous_q, e, xt, xk, p)

The function updates system state given the event e.

finish(t, **kwargs)

finish_condition()

get_execution_data()

get_sim_state()

input(q, clock)

invariants(q, clock, xc, xd, y)

load_context(context)

Loads artifacts from the specified PythonModelContext that can be used by predict() when evaluating inputs.

on_entry(q, context)

output(q, e, clock, xt, xk, u, p)

predict(context, model_input)

Evaluates a pyfunc-compatible input and produces a pyfunc-compatible output.

predict_stream(context, model_input[, params])

Evaluates a pyfunc-compatible input and produces an iterator of output.

react(q, e, clock, xt, xk, u, p)

You can set self._d and self.x, but you must not

read_event(t, e[, clear_p, keep_p])

set_sim_state(q, e, p, y, block_event)

start(t[, q])

time_continuous_dynamics(t, xt, xk, q, u, p, y)

time_discrete_dynamics(t, xt, xk, q, u, p, y)

timed_transition(q, xc, xd, y[, ...])

update_input(u)

wait(q)

Attributes

overall_system