Mercurial > repos > public > sbplib
annotate +blockmatrix/getDivisionTest.m @ 379:ca73ee0623e5 feature/beams
Added an implicit central time stepping scheme.
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Fri, 09 Dec 2016 16:03:30 +0100 |
parents | f0ef314e2070 |
children | a5f1b0267dba |
rev | line source |
---|---|
205
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
1 function tests = getDivisionTest() |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
2 tests = functiontests(localfunctions); |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
3 end |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
4 |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
5 function testError(testCase) |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
6 cases = { |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
7 magic(3), |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
8 {[2 2 2];{1,2}}, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
9 {[2 2 2];[1 2]}, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
10 {[2; 2; 2], [1; 2]}, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
11 }; |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
12 |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
13 for i =1:length(cases) |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
14 testCase.verifyError(@()blockmatrix.getDivision(cases{i}), 'blockmatrix:getDivision:NotABlockmatrix') |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
15 end |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
16 end |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
17 |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
18 function testGetDivision(testCase) |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
19 cases = { |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
20 { |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
21 {}, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
22 {[],[]}; |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
23 }, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
24 { |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
25 { |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
26 [2 2; 2 1], [1; 2]; |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
27 [2 2], [1] |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
28 }, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
29 {[2 1], [2 1]} |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
30 }, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
31 { |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
32 { |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
33 [2 2; 2 1], []; |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
34 [2 2], [1] |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
35 }, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
36 {[2 1], [2 1]} |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
37 }, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
38 { |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
39 { |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
40 [2 2; 2 1], []; |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
41 [2 2], [] |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
42 }, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
43 {[2 1], [2 0]} |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
44 }, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
45 { |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
46 { |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
47 [2 2; 2 1], [1; 2]; |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
48 [], [] |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
49 }, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
50 {[2 0], [2 1]} |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
51 }, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
52 { |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
53 { |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
54 [2 2; 2 1]; |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
55 [2 2] |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
56 }, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
57 {[2 1], 2} |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
58 }, |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
59 }; |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
60 |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
61 for i = 1:length(cases) |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
62 in = cases{i}{1}; |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
63 out = blockmatrix.getDivision(in); |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
64 expected = cases{i}{2}; |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
65 testCase.verifyEqual(out, expected); |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
66 end |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
67 end |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
68 |
f0ef314e2070
blockmatrix: added function to calculate the block division for a given blockmatrix.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
69 |