Owning ILU(k) factor of a batch of CSR matrices sharing one pattern.
Holds L (unit diagonal, strict lower triangle) and U (upper triangle with its diagonal) in one CSR matrix, plus a level schedule for the two triangular solves: rows inside one level depend only on earlier levels, so iluk_apply walks l_levels / u_levels steps instead of n. One schedule serves the whole batch. Build it with iluk_factorize; view() gives the ILUKView that iluk_apply takes.
| T | scalar type |
#include <batchlas/blas/functions/iluk.hh>
|
inline |
|
inline |
| Matrix<T, MatrixFormat::CSR> batchlas::ILUKPreconditioner< T >::lu |
| UnifiedVector<int> batchlas::ILUKPreconditioner< T >::diag_positions |
| UnifiedVector<int> batchlas::ILUKPreconditioner< T >::l_rows |
| UnifiedVector<int> batchlas::ILUKPreconditioner< T >::l_level_ptr |
| UnifiedVector<int> batchlas::ILUKPreconditioner< T >::u_rows |
| UnifiedVector<int> batchlas::ILUKPreconditioner< T >::u_level_ptr |
| int batchlas::ILUKPreconditioner< T >::l_levels = 0 |
| int batchlas::ILUKPreconditioner< T >::u_levels = 0 |
| bool batchlas::ILUKPreconditioner< T >::u_diagonals_usable = false |
Whether every U diagonal can be made non-singular with diagonal_shift.
Decided once when the factor is built, so iluk_apply never syncs with the host to check it.
| int batchlas::ILUKPreconditioner< T >::n = 0 |
| int batchlas::ILUKPreconditioner< T >::batch_size = 0 |
| int batchlas::ILUKPreconditioner< T >::levels_of_fill = 0 |
the ILUKParams value it was built with
| T batchlas::ILUKPreconditioner< T >::diagonal_shift = T(1e-8) |
the ILUKParams value it was built with
| base_type<T>::type batchlas::ILUKPreconditioner< T >::drop_tolerance = typename base_type<T>::type(1e-4) |
the ILUKParams value it was built with
| base_type<T>::type batchlas::ILUKPreconditioner< T >::fill_factor = typename base_type<T>::type(10) |
the ILUKParams value it was built with
| base_type<T>::type batchlas::ILUKPreconditioner< T >::diag_pivot_threshold = typename base_type<T>::type(0.1) |
the ILUKParams value it was built with
| bool batchlas::ILUKPreconditioner< T >::modified_ilu = true |
the ILUKParams value it was built with