diff --git a/gtsam_unstable/linear/tests/testLPSolver.cpp b/gtsam_unstable/linear/tests/testLPSolver.cpp index e8606293e..d8f5142e2 100644 --- a/gtsam_unstable/linear/tests/testLPSolver.cpp +++ b/gtsam_unstable/linear/tests/testLPSolver.cpp @@ -10,6 +10,7 @@ #include #include #include +#include using namespace std; using namespace gtsam; @@ -20,19 +21,19 @@ TEST(LPSolver, oneD) { objCoeffs.insert(Y(1), repeat(1, -5.0)); objCoeffs.insert(X(2), repeat(1, -4.0)); objCoeffs.insert(X(3), repeat(1, -6.0)); - JacobianFactor constraint( + LinearInequality inequality( Y(1), (Matrix(3,1)<< 1,3,3), X(2), (Matrix(3,1)<< -1,2,2), - X(3), (Matrix(3,1)<< 1,4,0), (Vector(3)<<20,42,30), - noiseModel::Constrained::MixedSigmas((Vector(3)<<-1,-1,-1))); + X(3), (Matrix(3,1)<< 1,4,0), (Vector(3)<<20,42,30), 0); VectorValues lowerBounds; lowerBounds.insert(Y(1), zero(1)); lowerBounds.insert(X(2), zero(1)); lowerBounds.insert(X(3), zero(1)); - GaussianFactorGraph::shared_ptr constraints(new GaussianFactorGraph); - constraints->push_back(constraint); + LinearInequalityFactorGraph::shared_ptr inequalities(new LinearInequalityFactorGraph); + inequalities->push_back(inequality); + LinearEqualityFactorGraph::shared_ptr equalities(new LinearEqualityFactorGraph); - LPSolver solver(objCoeffs, constraints, lowerBounds); + LPSolver solver(objCoeffs, equalities, inequalities, lowerBounds); vector columnNo = solver.buildColumnNo(objCoeffs | boost::adaptors::map_keys); LONGS_EQUAL(3, columnNo.size()); LONGS_EQUAL(1, columnNo[0]); @@ -64,16 +65,16 @@ TEST(LPSolver, oneD) { TEST(LPSolver, threeD) { VectorValues objCoeffs; objCoeffs.insert(X(1), (Vector(3)<<-5.0, -4.0, -6.0)); - JacobianFactor constraint( - X(1), (Matrix(3,3)<< 1,-1,1,3,2,4,3,2,0), (Vector(3)<<20,42,30), - noiseModel::Constrained::MixedSigmas((Vector(3)<<-1,-1,-1))); + LinearInequality inequality( + X(1), (Matrix(3,3)<< 1,-1,1,3,2,4,3,2,0), (Vector(3)<<20,42,30), 0); VectorValues lowerBounds; lowerBounds.insert(X(1), zeros(3,1)); - GaussianFactorGraph::shared_ptr constraints(new GaussianFactorGraph); - constraints->push_back(constraint); + LinearInequalityFactorGraph::shared_ptr inequalities(new LinearInequalityFactorGraph); + inequalities->push_back(inequality); + LinearEqualityFactorGraph::shared_ptr equalities(new LinearEqualityFactorGraph); - LPSolver solver(objCoeffs, constraints, lowerBounds); + LPSolver solver(objCoeffs, equalities, inequalities, lowerBounds); vector columnNo = solver.buildColumnNo(objCoeffs | boost::adaptors::map_keys); LONGS_EQUAL(3, columnNo.size()); LONGS_EQUAL(1, columnNo[0]);