UpperTriQSM#
- class tinygp.solvers.quasisep.core.UpperTriQSM(diag: DiagQSM, upper: StrictUpperTriQSM)[source]#
Bases:
QSM
A upper triangular quasiseparable matrix
- Parameters:
diag – The diagonal elements.
upper – The strictly upper triangular elements.
- matmul(x: tinygp.helpers.JAXArray) tinygp.helpers.JAXArray [source]#
The dot product of this matrix with a dense vector or matrix
- Parameters:
x (n, ...) – A matrix or vector with leading dimension matching this matrix.
- scale(other: tinygp.helpers.JAXArray) UpperTriQSM [source]#
The multiplication of this matrix times a scalar, as a QSM
- property shape: tuple[int, int]#
The shape of the matrix
- solve(y: tinygp.helpers.JAXArray) tinygp.helpers.JAXArray [source]#
Solve a linear system with this matrix
If this matrix is called
U
, this solvesU @ x = y
forx
giveny
, using backward substitution.- Parameters:
y (n, ...) – A matrix or vector with leading dimension matching this matrix.
- to_dense() tinygp.helpers.JAXArray #
Render this representation to a dense matrix
This implementation is not optimized and should really only ever be used for testing purposes.
- transpose() LowerTriQSM [source]#
The matrix transpose as a QSM