pub struct LogConvexProblem {
pub obj_a: Array2<f64>,
pub obj_b: Array1<f64>,
pub con_a: Vec<Array2<f64>>,
pub con_b: Vec<Array1<f64>>,
pub eq_a: Array2<f64>,
pub eq_b: Array1<f64>,
}Expand description
The log-transformed convex problem produced by gp_to_convex.
Every posynomial constraint f(x) ≤ 1 becomes:
lse(A_row · y + b_row) ≤ 0where A is the matrix of exponents (rows = monomials, cols = variables)
and b is the vector of log-coefficients.
Fields§
§obj_a: Array2<f64>Exponent matrix for the objective (K₀ × n).
obj_b: Array1<f64>Log-coefficient vector for the objective (K₀,).
con_a: Vec<Array2<f64>>Per-constraint exponent matrices. len = m.
con_b: Vec<Array1<f64>>Per-constraint log-coefficient vectors. len = m.
eq_a: Array2<f64>Equality-constraint exponent rows (one per monomial equality).
eq_b: Array1<f64>Equality-constraint log-coefficients.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for LogConvexProblem
impl RefUnwindSafe for LogConvexProblem
impl Send for LogConvexProblem
impl Sync for LogConvexProblem
impl Unpin for LogConvexProblem
impl UnsafeUnpin for LogConvexProblem
impl UnwindSafe for LogConvexProblem
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.