33 Eigen::MatrixXd QTQ = Q.transpose() * Q;
36 for (
int i = 0; i < QTQ.rows(); i++) {
37 for (
int j = 0; j < QTQ.cols(); j++) {
51 int filter = BaseQNAcceleration::QR1FILTER;
52 Eigen::MatrixXd A(n, m);
55 for (
int i = 0; i < n; i++) {
56 for (
int j = 0; j < m; j++) {
57 double entry = 1.0 /
static_cast<double>(i + j + 1);
75 Eigen::MatrixXd A_prime1 = A;
76 Eigen::VectorXd col6 = A.col(m - 1);
77 A_prime1.conservativeResize(n, m - 1);
86 Eigen::MatrixXd A_prime2 = A_prime1;
87 Eigen::VectorXd col1 = A.col(0);
88 for (
int i = 0; i < A_prime2.rows(); i++)
89 for (
int j = 0; j < A_prime2.cols() - 1; j++)
90 A_prime2(i, j) = A_prime2(i, j + 1);
91 A_prime2.conservativeResize(n, A_prime2.cols() - 1);
116 Eigen::MatrixXd A_prime3 = A;
117 Eigen::VectorXd colk = A.col(k);
118 for (
int i = 0; i < A_prime3.rows(); i++)
119 for (
int j = k; j < A_prime3.cols() - 1; j++)
120 A_prime3(i, j) = A_prime3(i, j + 1);
121 A_prime3.conservativeResize(n, A_prime3.cols() - 1);
139 qr_1.
reset(A, A.rows());
144 Eigen::MatrixXd q = qr_1.
matrixQ();
145 Eigen::MatrixXd r = qr_1.
matrixR();
147 qr_1.
reset(q, r, q.rows(), q.cols());
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...