1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
use crate::;
/// A linear operator `A` for use with the [crate::LinearSolver] trait.
///
/// This is a minimal, time-unaware description of a linear operator: it can
/// report its shape and context, materialise itself as a matrix, and optionally
/// provide a sparsity pattern. It is deliberately decoupled from the richer,
/// time-aware operator traits in the `diffsol` crate.
///
/// A solver for `Ax = b` uses [Self::sparsity] to set up the matrix storage and
/// [Self::matrix_inplace] to populate the matrix `A` prior to factorisation.