Mercurial > repos > public > sbplib
annotate reshapeRowMajTest.m @ 617:4ced7d47bd1f feature/grids
Beam: Add ability to set one BC at a time
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Fri, 20 Oct 2017 15:56:10 +0200 |
parents | 5dad3b754c18 |
children |
rev | line source |
---|---|
165
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
1 function tests = reshapeRowMajTest() |
161
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
2 tests = functiontests(localfunctions); |
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
3 end |
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
4 |
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
5 function test1D(testCase) |
165
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
6 in = { |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
7 {5,[1; 2; 3; 4; 5]}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
8 {5,[1 2 3 4 5]}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
9 }; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
10 out = { |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
11 [1; 2; 3; 4; 5], |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
12 [1; 2; 3; 4; 5], |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
13 }; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
14 for i = 1:length(in) |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
15 testCase.verifyEqual(reshapeRowMaj(in{i}{2}, in{i}{1}),out{i}); |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
16 end |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
17 end |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
18 |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
19 |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
20 function testIdentity(testCase) |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
21 in = { |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
22 {[2,2], magic(2)}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
23 {[3,3], magic(3)}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
24 {[2,3], [1 2 3; 4 5 6]}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
25 }; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
26 |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
27 for i = 1:length(in) |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
28 testCase.verifyEqual(reshapeRowMaj(in{i}{2}, in{i}{1}),in{i}{2}); |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
29 end |
161
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
30 end |
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
31 |
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
32 function test2D(testCase) |
165
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
33 in = { |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
34 {[2,2],[11; 12; 21; 22]}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
35 {[3,2],[1 2 3; 4 5 6]}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
36 {[6 1],[1 2 3; 4 5 6]}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
37 {[1 6],[1 2 3; 4 5 6]}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
38 }; |
161
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
39 |
165
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
40 out{1}(1,1) = 11; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
41 out{1}(1,2) = 12; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
42 out{1}(2,1) = 21; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
43 out{1}(2,2) = 22; |
161
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
44 |
165
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
45 out{2} = [1 2; 3 4; 5 6]; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
46 out{3} = [1; 2; 3; 4; 5; 6]; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
47 out{4} = [1 2 3 4 5 6]; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
48 |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
49 for i = 1:length(in) |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
50 testCase.verifyEqual(reshapeRowMaj(in{i}{2}, in{i}{1}),out{i}); |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
51 end |
161
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
52 end |
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
53 |
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
54 function test3D(testCase) |
165
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
55 in = { |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
56 {[2, 2, 2], [111; 112; 121; 122; 211; 212; 221; 222]}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
57 {[8 1], cat(3,[1 2; 3 4],[5 6; 7 8])}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
58 {[1 8], cat(3,[1 2; 3 4],[5 6; 7 8])}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
59 {[2 4], cat(3,[1 2; 3 4],[5 6; 7 8])}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
60 {[4 2], cat(3,[1 2; 3 4],[5 6; 7 8])}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
61 }; |
161
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
62 |
165
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
63 out{1}(1,1,1) = 111; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
64 out{1}(1,1,2) = 112; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
65 out{1}(1,2,1) = 121; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
66 out{1}(1,2,2) = 122; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
67 out{1}(2,1,1) = 211; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
68 out{1}(2,1,2) = 212; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
69 out{1}(2,2,1) = 221; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
70 out{1}(2,2,2) = 222; |
161
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
71 |
165
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
72 out{2} = [1; 5; 2; 6; 3; 7; 4; 8]; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
73 out{3} = [1 5 2 6 3 7 4 8]; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
74 out{4} = [1 5 2 6; 3 7 4 8]; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
75 out{5} = [1 5; 2 6; 3 7; 4 8]; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
76 |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
77 for i = 1:length(in) |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
78 testCase.verifyEqual(reshapeRowMaj(in{i}{2}, in{i}{1}),out{i}); |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
79 end |
161
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
80 end |
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
81 |
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
82 function testNonSquare(testCase) |
165
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
83 in = { |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
84 {[2, 3, 4],[111; 112; 113; 114; 121; 122; 123; 124; 131; 132; 133; 134; 211; 212; 213; 214; 221; 222; 223; 224; 231; 232; 233; 234]}, |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
85 }; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
86 out{1}(1,1,1) = 111; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
87 out{1}(1,1,2) = 112; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
88 out{1}(1,1,3) = 113; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
89 out{1}(1,1,4) = 114; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
90 out{1}(1,2,1) = 121; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
91 out{1}(1,2,2) = 122; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
92 out{1}(1,2,3) = 123; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
93 out{1}(1,2,4) = 124; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
94 out{1}(1,3,1) = 131; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
95 out{1}(1,3,2) = 132; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
96 out{1}(1,3,3) = 133; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
97 out{1}(1,3,4) = 134; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
98 out{1}(2,1,1) = 211; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
99 out{1}(2,1,2) = 212; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
100 out{1}(2,1,3) = 213; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
101 out{1}(2,1,4) = 214; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
102 out{1}(2,2,1) = 221; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
103 out{1}(2,2,2) = 222; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
104 out{1}(2,2,3) = 223; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
105 out{1}(2,2,4) = 224; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
106 out{1}(2,3,1) = 231; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
107 out{1}(2,3,2) = 232; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
108 out{1}(2,3,3) = 233; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
109 out{1}(2,3,4) = 234; |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
110 for i = 1:length(in) |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
111 testCase.verifyEqual(reshapeRowMaj(in{i}{2}, in{i}{1}),out{i}); |
5dad3b754c18
Made reshape KronVector more general. Updated name and tests.
Jonatan Werpers <jonatan@werpers.com>
parents:
163
diff
changeset
|
112 end |
161
73bc43c7379e
Added function for reshaping grid functions. Added size() method to structured grid.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
113 end |