annotate +blockmatrix/isDivisionTest.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 a5f1b0267dba
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
203
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
1 function tests = isDivisionTest()
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
2 tests = functiontests(localfunctions);
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
3 end
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
4
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
5 function testIsDivision(testCase)
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
6 cases = {
579
a5f1b0267dba Be less strict about what is considered a block matrix
Jonatan Werpers <jonatan@werpers.com>
parents: 203
diff changeset
7 {[1 2] ,false}, % Must be a cell array
a5f1b0267dba Be less strict about what is considered a block matrix
Jonatan Werpers <jonatan@werpers.com>
parents: 203
diff changeset
8 {{[1 2 3]} ,false}, % Must have two vectors
a5f1b0267dba Be less strict about what is considered a block matrix
Jonatan Werpers <jonatan@werpers.com>
parents: 203
diff changeset
9 {{[],[]}, true} % No blocks is a valid blockmatrix
a5f1b0267dba Be less strict about what is considered a block matrix
Jonatan Werpers <jonatan@werpers.com>
parents: 203
diff changeset
10 {{[1 2],[]} ,true},
a5f1b0267dba Be less strict about what is considered a block matrix
Jonatan Werpers <jonatan@werpers.com>
parents: 203
diff changeset
11 {{[],[1 2]} ,true},
203
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
12 {{[2 2 2],[1 2]} ,true},
579
a5f1b0267dba Be less strict about what is considered a block matrix
Jonatan Werpers <jonatan@werpers.com>
parents: 203
diff changeset
13 {{[1 2],[1 0]} ,true},
a5f1b0267dba Be less strict about what is considered a block matrix
Jonatan Werpers <jonatan@werpers.com>
parents: 203
diff changeset
14 {{[0 2],[1 1]} ,true},
203
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
15 {{[1 2],[1]} ,true},
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
16 {{[1 2],[1], [1 2 3]} ,false},
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
17 };
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
18
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
19 for i = 1:length(cases)
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
20 in = cases{i}{1};
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
21 out = blockmatrix.isDivision(in);
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
22 expected = cases{i}{2};
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
23 testCase.verifyEqual(out, expected, sprintf('Should return %d for %s', expected, toString(in)));
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
24 end
764438b52541 blockmatrix: Added functions to test for block matrcies and divisions.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
25 end