pub struct PounceOptions {
pub universal: UniversalOptions,
pub tol: Option<f64>,
pub max_iter: Option<u32>,
pub print_level: Option<u32>,
pub mu_strategy: Option<MuStrategy>,
pub algorithm: Option<PounceAlgorithm>,
pub extra: Vec<(String, PounceOptionValue)>,
/* private fields */
}Expand description
POUNCE-specific solver options.
For more information about POUNCE’s options, see the documented option reference.
Invalid option names or out-of-range values are reported by POUNCE and
surface as a SolverError::Backend at
solve time.
UniversalOptions mapping:
time_limit -> max_cpu_time,
verbose -> print_level 5 (else 0) and captures the iteration log
into SolverResult::raw_log,
threads is ignored.
Fields§
§universal: UniversalOptions§tol: Option<f64>Desired convergence tolerance (tol).
max_iter: Option<u32>Iteration limit (max_iter).
print_level: Option<u32>Output verbosity 0–12 (print_level); overrides verbose.
mu_strategy: Option<MuStrategy>Barrier parameter update strategy (mu_strategy).
algorithm: Option<PounceAlgorithm>POUNCE’s top-level solve algorithm. Defaults to the interior-point method when omitted.
extra: Vec<(String, PounceOptionValue)>Escape hatch: raw POUNCE options applied last.
Implementations§
Source§impl PounceOptions
impl PounceOptions
Sourcepub fn mu_max_fact(self, v: f64) -> Self
pub fn mu_max_fact(self, v: f64) -> Self
Set the POUNCE mu_max_fact option.
Sourcepub fn mu_linear_decrease_factor(self, v: f64) -> Self
pub fn mu_linear_decrease_factor(self, v: f64) -> Self
Set the POUNCE mu_linear_decrease_factor option.
Sourcepub fn mu_superlinear_decrease_power(self, v: f64) -> Self
pub fn mu_superlinear_decrease_power(self, v: f64) -> Self
Set the POUNCE mu_superlinear_decrease_power option.
Sourcepub fn barrier_tol_factor(self, v: f64) -> Self
pub fn barrier_tol_factor(self, v: f64) -> Self
Set the POUNCE barrier_tol_factor option.
Sourcepub fn adaptive_mu_globalization(self, v: impl Into<String>) -> Self
pub fn adaptive_mu_globalization(self, v: impl Into<String>) -> Self
Set the POUNCE adaptive_mu_globalization option.
Sourcepub fn quality_function_norm_type(self, v: impl Into<String>) -> Self
pub fn quality_function_norm_type(self, v: impl Into<String>) -> Self
Set the POUNCE quality_function_norm_type option.
Sourcepub fn quality_function_centrality(self, v: impl Into<String>) -> Self
pub fn quality_function_centrality(self, v: impl Into<String>) -> Self
Set the POUNCE quality_function_centrality option.
Sourcepub fn quality_function_balancing_term(self, v: impl Into<String>) -> Self
pub fn quality_function_balancing_term(self, v: impl Into<String>) -> Self
Set the POUNCE quality_function_balancing_term option.
Sourcepub fn quality_function_max_section_steps(self, v: i32) -> Self
pub fn quality_function_max_section_steps(self, v: i32) -> Self
Set the POUNCE quality_function_max_section_steps option.
Sourcepub fn quality_function_section_sigma_tol(self, v: f64) -> Self
pub fn quality_function_section_sigma_tol(self, v: f64) -> Self
Set the POUNCE quality_function_section_sigma_tol option.
Sourcepub fn quality_function_section_qf_tol(self, v: f64) -> Self
pub fn quality_function_section_qf_tol(self, v: f64) -> Self
Set the POUNCE quality_function_section_qf_tol option.
Sourcepub fn adaptive_mu_safeguard_factor(self, v: f64) -> Self
pub fn adaptive_mu_safeguard_factor(self, v: f64) -> Self
Set the POUNCE adaptive_mu_safeguard_factor option.
Sourcepub fn adaptive_mu_monotone_init_factor(self, v: f64) -> Self
pub fn adaptive_mu_monotone_init_factor(self, v: f64) -> Self
Set the POUNCE adaptive_mu_monotone_init_factor option.
Sourcepub fn adaptive_mu_restore_previous_iterate(self, v: bool) -> Self
pub fn adaptive_mu_restore_previous_iterate(self, v: bool) -> Self
Set the POUNCE adaptive_mu_restore_previous_iterate option.
Sourcepub fn adaptive_mu_kkterror_red_iters(self, v: i32) -> Self
pub fn adaptive_mu_kkterror_red_iters(self, v: i32) -> Self
Set the POUNCE adaptive_mu_kkterror_red_iters option.
Sourcepub fn adaptive_mu_kkterror_red_fact(self, v: f64) -> Self
pub fn adaptive_mu_kkterror_red_fact(self, v: f64) -> Self
Set the POUNCE adaptive_mu_kkterror_red_fact option.
Sourcepub fn adaptive_mu_kkt_norm_type(self, v: impl Into<String>) -> Self
pub fn adaptive_mu_kkt_norm_type(self, v: impl Into<String>) -> Self
Set the POUNCE adaptive_mu_kkt_norm_type option.
Sourcepub fn l1_exact_penalty_barrier(self, v: bool) -> Self
pub fn l1_exact_penalty_barrier(self, v: bool) -> Self
Set the POUNCE l1_exact_penalty_barrier option.
Sourcepub fn l1_fallback_on_restoration_failure(self, v: bool) -> Self
pub fn l1_fallback_on_restoration_failure(self, v: bool) -> Self
Set the POUNCE l1_fallback_on_restoration_failure option.
Sourcepub fn l1_penalty_init(self, v: f64) -> Self
pub fn l1_penalty_init(self, v: f64) -> Self
Set the POUNCE l1_penalty_init option.
Sourcepub fn l1_penalty_max(self, v: f64) -> Self
pub fn l1_penalty_max(self, v: f64) -> Self
Set the POUNCE l1_penalty_max option.
Sourcepub fn l1_penalty_increase_factor(self, v: f64) -> Self
pub fn l1_penalty_increase_factor(self, v: f64) -> Self
Set the POUNCE l1_penalty_increase_factor option.
Sourcepub fn l1_penalty_max_outer_iter(self, v: i32) -> Self
pub fn l1_penalty_max_outer_iter(self, v: i32) -> Self
Set the POUNCE l1_penalty_max_outer_iter option.
Sourcepub fn l1_slack_tol(self, v: f64) -> Self
pub fn l1_slack_tol(self, v: f64) -> Self
Set the POUNCE l1_slack_tol option.
Sourcepub fn l1_steering_factor(self, v: f64) -> Self
pub fn l1_steering_factor(self, v: f64) -> Self
Set the POUNCE l1_steering_factor option.
Sourcepub fn presolve_bound_tightening(self, v: bool) -> Self
pub fn presolve_bound_tightening(self, v: bool) -> Self
Set the POUNCE presolve_bound_tightening option.
Sourcepub fn presolve_redundant_constraint_removal(self, v: bool) -> Self
pub fn presolve_redundant_constraint_removal(self, v: bool) -> Self
Set the POUNCE presolve_redundant_constraint_removal option.
Sourcepub fn presolve_linear_eq_reduction(self, v: bool) -> Self
pub fn presolve_linear_eq_reduction(self, v: bool) -> Self
Set the POUNCE presolve_linear_eq_reduction option.
Sourcepub fn presolve_licq_check(self, v: bool) -> Self
pub fn presolve_licq_check(self, v: bool) -> Self
Set the POUNCE presolve_licq_check option.
Sourcepub fn presolve_licq_action(self, v: impl Into<String>) -> Self
pub fn presolve_licq_action(self, v: impl Into<String>) -> Self
Set the POUNCE presolve_licq_action option.
Sourcepub fn presolve_warm_z_bounds(self, v: bool) -> Self
pub fn presolve_warm_z_bounds(self, v: bool) -> Self
Set the POUNCE presolve_warm_z_bounds option.
Sourcepub fn presolve_bound_mult_init_val(self, v: f64) -> Self
pub fn presolve_bound_mult_init_val(self, v: f64) -> Self
Set the POUNCE presolve_bound_mult_init_val option.
Sourcepub fn presolve_max_passes(self, v: i32) -> Self
pub fn presolve_max_passes(self, v: i32) -> Self
Set the POUNCE presolve_max_passes option.
Sourcepub fn presolve_print_level(self, v: i32) -> Self
pub fn presolve_print_level(self, v: i32) -> Self
Set the POUNCE presolve_print_level option.
Sourcepub fn presolve_fbbt(self, v: bool) -> Self
pub fn presolve_fbbt(self, v: bool) -> Self
Set the POUNCE presolve_fbbt option.
Sourcepub fn fbbt_max_iter(self, v: i32) -> Self
pub fn fbbt_max_iter(self, v: i32) -> Self
Set the POUNCE fbbt_max_iter option.
Sourcepub fn fbbt_max_constraints(self, v: i32) -> Self
pub fn fbbt_max_constraints(self, v: i32) -> Self
Set the POUNCE fbbt_max_constraints option.
Sourcepub fn presolve_auxiliary(self, v: bool) -> Self
pub fn presolve_auxiliary(self, v: bool) -> Self
Set the POUNCE presolve_auxiliary option.
Sourcepub fn presolve_auxiliary_coupling(self, v: impl Into<String>) -> Self
pub fn presolve_auxiliary_coupling(self, v: impl Into<String>) -> Self
Set the POUNCE presolve_auxiliary_coupling option.
Sourcepub fn presolve_auxiliary_tol(self, v: f64) -> Self
pub fn presolve_auxiliary_tol(self, v: f64) -> Self
Set the POUNCE presolve_auxiliary_tol option.
Sourcepub fn presolve_auxiliary_max_block_dim(self, v: i32) -> Self
pub fn presolve_auxiliary_max_block_dim(self, v: i32) -> Self
Set the POUNCE presolve_auxiliary_max_block_dim option.
Sourcepub fn presolve_auxiliary_wall_time_fraction(self, v: f64) -> Self
pub fn presolve_auxiliary_wall_time_fraction(self, v: f64) -> Self
Set the POUNCE presolve_auxiliary_wall_time_fraction option.
Sourcepub fn presolve_auxiliary_diagnostics(self, v: bool) -> Self
pub fn presolve_auxiliary_diagnostics(self, v: bool) -> Self
Set the POUNCE presolve_auxiliary_diagnostics option.
Sourcepub fn linear_solver(self, v: impl Into<String>) -> Self
pub fn linear_solver(self, v: impl Into<String>) -> Self
Set the POUNCE linear_solver option.
Sourcepub fn feral_ordering(self, v: impl Into<String>) -> Self
pub fn feral_ordering(self, v: impl Into<String>) -> Self
Set the POUNCE feral_ordering option.
Sourcepub fn feral_scaling(self, v: impl Into<String>) -> Self
pub fn feral_scaling(self, v: impl Into<String>) -> Self
Set the POUNCE feral_scaling option.
Sourcepub fn feral_pivtol(self, v: f64) -> Self
pub fn feral_pivtol(self, v: f64) -> Self
Set the POUNCE feral_pivtol option.
Sourcepub fn feral_refine(self, v: bool) -> Self
pub fn feral_refine(self, v: bool) -> Self
Set the POUNCE feral_refine option.
Sourcepub fn feral_cascade_break(self, v: bool) -> Self
pub fn feral_cascade_break(self, v: bool) -> Self
Set the POUNCE feral_cascade_break option.
Sourcepub fn feral_singular_pivot_floor(self, v: f64) -> Self
pub fn feral_singular_pivot_floor(self, v: f64) -> Self
Set the POUNCE feral_singular_pivot_floor option.
pub fn tol(self, tol: f64) -> Self
pub fn max_iter(self, n: u32) -> Self
pub fn print_level(self, level: u32) -> Self
pub fn mu_strategy(self, s: MuStrategy) -> Self
Sourcepub fn algorithm(self, algorithm: PounceAlgorithm) -> Self
pub fn algorithm(self, algorithm: PounceAlgorithm) -> Self
Select POUNCE’s top-level algorithm.
Trait Implementations§
Source§impl Clone for PounceOptions
impl Clone for PounceOptions
Source§fn clone(&self) -> PounceOptions
fn clone(&self) -> PounceOptions
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PounceOptions
impl Debug for PounceOptions
Source§impl Default for PounceOptions
impl Default for PounceOptions
Source§fn default() -> PounceOptions
fn default() -> PounceOptions
Source§impl HasUniversal for PounceOptions
impl HasUniversal for PounceOptions
fn universal(&self) -> &UniversalOptions
fn universal_mut(&mut self) -> &mut UniversalOptions
Auto Trait Implementations§
impl Freeze for PounceOptions
impl RefUnwindSafe for PounceOptions
impl Send for PounceOptions
impl Sync for PounceOptions
impl Unpin for PounceOptions
impl UnsafeUnpin for PounceOptions
impl UnwindSafe for PounceOptions
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T, U> Imply<T> for U
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>
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>
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