jaxmodel.approximations

class jaxmodel.approximations.LinearizationData(A, b, C, d, h_val, g_val)[source]

Bases: NamedTuple

Create new instance of LinearizationData(A, b, C, d, h_val, g_val)

A: Array

Alias for field number 0

b: Array

Alias for field number 1

C: Array

Alias for field number 2

d: Array

Alias for field number 3

h_val: Array

Alias for field number 4

g_val: Array

Alias for field number 5

class jaxmodel.approximations.QuadraticObjectiveData(grad_f, Q, Q_diag, c)[source]

Bases: NamedTuple

Create new instance of QuadraticObjectiveData(grad_f, Q, Q_diag, c)

grad_f: Array

Alias for field number 0

Q: Array

Alias for field number 1

Q_diag: Array

Alias for field number 2

c: Array

Alias for field number 3

class jaxmodel.approximations.SQPSubproblemData(objective, constraints, l, u)[source]

Bases: NamedTuple

Create new instance of SQPSubproblemData(objective, constraints, l, u)

objective: QuadraticObjectiveData

Alias for field number 0

constraints: LinearizationData

Alias for field number 1

l: Array | None

Alias for field number 2

u: Array | None

Alias for field number 3

jaxmodel.approximations.linearize_constraints_data(eq_fun, ineq_fun, jac_eq, jac_ineq, params, y)[source]
jaxmodel.approximations.linearize_constraints(eq_fun, ineq_fun, jac_eq, jac_ineq, params, y)[source]
jaxmodel.approximations.quadraticize_objective_data(grad_fun, hess_fun, diag_hess_fun, params, y, rho: float = 1.0, use_diagonal_hessian: bool = True, diag_floor: float | None = None)[source]
jaxmodel.approximations.quadraticize_objective(grad_fun, hess_fun, diag_hess_fun, params, y, rho: float = 1.0, use_diagonal_hessian: bool = True, diag_floor: float | None = None)[source]
jaxmodel.approximations.build_sqp_subproblem_data(eq_fun, ineq_fun, jac_eq, jac_ineq, grad_fun, hess_fun, diag_hess_fun, lower_fun, upper_fun, params, y, rho: float = 1.0, use_diagonal_hessian: bool = True, diag_floor: float | None = None)[source]
jaxmodel.approximations.build_sqp_data(eq_fun, ineq_fun, jac_eq, jac_ineq, grad_fun, hess_fun, diag_hess_fun, lower_fun, upper_fun, params, y, rho: float = 1.0, use_diagonal_hessian: bool = True, diag_floor: float | None = None)[source]