RsBundle  Diff

Differences From Artifact [4eca9534f1]:

  • File src/parallel/problem.rs — part of check-in [6ca92bc9a1] at 2019-07-25 14:07:47 on branch problem-update — parallel: add subproblem index to `SubgradientExtender` (user: fifr size: 6361) [more...]

To Artifact [6fa5b56243]:

  • File src/parallel/problem.rs — part of check-in [3b15a29a64] at 2019-07-29 19:08:26 on branch async — Add `dyn` to trait object types (user: fifr size: 6365)
  • File src/problem.rs — part of check-in [62c311d2a4] at 2019-07-30 07:40:07 on branch restructure — Move `parallel` to `solver::sync` (user: fifr size: 6365)

55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
        bounds: Vec<(Real, Real)>,
        sgext: Box<SubgradientExtender<P, E>>,
    },
}

/// The subgradient extender is a callback used to update existing minorants
/// given their associated primal data.
pub type SubgradientExtender<P, E> = FnMut(usize, &P, &[usize]) -> Result<DVector, E> + Send;

/// This trait provides information available in the
/// [`FirstOrderProblem::update`] method.
pub trait UpdateState<P> {
    /// Whether the last step was a descent step.
    fn was_descent(&self) -> bool;








|







55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
        bounds: Vec<(Real, Real)>,
        sgext: Box<SubgradientExtender<P, E>>,
    },
}

/// The subgradient extender is a callback used to update existing minorants
/// given their associated primal data.
pub type SubgradientExtender<P, E> = dyn FnMut(usize, &P, &[usize]) -> Result<DVector, E> + Send;

/// This trait provides information available in the
/// [`FirstOrderProblem::update`] method.
pub trait UpdateState<P> {
    /// Whether the last step was a descent step.
    fn was_descent(&self) -> bool;