Previous Next blkdiag_mul_t_ok.m

blkdiag_mul_t Example and Test

Source Code
 
function [ok] = blkdiag_mul_t_ok()
ok = true;
% -------------------------------------------------------------
% You can change these parameters
m    = 2; 
n    = 3;
N    = 2;
% -------------------------------------------------------------
% Define the problem
rand('seed', 123);
v     = rand(m * N, 1);
Bdiag = zeros(m, n, N);
B     = zeros(m * N , n * N);
blk_m = 1 : m;
blk_n = 1 : n;
for k = 1 : N
	Bdiag(:, :, k)  = rand(m, n);
	B(blk_m, blk_n) = Bdiag(:, :, k);
	blk_m           = blk_m + m;
	blk_n           = blk_n + n;
end
% -------------------------------------
w     = ckbs_blkdiag_mul_t(Bdiag, v);
% -------------------------------------
check = B' * v;
ok    = ok & ( max(abs(w - check)) < 1e-10 );
return
end

Input File: example/blkdiag_mul_t_ok.m