• Home
  • Raw
  • Download

Lines Matching refs:solver

15 void solve_with_guess(IterativeSolverBase<Solver>& solver, const MatrixBase<Rhs>& b, const Guess& g…  in solve_with_guess()  argument
19 x = solver.derived().solveWithGuess(b,g) + Result::Zero(x.rows(), x.cols()); in solve_with_guess()
24 x = solver.derived().solveWithGuess(b.derived(),g); in solve_with_guess()
29 void solve_with_guess(SparseSolverBase<Solver>& solver, const MatrixBase<Rhs>& b, const Guess& , Re… in solve_with_guess() argument
31 x = solver.derived().solve(b) + Result::Zero(x.rows(), x.cols()); in solve_with_guess()
33 x = solver.derived().solve(b); in solve_with_guess()
37 void solve_with_guess(SparseSolverBase<Solver>& solver, const SparseMatrixBase<Rhs>& b, const Guess… in solve_with_guess() argument
38 x = solver.derived().solve(b); in solve_with_guess()
42 void check_sparse_solving(Solver& solver, const typename Solver::MatrixType& A, const Rhs& b, const… in check_sparse_solving() argument
53 solver.compute(A); in check_sparse_solving()
54 if (solver.info() != Success) in check_sparse_solving()
57 VERIFY(solver.info() == Success); in check_sparse_solving()
59 x = solver.solve(b); in check_sparse_solving()
60 if (solver.info() != Success) in check_sparse_solving()
69 solve_with_guess(solver, b, x, x); in check_sparse_solving()
70 VERIFY(solver.info() == Success && "solving failed when using analyzePattern/factorize API"); in check_sparse_solving()
76 solver.analyzePattern(A); in check_sparse_solving()
77 solver.factorize(A); in check_sparse_solving()
78 …VERIFY(solver.info() == Success && "factorization failed when using analyzePattern/factorize API"); in check_sparse_solving()
79 x = solver.solve(b); in check_sparse_solving()
80 VERIFY(solver.info() == Success && "solving failed when using analyzePattern/factorize API"); in check_sparse_solving()
87 solver.compute(Am); in check_sparse_solving()
88 VERIFY(solver.info() == Success && "factorization failed when using Map"); in check_sparse_solving()
93 xm = solver.solve(bm); in check_sparse_solving()
94 VERIFY(solver.info() == Success && "solving failed when using Map"); in check_sparse_solving()
116 x.block(0,0,x.rows(),x.cols()) = solver.solve(db.block(0,0,db.rows(),db.cols())); in check_sparse_solving()
125 solver.compute(A2); in check_sparse_solving()
126 Rhs x = solver.solve(b); in check_sparse_solving()
132 solver.compute(0.5*(A+A)); in check_sparse_solving()
133 Rhs x = solver.solve(b); in check_sparse_solving()
144 void check_sparse_solving_real_cases(Solver& solver, const typename Solver::MatrixType& A, const Rh… in check_sparse_solving_real_cases() argument
152 solver.compute(A); in check_sparse_solving_real_cases()
153 if (solver.info() != Success) in check_sparse_solving_real_cases()
156 VERIFY(solver.info() == Success); in check_sparse_solving_real_cases()
158 x = solver.solve(b); in check_sparse_solving_real_cases()
160 if (solver.info() != Success) in check_sparse_solving_real_cases()
177 void check_sparse_determinant(Solver& solver, const typename Solver::MatrixType& A, const DenseMat&… in check_sparse_determinant() argument
182 solver.compute(A); in check_sparse_determinant()
183 if (solver.info() != Success) in check_sparse_determinant()
190 VERIFY_IS_APPROX(refDet,solver.determinant()); in check_sparse_determinant()
193 void check_sparse_abs_determinant(Solver& solver, const typename Solver::MatrixType& A, const Dense… in check_sparse_abs_determinant() argument
199 solver.compute(A); in check_sparse_abs_determinant()
200 if (solver.info() != Success) in check_sparse_abs_determinant()
207 VERIFY_IS_APPROX(refDet,solver.absDeterminant()); in check_sparse_abs_determinant()
256 std::string solver_stats(const IterativeSolverBase<Derived> &solver) in solver_stats() argument
259 ss << solver.iterations() << " iters, error: " << solver.error(); in solver_stats()
269 template<typename Solver> void check_sparse_spd_solving(Solver& solver, int maxSize = 300, int maxR…
283 int size = generate_sparse_spd_problem(solver, A, halfA, dA, maxSize);
295 CALL_SUBTEST( check_sparse_solving(solver, A, b, dA, b) );
296 CALL_SUBTEST( check_sparse_solving(solver, halfA, b, dA, b) );
297 CALL_SUBTEST( check_sparse_solving(solver, A, dB, dA, dB) );
298 CALL_SUBTEST( check_sparse_solving(solver, halfA, dB, dA, dB) );
299 CALL_SUBTEST( check_sparse_solving(solver, A, B, dA, dB) );
300 CALL_SUBTEST( check_sparse_solving(solver, halfA, B, dA, dB) );
301 CALL_SUBTEST( check_sparse_solving(solver, A, c, dA, dc) );
302 CALL_SUBTEST( check_sparse_solving(solver, halfA, c, dA, dc) );
308 check_sparse_solving(solver, A, b, dA, b);
336 CALL_SUBTEST( check_sparse_solving_real_cases(solver, A, b, A, refX) );
337 std::string stats = solver_stats(solver);
340 CALL_SUBTEST( check_sparse_solving_real_cases(solver, halfA, b, A, refX) );
354 template<typename Solver> void check_sparse_spd_determinant(Solver& solver) in check_sparse_spd_determinant() argument
363 generate_sparse_spd_problem(solver, A, halfA, dA, 30); in check_sparse_spd_determinant()
366 check_sparse_determinant(solver, A, dA); in check_sparse_spd_determinant()
367 check_sparse_determinant(solver, halfA, dA ); in check_sparse_spd_determinant()
399 template<typename Solver> void check_sparse_square_solving(Solver& solver, int maxSize = 300, int m…
413 Index size = generate_sparse_square_problem(solver, A, dA, maxSize);
424 CALL_SUBTEST(check_sparse_solving(solver, A, b, dA, b));
425 CALL_SUBTEST(check_sparse_solving(solver, A, dB, dA, dB));
426 CALL_SUBTEST(check_sparse_solving(solver, A, B, dA, dB));
427 CALL_SUBTEST(check_sparse_solving(solver, A, c, dA, dc));
433 check_sparse_solving(solver, A, b, dA, b);
439 solver.compute(A);
440 VERIFY_IS_EQUAL(solver.info(), NumericalIssue);
460 CALL_SUBTEST(check_sparse_solving_real_cases(solver, A, b, A, refX));
461 std::string stats = solver_stats(solver);
477 template<typename Solver> void check_sparse_square_determinant(Solver& solver) in check_sparse_square_determinant() argument
496 check_sparse_determinant(solver, A, dA); in check_sparse_square_determinant()
500 template<typename Solver> void check_sparse_square_abs_determinant(Solver& solver) in check_sparse_square_abs_determinant() argument
510 generate_sparse_square_problem(solver, A, dA, 30); in check_sparse_square_abs_determinant()
512 check_sparse_abs_determinant(solver, A, dA); in check_sparse_square_abs_determinant()
532 template<typename Solver> void check_sparse_leastsquare_solving(Solver& solver) in check_sparse_leastsquare_solving() argument
545 generate_sparse_leastsquare_problem(solver, A, dA); in check_sparse_leastsquare_solving()
554 check_sparse_solving(solver, A, b, dA, b); in check_sparse_leastsquare_solving()
555 check_sparse_solving(solver, A, dB, dA, dB); in check_sparse_leastsquare_solving()
556 check_sparse_solving(solver, A, B, dA, dB); in check_sparse_leastsquare_solving()
562 check_sparse_solving(solver, A, b, dA, b); in check_sparse_leastsquare_solving()