![]() |
Previous | Next |
[r, s] = ckbs_blkbidiag_symm_mul(Bdia, Boffdia, Ddia)
\[
W = B * D * B^T
\]
The actual output consists of a packed representation of the
diagonal and off-diagonal blocks of the matrix
W
.
Bdia
is an
m \times n \times N
array.
For
k = 1 , \ldots , N
we define
B_k \in \B{R}^{m \times n}
by
\[
B_k = Bdia(:, :, k)
\]
Boffdia
is an
m \times n \times N
array.
For
k = 2 , \ldots , N
we define
C_k \in \B{R}^{m \times n}
by
\[
C_k = Boffdia(:, :, k)
\]
Ddia
is an
n \times n \times N
array.
For
k = 1 , \ldots , N
we define
D_k \in \B{R}^{n \times n}
by
\[
D_k = Ddia(:, :, k)
\]
B
is defined by
\[
B
=
\left( \begin{array}{cccc}
B_1 & 0 & 0 & \\
C_2^T & B_2 & \ddots & 0 \\
0 & \ddots & \ddots & 0 \\
& 0 & C_N^T & B_N
\end{array} \right)
\]
D
is defined by
\[
D
=
\left( \begin{array}{cccc}
D_1 & 0 & 0 & \\
0 & D_2 & \ddots & 0 \\
0 & \ddots & \ddots & 0 \\
& 0 & 0 & D_N
\end{array} \right)
\]
r
is an
n \times n \times N
array.
For
k = 1 , \ldots , N
we define
r_k \in \B{R}^{n \times n}
by
\[
r_k = r(:, :, k)
\]
% s
is an
m \times n \times N
array.
For
k = 2 , \ldots , N
we define
r_k \in \B{R}^{m \times n}
by
\[
s_k = s(:, :, k)
\]
ckbs_blkbidiag_symm_mul
.
It returns true if ckbs_blkbidiag_symm_mul
passes the test
and false otherwise.