| 211 | } |
| 212 | |
| 213 | void BandMatrix::leftMult(const double* const b, double* const prod) const |
| 214 | { |
| 215 | for (size_t n = 0; n < m_n; n++) { |
| 216 | double sum = 0.0; |
| 217 | size_t start = (n >= m_ku) ? n - m_ku : 0; |
| 218 | size_t stop = std::min(n + m_kl + 1, m_n); |
| 219 | for (size_t i = start; i < stop; i++) { |
| 220 | sum += _value(i,n) * b[i]; |
| 221 | } |
| 222 | prod[n] = sum; |
| 223 | } |
| 224 | } |
| 225 | |
| 226 | int BandMatrix::factor() |
| 227 | { |