538
539
540
541
542
543
544
545
546
547
548
549
550
551
|
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
|
+
+
+
+
|
if !newvars.is_empty() {
let mut problem = &mut self.problem;
let minorants = &self.minorants;
self.master.add_vars(&newvars, &mut move |fidx, minidx, vars| {
problem.extend_subgradient(minorants[fidx][minidx].primal.as_ref().unwrap(), vars).unwrap()
});
let newn = self.cur_y.len() + newvars.len();
self.cur_y.resize(newn, 0.0);
self.nxt_d.resize(newn, 0.0);
self.nxt_y.resize(newn, 0.0);
Ok(true)
} else {
Ok(false)
}
}
/// Return the current aggregated primal information for a subproblem.
|