-
- Downloads
Merge branch 'feature/fix-mixed-precision-dense-matrix-vector-interface' into 'master'
Feature/fix mixed precision dense matrix vector interface In the current state if the dune-common dense LA I encountered several smaller bugs w.r.t. mixed precision computations: 1. the value_type used to reset the vector during `DenseMatrix::mv` and `DenseMatrix::mtv` was the `value_type` of the matrix, but it has to be the `field_type` of the vector. 1. the type of the scaling parameter alpha of `usmv`. `usmtv` and `ushtv` has the wrong type and must be the `field_type` of the result vector. For details see bdf74dca Besides this there were 2 minor issues I found while fixing the mixed precision case. 1. the range checks we no longer performed 1. if the tests are reenabled, they do not compile, because Robert added test for `FieldMatrix` with `std::vector` or C-array, which do not work, as we expect additional methods on the classes. I enabled the range checks and disabled the `std::vector` and C-array tests. We could work around this problem, by adding helper traits to determine the size and by this allowing us to special-case `std::vector` and C-array. See merge request !10
No related branches found
No related tags found
Showing
- dune/common/densematrix.hh 17 additions, 12 deletionsdune/common/densematrix.hh
- dune/common/diagonalmatrix.hh 6 additions, 3 deletionsdune/common/diagonalmatrix.hh
- dune/common/ftraits.hh 15 additions, 0 deletionsdune/common/ftraits.hh
- dune/common/identitymatrix.hh 6 additions, 3 deletionsdune/common/identitymatrix.hh
- dune/common/test/diagonalmatrixtest.cc 3 additions, 0 deletionsdune/common/test/diagonalmatrixtest.cc
- dune/common/test/dynmatrixtest.cc 17 additions, 17 deletionsdune/common/test/dynmatrixtest.cc
- dune/common/test/fmatrixtest.cc 62 additions, 51 deletionsdune/common/test/fmatrixtest.cc
Loading
Please register or sign in to comment