Skip to main content

Quadratic

Struct Quadratic 

Source
pub struct Quadratic {
    pub final_x: Option<[Number; 2]>,
    pub final_obj: Number,
}

Fields§

§final_x: Option<[Number; 2]>§final_obj: Number

Trait Implementations§

Source§

impl Debug for Quadratic

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Quadratic

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl TNLP for Quadratic

Source§

fn get_nlp_info(&mut self) -> Option<NlpInfo>

Required. Problem dimensions and triplet index style.
Source§

fn get_bounds_info(&mut self, b: BoundsInfo<'_>) -> bool

Required. Variable / constraint bounds.
Source§

fn get_starting_point(&mut self, sp: StartingPoint<'_>) -> bool

Required. Initial primal (and optionally dual) point.
Source§

fn eval_f(&mut self, x: &[Number], _new_x: bool) -> Option<Number>

Required. Objective value at x.
Source§

fn eval_grad_f( &mut self, x: &[Number], _new_x: bool, grad: &mut [Number], ) -> bool

Required. Objective gradient at x into grad_f.
Source§

fn eval_g(&mut self, _x: &[Number], _new_x: bool, _g: &mut [Number]) -> bool

Required. Constraint values g(x).
Source§

fn eval_jac_g( &mut self, _x: Option<&[Number]>, _new_x: bool, _mode: SparsityRequest<'_>, ) -> bool

Required. Jacobian of g. Sparsity vs. values selected by mode. x and new_x are unused on the structure call.
Source§

fn eval_h( &mut self, _x: Option<&[Number]>, _new_x: bool, obj_factor: Number, _lambda: Option<&[Number]>, _new_lambda: bool, mode: SparsityRequest<'_>, ) -> bool

Required for exact Hessian, optional for L-BFGS. Hessian of the Lagrangian. Default returns false (signals to %Ipopt that quasi-Newton must be used).
Source§

fn finalize_solution(&mut self, sol: Solution<'_>, _d: &IpoptData, _q: &IpoptCq)

Required. Receives the final iterate after solve.
Source§

fn get_var_con_metadata( &mut self, _var: &mut MetaData, _con: &mut MetaData, ) -> bool

Provide variable/constraint metadata (e.g. idx_names). Default: no metadata.
Source§

fn get_scaling_parameters(&mut self, _req: ScalingRequest<'_>) -> bool

User-supplied scaling, used only when nlp_scaling_method=user-scaling. Default: declines.
Source§

fn get_variables_linearity(&mut self, _types: &mut [Linearity]) -> bool

Variable linearity tags (used by Bonmin, not by Ipopt).
Source§

fn get_objective_variables_linearity( &mut self, _types: &mut [Linearity], ) -> bool

Per-variable linearity with respect to the objective only (a pounce extension; upstream has no objective-scoped query). NonLinear iff the objective’s nonlinear part depends on the variable; a variable that enters the objective only linearly (or not at all) is Linear even when it is nonlinear in a constraint. Consumed by presolve’s Phase-0 objective-coupling guard, which must not mistake constraint-only nonlinearity for objective coupling. Default: declines (slice untouched).
Source§

fn get_constraints_linearity(&mut self, _types: &mut [Linearity]) -> bool

Constraint linearity tags. Used by adaptive-mu’s nlp_scaling_method=equilibration-based.
Source§

fn get_number_of_nonlinear_variables(&mut self) -> i32

Number of variables that appear nonlinearly. Returning -1 means “treat all as nonlinear” (the Ipopt default).
Source§

fn get_list_of_nonlinear_variables( &mut self, _pos_nonlin_vars: &mut [i32], ) -> bool

List of nonlinear variable indices, in the index style returned from Self::get_nlp_info.
Source§

fn derivative_proofs(&mut self) -> DerivativeProofs

What this model can prove about the constancy of its own derivatives (gh #588, phase Q6). Read more
Source§

fn wants_intermediate_callback(&self) -> bool

Does Self::intermediate_callback do anything with its payload? Read more
Source§

fn update_with_barrier(&mut self, _mu: f64) -> bool

A model whose functions are coupled to the barrier parameter: called by the interior-point loop after every μ update with the new μ. Return true when the model’s functions changed as a result; the loop then discards every evaluation cached at the current point and resets the line search (the filter’s entries were measured against the old functions). The bounds must not change. Read more
Source§

fn intermediate_callback( &mut self, _stats: IterStats, _ip_data: &IpoptData, _ip_cq: &IpoptCq, ) -> bool

Per-iteration intermediate callback. Returning false requests early termination with User_Requested_Stop.
Source§

fn wants_current_iterate(&self) -> bool

Will Self::intermediate_callback read the live iterate (crate::live_iterate::with_current_user_iterate, the C API’s GetIpoptCurrentIterate / GetIpoptCurrentViolations)? Read more
Source§

fn finalize_metadata(&mut self, _var: &MetaData, _con: &MetaData)

Final metadata pass — called just before Self::finalize_solution. Default does nothing.
Source§

fn is_presolve_wrapper(&self) -> bool

Whether this TNLP is already an explicit generic-presolve wrapper. Read more
Source§

fn scaling_factors(&self) -> Option<Vec<f64>>

The per-variable scaling factors this decorator applies, if it is a scaling wrapper (gh#486). Consumers that read the algorithm’s iterate rather than the finalize_solution payload see scaled coordinates and need these to undo the substitution. A transparent decorator should forward the inner answer.
Source§

fn presolve_infeasibility_proof(&self) -> Option<InfeasibilityProof>

A proof that this problem has no feasible point, if presolve found one. None (the default) means “not proved” — which is not the same as “feasible”. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> ByRef<T> for T

Source§

fn by_ref(&self) -> &T

Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Imply<T> for U
where T: ?Sized, U: ?Sized,

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

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 more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more