Beispiel #1
0
def param_control_2(variables3):

    ll_vars = NullVariables()

    @jax.jit
    def e(p, t):
        q = p[1]
        return jnp.array([[1., 0.], [q, 0.]])

    @jax.jit
    def a(p, t):
        q = p[1]
        return jnp.array([[-1., 0.], [-q, 1.]])

    @jax.jit
    def b(p, t):
        q = p[1]
        return jnp.array([[1.], [q]])

    @jax.jit
    def c(p, t):
        return jnp.identity(2)

    @jax.jit
    def d(p, t):
        return np.array([[0.]])

    @jax.jit
    def f(p, t):
        return np.array([0., 0.])

    return LinearParameterControlSystem(ll_vars, *variables3, e, a, b, c, d, f)
Beispiel #2
0
def param_control_3(variables3, request):
    fix_p = request.param
    ll_vars = NullVariables()

    @jax.jit
    def e(p, t):
        q = p[1]
        return jnp.array([[1., 0.], [q, 0.]])

    @jax.jit
    def a(p, t):
        q = p[1]
        return jnp.array([[-1., 0.], [-q, 1.]])

    @jax.jit
    def b(p, t):
        q = p[1]
        return jnp.array([[1.], [q]])

    @jax.jit
    def c(p, t):
        return jnp.identity(2)

    @jax.jit
    def d(p, t):
        return jnp.array([[0.]])

    @jax.jit
    def f(p, t):
        q_0 = p[0]
        q = p[1]
        return jnp.array([1., q + fix_p + q_0])

    return LinearParameterControlSystem(ll_vars, *variables3, e, a, b, c, d, f)
Beispiel #3
0
def param_control(variables2):

    ll_vars = NullVariables()

    def e(p, t):
        return np.array([[1.]])

    def a(p, t):
        return np.array([[-1.]])

    def b(p, t):
        return np.array([[1.]])

    def c(p, t):
        return np.array([[1.]])

    def d(p, t):
        return np.array([[0.]])

    def f(p, t):
        return np.array([0.])

    return LinearParameterControlSystem(ll_vars, *variables2, e, a, b, c, d, f)
def param_vars():
    states = StateVariablesContainer(2)
    domain = RNDomain(1)
    parameters = ParameterContainer(1, domain)
    null_vars = NullVariables()
    return null_vars, parameters, states
Beispiel #5
0
def variables():
    domain = RNDomain(1)
    parameters = ParameterContainer(1, domain)
    state_input = InputStateVariables(n_states=2, m_inputs=1)
    null_vars = NullVariables()
    return null_vars, parameters, state_input
def nlsq_2(nlsq_obj_2, variables3):
    variables = (variables3[1], NullVariables(), variables3[0])
    return NonLinearLeastSquares(nlsq_obj_2, *variables)
def nlsq_3(nlsq_obj_3, variables2):
    variables = (variables2[1], NullVariables(), variables2[0])
    return NonLinearLeastSquares(nlsq_obj_3, *variables)
def nlsq_obj_3(f_nlsq_3, variables2):
    variables = (variables2[1], NullVariables(), variables2[0])
    return optimization.objectives.NonLinearLeastSquares(*variables, f_nlsq_3)
def nlsq_obj_2(f_nlsq_2, variables3):
    variables = (variables3[1], NullVariables(), variables3[0])
    return optimization.objectives.NonLinearLeastSquares(*variables, f_nlsq_2)
Beispiel #10
0
 def mloc_object(self, opt):
     optimizations = [opt[0], opt[0]]
     variableslist = [NullVariables(), NullVariables()]
     mloc = MultiLevelOptimalControl(optimizations, variableslist)
     return mloc