5#include <Eigen/src/Core/Matrix.h>
24 const bool cyclicCommunication =
false;
29 singleValues(0) = 0.000578589774323541;
30 singleValues(1) = 8.13011257500996e-05;
33 auto prec(std::make_shared<impl::ConstantPreconditioner>(factors));
38 auto ptrParMatrixOp = std::make_shared<ParallelMatrixOperations>(matOperation);
45 for (
int i = 0; i < 4; i++) {
46 for (
int j = 0; j < m; j++) {
47 a(j) = j * 0.001 - i * 0.001;
48 b(j) = j * 0.001 - i * 0.007;
53 BOOST_TEST(svd_1.
rank() == 2);
BOOST_AUTO_TEST_SUITE(PreProcess)
BOOST_AUTO_TEST_SUITE_END()
BOOST_AUTO_TEST_CASE(testSVDFactorization)
#define PRECICE_TEST(...)
void initialize(const bool needCyclicComm)
Initializes the acceleration.
Class that provides functionality to maintain a SVD decomposition of a matrix via successive rank-1 u...
void initialize(PtrParMatrixOps parMatOps, int globalRows)
: initializes the updated SVD factorization, i.e., sets the object for parallel matrix-matrix operati...
Vector & singularValues()
: returns a matrix representation of the orthogonal matrix Sigma, A = Psi * Sigma * Phi^T
Rank rank()
: returns the rank of the truncated SVD factorization
void update(const Eigen::MatrixBase< Derived1 > &A, const Eigen::MatrixBase< Derived2 > &B)
: updates the SVD decomposition with the rank-1 update A*B^T, i.e., _psi * _sigma * _phi^T + A*B^T an...
contains implementations of acceleration schemes.
boost::test_tools::predicate_result equals(const std::vector< float > &VectorA, const std::vector< float > &VectorB, float tolerance)
equals to be used in tests. Compares two std::vectors using a given tolerance. Prints both operands o...
Main namespace of the precice library.