• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

xaviersolau / QPSolver / 16332377818

16 Jul 2025 11:21PM UTC coverage: 77.815%. First build
16332377818

push

github

xaviersolau
Initial import.

235 of 302 new or added lines in 10 files covered. (77.81%)

235 of 302 relevant lines covered (77.81%)

671207.23 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

78.95
/src/libs/SoloX.QPSolver/Impl/QPProblemInitializer.cs
1
// ----------------------------------------------------------------------
2
// <copyright file="QPProblemInitializer.cs" company="Xavier Solau">
3
// Copyright © 2025 Xavier Solau.
4
// Licensed under the MIT license.
5
// See LICENSE file in the project root for full license information.
6
// </copyright>
7
// ----------------------------------------------------------------------
8

9
using MathNet.Numerics.LinearAlgebra;
10

11
namespace SoloX.QPSolver.Impl
12
{
13
    internal sealed class QPProblemInitializer : IQPProblemConfiguration
14
    {
15
        public Matrix<double>? MatrixQ { get; set; }
16

17
        public Vector<double>? VectorC { get; set; }
18

19
        public Matrix<double>? MatrixAEquality { get; set; }
20

21
        public Vector<double>? VectorBEquality { get; set; }
22

23
        public Matrix<double>? MatrixAInequality { get; set; }
24

25
        public Vector<double>? VectorBInequality { get; set; }
26

27
        public Vector<double>? LowerBounds { get; set; }
28

29
        public Vector<double>? UpperBounds { get; set; }
30

31
        public IQPProblemConfiguration Minimizing(Matrix<double> matrixQ, Vector<double> vectorC)
32
        {
33
            MatrixQ = matrixQ;
3,366✔
34
            VectorC = vectorC;
3,366✔
35

36
            return this;
3,366✔
37
        }
38

39
        public IQPProblemConfiguration WithEquality(Matrix<double> matrixAEquality, Vector<double> vectorBEquality)
40
        {
41
            if (MatrixAEquality == null)
1,124✔
42
            {
43
                MatrixAEquality = matrixAEquality;
1,124✔
44
                VectorBEquality = vectorBEquality;
1,124✔
45
            }
46
            else
47
            {
NEW
48
                MatrixAEquality = MatrixAEquality.Stack(matrixAEquality);
×
NEW
49
                VectorBEquality = Vector<double>.Build.DenseOfEnumerable(VectorBEquality!.Concat(vectorBEquality));
×
50
            }
51

52
            return this;
1,124✔
53
        }
54

55
        public IQPProblemConfiguration WithInequality(Matrix<double> matrixAInequality, Vector<double> vectorBInequality)
56
        {
57
            if (MatrixAInequality == null)
1,122✔
58
            {
59
                MatrixAInequality = matrixAInequality;
1,122✔
60
                VectorBInequality = vectorBInequality;
1,122✔
61
            }
62
            else
63
            {
NEW
64
                MatrixAInequality = MatrixAInequality.Stack(matrixAInequality);
×
NEW
65
                VectorBInequality = Vector<double>.Build.DenseOfEnumerable(VectorBInequality!.Concat(vectorBInequality));
×
66
            }
67

68
            return this;
1,122✔
69
        }
70

71
        public IQPProblemConfiguration WithLowerBounds(Vector<double> lowerBounds)
72
        {
73
            LowerBounds = lowerBounds;
1,122✔
74

75
            return this;
1,122✔
76
        }
77

78
        public IQPProblemConfiguration WithUpperBounds(Vector<double> upperBounds)
79
        {
80
            UpperBounds = upperBounds;
1,121✔
81

82
            return this;
1,121✔
83
        }
84
    }
85
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc