annotate reshapeRowMajTest.m @ 696:7c16b5af8d98 feature/quantumTriangles

Add Jonatans symbolic lifehax
author Ylva Rydin <ylva.rydin@telia.com>
date Thu, 05 Oct 2017 18:04:23 +0200
parents 5dad3b754c18
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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