el0ps.penalty.Bounds¶
- class el0ps.penalty.Bounds(x_lb, x_ub)¶
Bound-constraint
BasePenalty
penalty function.The splitting terms are expressed as
\[\begin{split}h_i(x_i) = \begin{cases} 0 & \text{if } x^{\text{lb}}_i \leq x_i \leq x^{\text{ub}}_i \\ +\infty & \text{otherwise} \end{cases}\end{split}\]for some \(x^{\text{lb}}_i < 0\) and \(x^{\text{ub}}_i > 0\).
- Parameters:
- x_lb: NDArray
Vector or lower bounds.
- x_ub: NDArray
Vector of upper bounds.
- __init__(x_lb, x_ub)¶
Methods
__init__
(x_lb, x_ub)bind_model
(model)Impose an constraint associated with the penalty function in a pyomo model.
conjugate
(i, x)Value of the convex conjugate of the i-th splitting term of the penalty function at
x
.conjugate_subdiff
(i, x)Subdifferential of the conjugate of the i-th splitting term of the penalty function at
x
, returned as an interval.get_spec
()Specify the numba types of the class attributes.
param_bndry_neg
(i, lmbd)Infimum of the set
self.subdiff(i, tau)
wheretau = self.param_limit_neg(i, lmbd)
.param_bndry_pos
(i, lmbd)Supremum of the set
self.subdiff(i, tau)
wheretau = self.param_limit_pos(i, lmbd)
.param_limit_neg
(i, lmbd)Infimum of the set
self.conjugate_subdiff(i, tau)
wheretau = self.param_slope_neg(i, lmbd)
.param_limit_pos
(i, lmbd)Supremum of the set
self.conjugate_subdiff(i, tau)
wheretau = self.param_slope_pos(i, lmbd)
.param_slope_neg
(i, lmbd)Infimum of the set
{x in R | self.conjugate(i, x) <= lmbd}
.param_slope_pos
(i, lmbd)Supremum of the set
{x in R | self.conjugate(i, x) <= lmbd}
.params_to_dict
()Returns the parameters name and value used to initialize the class instance.
prox
(i, x, eta)Proximity operator of the i-th splitting term of the penalty function weighted by
eta
atx
.subdiff
(i, x)Subdifferential of the i-th splitting term of the penalty function at
x
, returned as an interval.value
(i, x)Value of the i-th splitting term of the penalty function at
x
.