Mercurial > repos > public > sbplib
view +blockmatrix/isBlockmatrixTest.m @ 1198:2924b3a9b921 feature/d2_compatible
Add OpSet for fully compatible D2Variable, created from regular D2Variable by replacing d1 by first row of D1. Formal reduction by one order of accuracy at the boundary point.
author | Martin Almquist <malmquist@stanford.edu> |
---|---|
date | Fri, 16 Aug 2019 14:30:28 -0700 |
parents | f0f4ca946068 |
children |
line wrap: on
line source
function tests = isBlockmatrixTest() tests = functiontests(localfunctions); end function testIsBlockmatrix(testCase) cases = { { magic(3), false % Must be a cell array } { {[2 2 2];{1,2}}, false % All elements of the cell matrix must be regular matrices }, { {[2 2 2];[1 2]}, false % Row dimensions must match }, { {[2; 2; 2], [1; 2]}, false % Column dimensions must match }, { {}, true % An empty matrix is a matrix too }, { { [2 2; 2 1], [1; 2]; [2 2], [1] }, true % A simple valid one }, { { [2 2; 2 1], []; [2 2], [1] }, true % Empty blocks assumed to be zero and match dimensions }, { { [2 2; 2 1], []; [2 2], [] }, true % Empty blocks allowed. }, { { [2 2; 2 1], [1; 2]; [], [] }, true % Empty blocks allowed. }, { blockmatrix.zero({[1 2 3],[2 3]}), true % A zero block matrix is a block matrix }, }; for i = 1:length(cases) in = cases{i}{1}; out = blockmatrix.isBlockmatrix(in); expected = cases{i}{2}; testCase.verifyEqual(out, expected, sprintf('Should return %d for %s', expected, toString(in))); end end