Previous Next

Transpose of Packed Block Diagonal Matrix Times a Vector

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 vector; 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  \[

=
\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 column vector of length  m * N .

w
The result w is a column vector of length  n * N .

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