Mercurial > repos > public > sbplib
annotate +blockmatrix/isDivisionTest.m @ 1037:2d7ba44340d0 feature/burgers1d
Pass scheme specific parameters as cell array. This will enabale constructDiffOps to be more general. In addition, allow for schemes returning function handles as diffOps, which is currently how non-linear schemes such as Burgers1d are implemented.
author | Vidar Stiernström <vidar.stiernstrom@it.uu.se> |
---|---|
date | Fri, 18 Jan 2019 09:02:02 +0100 |
parents | a5f1b0267dba |
children |
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 |