Commit 2b8554aa authored by Patrick Jaap's avatar Patrick Jaap
Browse files

Add 'ConstrainedMatrix' and 'ConstrainedBitVector' to linearizations

The extended TNNMG step requires these typenames for the LinearSolver constructor.
For the build-in linearizations the contrained types are the same as the unconstrained ones.
parent 5174e708
...@@ -76,7 +76,9 @@ public: ...@@ -76,7 +76,9 @@ public:
using Matrix = typename F::Matrix; using Matrix = typename F::Matrix;
using Vector = typename F::Vector; using Vector = typename F::Vector;
using BitVector = BV; using BitVector = BV;
using ConstrainedMatrix = Matrix;
using ConstrainedVector = Vector; using ConstrainedVector = Vector;
using ConstrainedBitVector = BitVector;
BoxConstrainedQuadraticFunctionalConstrainedLinearization(const F& f, const BitVector& ignore) : BoxConstrainedQuadraticFunctionalConstrainedLinearization(const F& f, const BitVector& ignore) :
......
...@@ -25,7 +25,9 @@ public: ...@@ -25,7 +25,9 @@ public:
using Matrix = typename F::Matrix; using Matrix = typename F::Matrix;
using Vector = typename F::Vector; using Vector = typename F::Vector;
using BitVector = BV; using BitVector = BV;
using ConstrainedMatrix = Matrix;
using ConstrainedVector = Vector; using ConstrainedVector = Vector;
using ConstrainedBitVector = BitVector;
QuadraticFunctionalConstrainedLinearization(const F& f, const BitVector& ignore) : QuadraticFunctionalConstrainedLinearization(const F& f, const BitVector& ignore) :
......
...@@ -37,7 +37,7 @@ public: ...@@ -37,7 +37,7 @@ public:
using ConstrainedVector = typename Linearization::ConstrainedVector; using ConstrainedVector = typename Linearization::ConstrainedVector;
using ConstrainedMatrix = typename Linearization::ConstrainedMatrix; using ConstrainedMatrix = typename Linearization::ConstrainedMatrix;
using BitVector = typename Base::BitVector; using BitVector = typename Base::BitVector;
using ConstrainedBitVector = typename Linearization::ConstrainedBitvector; using ConstrainedBitVector = typename Linearization::ConstrainedBitVector;
using Functional = F; using Functional = F;
using IterativeSolver = Solvers::IterativeSolver< ConstrainedVector, Solvers::DefaultBitVector_t<ConstrainedVector> >; using IterativeSolver = Solvers::IterativeSolver< ConstrainedVector, Solvers::DefaultBitVector_t<ConstrainedVector> >;
using LinearSolver = Solvers::LinearSolver< ConstrainedMatrix, ConstrainedVector >; using LinearSolver = Solvers::LinearSolver< ConstrainedMatrix, ConstrainedVector >;
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment