Conversation
Codecov Report
@@ Coverage Diff @@
## master #217 +/- ##
=======================================
Coverage 89.78% 89.78%
=======================================
Files 57 57
Lines 3299 3299
=======================================
Hits 2962 2962
Misses 337 337Continue to review full report at Codecov.
|
| std::transform(prec_type.begin(), prec_type.end(), prec_type.begin(), | ||
| tolower); | ||
|
|
||
| ASSERT_THROW(prec_type == "jacobi", "Only Jacobi smoother is implemented."); |
There was a problem hiding this comment.
We should soon be able to use PreconditionChebyshev as well.
| } | ||
|
|
||
| template <typename ScalarType> | ||
| __global__ void extract_inv_diag(ScalarType const *const matrix_value, |
There was a problem hiding this comment.
Looks like this is never used, is it?
| SparseMatrixDevice<typename VectorType::value_type> const &smoother, | ||
| VectorType const &b, VectorType &x) | ||
| { | ||
| ASSERT_THROW_NOT_IMPLEMENTED(); |
There was a problem hiding this comment.
Do we actually need to instantiate the operator for any type different from dealii::LinearAlgebra::distributed::Vector< double, dealii::MemorySpace::CUDA>>? If not, we could just use a static_assert instead.
| dealii::LinearAlgebra::distributed::Vector<double, dealii::MemorySpace::CUDA> | ||
| tmp(x); | ||
| smoother.vmult(tmp, r); | ||
| x.add(-1., tmp); |
There was a problem hiding this comment.
There is nothing special about dealii::LinearAlgebra::distributed::Vector<double, dealii::MemorySpace::CUDA> here, is it? If we can indeed use static_assert, this would look much nicer with VectorType instead.
| namespace | ||
| { | ||
| template <typename VectorType> | ||
| struct SmootherOperator |
There was a problem hiding this comment.
So all this is just for being able to specialize for VectorType. Do we actually need that if only allow for one type?
No description provided.