# HG changeset patch # User Andriy Shinkarchuck # Date 1315088007 18000 # Node ID 60bd7ebb12fc8f9a0b3ae2a103aa02d7ce740f38 # Parent 0e231bbd78bc2bf0b9d039accdbd59a47ba45aad codesprint: 7 tests for duplication_matrix.m diff -r 0e231bbd78bc -r 60bd7ebb12fc scripts/linear-algebra/duplication_matrix.m --- a/scripts/linear-algebra/duplication_matrix.m Sat Sep 03 17:27:15 2011 -0400 +++ b/scripts/linear-algebra/duplication_matrix.m Sat Sep 03 17:13:27 2011 -0500 @@ -86,3 +86,35 @@ endfor endfunction + +!test +%! N = 2; +%! A = rand(N); +%! B = A * A'; +%! C = A + A'; +%! D = duplication_matrix (N); +%! assert (D * vech (B), vec (B), 1e-6); +%! assert (D * vech (C), vec (C), 1e-6); + +%!test +%! N = 3; +%! A = rand(N); +%! B = A * A'; +%! C = A + A'; +%! D = duplication_matrix (N); +%! assert (D * vech (B), vec (B), 1e-6); +%! assert (D * vech (C), vec (C), 1e-6); + +%!test +%! N = 4; +%! A = rand(N); +%! B = A * A'; +%! C = A + A'; +%! D = duplication_matrix (N); +%! assert (D * vech (B), vec (B), 1e-6); +%! assert (D * vech (C), vec (C), 1e-6); + +%!error duplication_matrix (); +%!error duplication_matrix (0.5); +%!error duplication_matrix (-1); +%!error duplication_matrix (ones(1,4));