StrictUpperTriQSM#
- class tinygp.solvers.quasisep.core.StrictUpperTriQSM(p: JAXArray, q: JAXArray, a: JAXArray)[source]#
Bases:
QSM
A strictly upper triangular order
m
quasiseparable matrixThe notation here is somewhat different from that in Eidelman & Gohberg (1999), because we wanted to map
StrictLowerTriQSM.transpose() -> StrictUpperTriQSM
while retaining the same names for each component. Therefore, ourp
is theirh
, and oura
is theirb.T
.- Parameters:
p (n, m) – The right quasiseparable elements.
q (n, m) – The left quasiseparable elements.
a (n, m, m) – The transition matrices.
- scale(other: tinygp.helpers.JAXArray) StrictUpperTriQSM [source]#
The multiplication of this matrix times a scalar, as a QSM
- self_add(other: StrictUpperTriQSM) StrictUpperTriQSM [source]#
The sum of two
StrictUpperTriQSM
matrices
- self_mul(other: StrictUpperTriQSM) StrictUpperTriQSM [source]#
The elementwise product of two
StrictUpperTriQSM
matrices
- property shape: tuple[int, int]#
The shape of the 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() StrictLowerTriQSM [source]#
The matrix transpose as a QSM