simulai.utilities package

Submodules

simulai.utilities.lorenz_solver module

simulai.utilities.lorenz_solver.lorenz_solver(rho, beta, sigma, T, dt, data_path, initial_state, solver='RK4', **kwargs) object[source]

Parameters

rho: float beta: sigma T: int dt: float data_path: str initial_state: List[float]

Returns

(np.ndarray, np.ndarray)

the full path to the directory that was created to store the results of the simulation

simulai.utilities.lorenz_solver.lorenz_solver_forcing(rho, beta, sigma, T, dt, data_path, initial_state, forcing=None, **kwargs)[source]

Parameters

rho: float beta: sigma T: int dt: float data_path: str initial_state: List[float]

Returns

(np.ndarray, np.ndarray)

the full path to the directory that was created to store the results of the simulation

simulai.utilities.lotka_volterra_solver module

class simulai.utilities.lotka_volterra_solver.LotkaVolterra(alpha=None, beta=None, gamma=None, delta=None)[source]

Bases: object

eval(state: Optional[ndarray] = None, t: Optional[float] = None) ndarray[source]
run(initial_state, t)[source]

simulai.utilities.opinf_deviation module

class simulai.utilities.opinf_deviation.OpInfDeviation(A_hat: Optional[ndarray] = None, H_hat: Optional[ndarray] = None)[source]

Bases: object

compile() None[source]
eval_error(u: Optional[ndarray] = None, epsilon: Optional[array] = None) ndarray[source]

Evaluating error :param u: reference solution :type u: np.ndarray :param epsilon: error associated to u :type epsilon: np.ndarray :return: error :rtype: np.ndarray

eval_jacobian(u: Optional[ndarray] = None, epsilon: Optional[ndarray] = None) ndarray[source]

Evaluating error Jacobian :param u: reference solution :type u: np.ndarray :param epsilon: error associated to u :type epsilon: np.ndarray :return: error Jacobian :rtype: np.ndarray

lambdify(expression: Optional[MatrixExpr] = None) callable[source]
save(name: Optional[str] = None, path: Optional[str] = None) None[source]

Complete saving :param path: path to the saving directory :type path: str :param name: name for the model :type name: str :return: nothing

simulai.utilities.oscillator_solver module

simulai.utilities.oscillator_solver.main()[source]
simulai.utilities.oscillator_solver.oscillator_solver(T, dt, initial_state, extra_params=None)[source]

Parameters

T: int dt: float initial_state: np.array

Returns

np.ndarray, np.ndarray

simulai.utilities.oscillator_solver.oscillator_solver_forcing(T, dt, initial_state, forcing=None, p=3, extra_params=None)[source]

Parameters

T: int dt: float initial_state: np.array

Returns

np.ndarray, np.ndarray

simulai.utilities.problem_classes module

class simulai.utilities.problem_classes.LorenzSystem(rho, sigma, beta, forcing: bool = False, use_t: bool = False)[source]

Bases: object

jacobian(state, e, w, dt)[source]
class simulai.utilities.problem_classes.NonlinearOscillator(forcing: bool = False, p: int = 3, alpha1=-0.1, alpha2=-2, beta1=2, beta2=-0.1)[source]

Bases: object

Module contents