| 287 | } |
| 288 | |
| 289 | SparseQMatrix<double> JacobiPrecondition(SparseQMatrix<double> &Ae, VectorXd &b) { |
| 290 | |
| 291 | auto diagonal = GetJacobiPrecondition(Ae); |
| 292 | |
| 293 | SparseQMatrix<double> MA = JacobiMatrixMatrixProduct(diagonal.data(), Ae); |
| 294 | |
| 295 | #pragma omp parallel for |
| 296 | for (int i = 0; i < b.size(); i++) |
| 297 | b(i) = diagonal[i] * b(i); |
| 298 | |
| 299 | return MA; |
| 300 | } |
| 301 | |
| 302 | SparseQMatrix<double> JacobiPrecondition(SparseQMatrix<double>& Ae, vector<double>& b) { |
| 303 |
no test coverage detected