Previous Next

Transpose of Packed Block Diagonal Matrix Times a Vector or Matrix

Syntax
[w] = ckbs_blkdiag_mul_t(Bdiav)

Purpose
This routine enables one to used the packed form of a block diagonal matrix and returns the transpose of the matrix times a matrix; i.e.,  \[
      W = B^\R{T} * V
\] 


Bdia
The argument 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)
\] 


B
The matrix  B is defined by  \[
B
=
\left( \begin{array}{cccc}
      B_1 & 0      & 0      &           \\
      0   & B_2    & 0      & 0         \\
      0   & 0      & \ddots & 0         \\
          & 0      & 0      & B_N
\end{array} \right)
\] 


V
The argument V is a matrix of size  m * N \times
p
, with no restrictions on  p .

W
The result W is a matrix of size  n * N \times p .

Example
The file blkdiag_mul_t_ok.m contains an example and test of ckbs_blkdiag_mul_t. It returns true if ckbs_blkdiag_mul_t passes the test and false otherwise.
Input File: src/ckbs_blkdiag_mul_t.m