public virtual void Publish(QpProgressReport report) { if (this.OnQpReportCompleted != null) { this.OnQpReportCompleted(this, new QpReportPublishedEventArgs(report)); } }
public void PrintResults(QpProgressReport results, SpreadSheetExample example, Int64 elapsedMs, StringBuilder stringBuilder) { this.Display(new String('*', 50), stringBuilder); this.Display(example.Name, stringBuilder); this.Display(string.Format("Iterations: {0}", results.Iterations), stringBuilder); this.Display(string.Format("Elapsed time: {0}ms", elapsedMs), stringBuilder); this.Display("Solution: " + results.SolveStatus.ToString(), stringBuilder); this.Display(results.X, stringBuilder); this.Display(string.Empty, stringBuilder); }
private static void MuckAround() { var vectorB = new double[] { 0, -2, -6, -3, 0, 5, 1 }; var arrayA = new double[, ] { { 1, -1, 0, 1, 0, 2, 1 }, { 0, 0, -1, 1, 0, 3, 0 }, }; var b = Vector <double> .Build.DenseOfArray(vectorB); var a = Matrix <double> .Build.DenseOfArray(arrayA); var preSolver = new QpPreSolver(a, b); QpProgressReport report = preSolver.PreSolve(); Console.WriteLine(report.X); }
public void AcSolver() { // Arrange IQpProgressReportBroadcaster publisher = new QpProgressReportPublisher(); IQpInitialPointStrategy warmStarter = new QpWarmStarter(); var listener = new ConsoleOutputService(); listener.Subscribe(publisher); var solver = new PredictorCorrectorSolver( new QpPreSolver(problem.A, problem.b), new QpWarmStarter(), new QpProgressAnalyser(problem, true), new QpProgressReportPublisher()); // Act QpProgressReport solution = solver.Solve(problem); // Assert var check = solution.X + problem.c; Assert.IsTrue(check.Norm(2) < (1e-8 * n)); }
public QpReportPublishedEventArgs(QpProgressReport report) { this.report = report; }