|TensorFlow 1 version||View source on GitHub|
Combines one or more
LinearOperators in to a Block Diagonal matrix.
Compat aliases for migration
See Migration guide for more details.
tf.linalg.LinearOperatorBlockDiag( operators, is_non_singular=None, is_self_adjoint=None, is_positive_definite=None, is_square=True, name=None )
Used in the notebooks
|Used in the tutorials|
This operator combines one or more linear operators
building a new
LinearOperator, whose underlying matrix representation is
square and has each operator
opi on the main diagonal, and zero's elsewhere.
opj acts like a [batch] square matrix
op_combined acts like
the [batch] square matrix formed by having each matrix
Aj on the main
opj is required to represent a square matrix, and hence will have
batch_shape_j + [M_j, M_j].
opj has shape
batch_shape_j + [M_j, M_j], then the combined operator
broadcast_batch_shape + [sum M_j, sum M_j], where
broadcast_batch_shape is the mutual broadcast of
j = 1,...,J, assuming the intermediate batch shapes broadcast.
Even if the combined shape is well defined, the combined operator's
methods may fail due to lack of broadcasting ability in the defining