Ejemplo n.º 1
0
def linear_param_bvp(linear_param_dae, param_vars):
    def initial_value(p):
        return jnp.array([p, 2., 1.])

    t = Time(0., 1., time_grid=np.linspace(0., 1., 10))
    return ParameterInitialValueProblem(*param_vars, initial_value, t,
                                        linear_param_dae, 1)
Ejemplo n.º 2
0
def linear_param_bvp(linear_param_dae, param_vars):
    initial_value = lambda p: jnp.array([[1., 0.], [0., 0.]])  # noqa: E731
    final_value = lambda p: jnp.array([[0., 0.], [1., 0.]])  # noqa: E731
    inhomogeneity = lambda p: jnp.array([0., p])  # noqa: E731
    t = Time(0., np.pi / 2., time_grid=np.linspace(0., np.pi / 2., 10))
    bvs = ParameterBoundaryValues(*param_vars, initial_value, final_value,
                                  inhomogeneity, 2)
    return ParameterBoundaryValueProblem(*param_vars, t, linear_param_dae, bvs)
Ejemplo n.º 3
0
    def test_solve_localized(self, localized_bvp, localized_ivp,
                             localized_flow_prob):
        nodes = np.linspace(0, 1, 3)
        stepsize = 1e-4
        time_interval = Time(0., 1., time_grid=np.linspace(0., 1., 10))

        localized_bvp.init_solver(localized_flow_prob, localized_ivp, nodes,
                                  stepsize)
        localized_bvp.solve(time_interval)
Ejemplo n.º 4
0
def initial_value_problem(linear_dae):
    initial_value = np.array([1., 2.])
    time_interval = Time(0., 1.)
    return InitialValueProblem(initial_value, time_interval, linear_dae)
Ejemplo n.º 5
0
def flow_problem(linear_dae):
    time_interval = Time(0., 1.)
    flowprob = LinearFlow(time_interval, linear_dae)
    return flowprob
Ejemplo n.º 6
0
def variables3():
    loc_vars = InputStateVariables(2, 1, time=Time(0., 2.))
    hl_vars = ParameterContainer(2, domain=RNDomain(1))
    return hl_vars, loc_vars
Ejemplo n.º 7
0
def localized_ivp(localized_bvp):
    time_interval = Time(0., 1.)
    ivp = InitialValueProblem(np.zeros(2), time_interval,
                              localized_bvp.dynamical_system)
    return ivp
Ejemplo n.º 8
0
def localized_flow_prob(localized_bvp):
    time_interval = Time(0., 1.)
    flowprob = LinearFlow(time_interval, localized_bvp.dynamical_system)
    return flowprob
Ejemplo n.º 9
0
def pdoc_objective(q, s, r, m, variables2):
    time = Time(0., 2.)
    return ParameterLQRObjective(*variables2, time, q, s, r, m)
Ejemplo n.º 10
0
def pdoc_objective_2(q_2, s_2, r, m_2, variables3):
    time = Time(0., 2.)
    return ParameterLQRObjective(*variables3, time, q_2, s_2, r, m_2)
Ejemplo n.º 11
0
def pdoc_objective_3(q_3, s_3, r, m_3, variables3):
    time = Time(0., 2.)
    return ParameterLQRObjective(*variables3, time, q_3, s_3, r, m_3)
Ejemplo n.º 12
0
def bvp(linear_dae, boundary_values):
    time_interval = Time(0., 1.)
    return BoundaryValueProblem(time_interval, linear_dae, boundary_values)