RsBundle  Diff

Differences From Artifact [0aa151db8b]:

  • File src/mcf/problem.rs — part of check-in [98ffc4729c] at 2019-07-25 14:24:26 on branch mmcf-separation — mmcf: remove debug output (user: fifr size: 19686)

To Artifact [0809fb85f1]:

  • File src/mcf/problem.rs — part of check-in [5401c89abf] at 2019-07-25 14:24:47 on branch mmcf-separation — mmcf: return early if no inactive constraints remain (user: fifr size: 19865)

431
432
433
434
435
436
437




438
439
440
441
442
443
444
                },
                sol,
            )],
        })
    }

    fn update(&mut self, state: &UpdateState<Self::Primal>) -> Result<Vec<Update>> {




        let nold = self.active_constraints.len();
        let subs = &self.subs;

        // if state.step != Step::Descent && !self.active_constraints.is_empty() {
        //     return Ok(vec![]);
        // }








>
>
>
>







431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
                },
                sol,
            )],
        })
    }

    fn update(&mut self, state: &UpdateState<Self::Primal>) -> Result<Vec<Update>> {
        if self.inactive_constraints.is_empty() {
            return Ok(vec![]);
        }

        let nold = self.active_constraints.len();
        let subs = &self.subs;

        // if state.step != Step::Descent && !self.active_constraints.is_empty() {
        //     return Ok(vec![]);
        // }

563
564
565
566
567
568
569



570
571
572
573
574
575
576
        Ok(())
    }

    fn update<I, U>(&mut self, state: &U, index: I, tx: UpdateSender<I, Self::Primal, Self::Err>) -> Result<()>
    where
        U: ParallelUpdateState<Self::Primal>,
    {



        let nold = self.active_constraints.len();
        let subs = &self.subs;

        let newconstraints = self
            .inactive_constraints
            .iter()
            .map(|&cidx| {







>
>
>







567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
        Ok(())
    }

    fn update<I, U>(&mut self, state: &U, index: I, tx: UpdateSender<I, Self::Primal, Self::Err>) -> Result<()>
    where
        U: ParallelUpdateState<Self::Primal>,
    {
        if self.inactive_constraints.is_empty() {
            return Ok(());
        }
        let nold = self.active_constraints.len();
        let subs = &self.subs;

        let newconstraints = self
            .inactive_constraints
            .iter()
            .map(|&cidx| {