Skip to content

Commit 90252f8

Browse files
committed
Updated tests
1 parent 90aa198 commit 90252f8

17 files changed

Lines changed: 333 additions & 13 deletions

test/Test1D_sbg_input.sbg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ E11 = E10+10;
4242
offM111 = V2 - E10 + 1;
4343
offM211 = V7 - E10;
4444

45-
matchSCCTS(
45+
matchSCC(
4646
V: {[V0+1:1:V1], [V1+1:1:V2], [V2+1:1:V3], [V3+1:1:V4], [V4+1:1:V5], [V5+1:1:V6], [V6+1:1:V7], [V7+1:1:V8]}
4747
Vmap: <<{[V0+1:1:V1]} -> |0*x+1|, {[V1+1:1:V2]} -> |0*x+2|, {[V2+1:1:V3]} -> |0*x+3|, {[V3+1:1:V4]} -> |0*x+4|, {[V4+1:1:V5]} -> |0*x+5|, {[V5+1:1:V6]} -> |0*x+6|, {[V6+1:1:V7]} -> |0*x+7|, {[V7+1:1:V8]} -> |0*x+8|>>
4848
map1: <<{[E0+1:1:E1]} -> |1*x+offM11|, {[E1+1:1:E2]} -> |1*x+offM12|, {[E2+1:1:E3]} -> |1*x+offM13|, {[E3+1:1:E4]} -> |1*x+offM14|, {[E4+1:1:E5]} -> |1*x+offM15|, {[E5+1:1:E6]} -> |1*x+offM16|, {[E6+1:1:E7]} -> |1*x+offM17|, {[E7+1:1:E8]} -> |1*x+offM18|, {[E8+1:1:E9]} -> |1*x+offM19|, {[E9+1:1:E10]} -> |1*x+offM110|, {[E10+1:1:E11]} -> |1*x+offM111|>>

test/TestRL2.test

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
/* Matching + SCC test originated from the following model
2+
(the result is indicated with comments):
3+
4+
model TestRL2
5+
//iR[i] must be computed out of iR[i+1]
6+
//uL[i+1] must be computed out of uL[i]
7+
8+
constant Integer N=100000;
9+
Real iL[N],iR[N],uL[N];
10+
parameter Real L=1,R=1,L1=1,I=1,R0=1;
11+
equation
12+
for i in 1:N loop
13+
L*der(iL[i])=uL[i]; // der(iL[1:N])
14+
end for;
15+
for i in 1:N-1 loop
16+
iR[i]-iR[i+1]-iL[i]=0; // iR[1:N-1]
17+
uL[i]-uL[i+1]-R*iR[i+1]=0; // uL[2:N]
18+
end for;
19+
iR[N]-iL[N]+I=0; // iR[N]
20+
uL[1]+(R+R0)*iR[1]=0; // uL[1]
21+
end TestRL2;
22+
*/
23+
24+
N = 100000;
25+
26+
F1 = N;
27+
F2 = N-1+F1;
28+
F3 = N-1+F2;
29+
F4 = 1+F3;
30+
F5 = 1+F4;
31+
U1 = N+F5; // der(iL)
32+
U2 = N+U1; // iR
33+
U3 = N+U2; // uL
34+
35+
E1 = N; // F1 - der(iL[i])
36+
E2 = N+E1; // F1 - uL[i]
37+
E3 = N-1+E2; // F2 - iR[i]
38+
E4 = N-1+E3; // F2 - iR[i+1]
39+
E5 = N-1+E4; // F3 - iR[i+1]
40+
E6 = N-1+E5; // F3 - uL[i]
41+
E7 = N-1+E6; // F3 - uL[i+1]
42+
E8 = 1+E7; // F4 - iR[N]
43+
E9 = 1+E8; // F5 - iR[1]
44+
E10 = 1+E9; // F5 - uL[1]
45+
46+
off1d = F1 - E1;
47+
off2d = F1 - E2;
48+
off3d = F2 - E3;
49+
off4d = F2 - E4;
50+
off5d = F3 - E5;
51+
off6d = F3 - E6;
52+
off7d = F3 - E7;
53+
off8d = F4 - E8;
54+
off9d = F5 - E9;
55+
off10d = F5 - E10;
56+
57+
off1b = U1 - E1;
58+
off2b = U3 - E2;
59+
off3b = U2 - E3 - 1;
60+
off4b = U2 - E4;
61+
off5b = U2 - E5;
62+
off6b = U3 - E6 - 1;
63+
off7b = U3 - E7;
64+
off8b = U2 - E8;
65+
off9b = U2 - E9 - N + 1;
66+
off10b = U3 - E10 - N + 1;
67+
68+
V: {[1:1:F1], [F1+1:1:F2], [F2+1:1:F3], [F3+1:1:F4], [F4+1:1:F5]
69+
, [F5+1:1:U1], [U1+1:1:U2], [U2+1:1:U3]}
70+
Vmap: <<{[1:1:F1]} -> |0*x+1|, {[F1+1:1:F2]} -> |0*x+2|, {[F2+1:1:F3]} -> |0*x+3
71+
|, {[F3+1:1:F4]} -> |0*x+4|, {[F4+1:1:F5]} -> |0*x+5
72+
|, {[F5+1:1:U1]} -> |0*x+6|, {[U1+1:1:U2]} -> |0*x+7|, {[U2+1:1:U3]} -> |0*x+8|>>
73+
map1: <<{[1:1:E1]} -> |1*x+off1d|, {[E1+1:1:E2]} -> |1*x+off2d|, {[E2+1:1:E3]} -> |1*x+off3d
74+
|, {[E3+1:1:E4]} -> |1*x+off4d|, {[E4+1:1:E5]} -> |1*x+off5d|, {[E5+1:1:E6]} -> |1*x+off6d
75+
|, {[E6+1:1:E7]} -> |1*x+off7d|, {[E7+1:1:E8]} -> |1*x+off8d|, {[E8+1:1:E9]} -> |1*x+off9d
76+
|, {[E9+1:1:E10]} -> |1*x+off10d|>>
77+
map2: <<{[1:1:E1]} -> |1*x+off1b|, {[E1+1:1:E2]} -> |1*x+off2b|, {[E2+1:1:E3]} -> |1*x+off3b
78+
|, {[E3+1:1:E4]} -> |1*x+off4b|, {[E4+1:1:E5]} -> |1*x+off5b|, {[E5+1:1:E6]} -> |1*x+off6b
79+
|, {[E6+1:1:E7]} -> |1*x+off7b|, {[E7+1:1:E8]} -> |1*x+off8b|, {[E8+1:1:E9]} -> |1*x+off9b
80+
|, {[E9+1:1:E10]} -> |1*x+off10b|>>
81+
Emap: <<{[1:1:E1]} -> |0*x+1|, {[E1+1:1:E2]} -> |0*x+2|, {[E2+1:1:E3], [E3+1:1:E4]} -> |0*x+3
82+
|, {[E4+1:1:E5]} -> |0*x+4
83+
|, {[E5+1:1:E6], [E6+1:1:E7]} -> |0*x+6|, {[E7+1:1:E8]} -> |0*x+7|, {[E8+1:1:E9]} -> |0*x+8
84+
|, {[E9+1:1:E10]} -> |0*x+9|>>;
85+
86+
matchSCC(
87+
V: {[1:1:F1], [F1+1:1:F2], [F2+1:1:F3], [F3+1:1:F4], [F4+1:1:F5]
88+
, [F5+1:1:U1], [U1+1:1:U2], [U2+1:1:U3]}
89+
Vmap: <<{[1:1:F1]} -> |0*x+1|, {[F1+1:1:F2]} -> |0*x+2|, {[F2+1:1:F3]} -> |0*x+3
90+
|, {[F3+1:1:F4]} -> |0*x+4|, {[F4+1:1:F5]} -> |0*x+5
91+
|, {[F5+1:1:U1]} -> |0*x+6|, {[U1+1:1:U2]} -> |0*x+7|, {[U2+1:1:U3]} -> |0*x+8|>>
92+
map1: <<{[1:1:E1]} -> |1*x+off1d|, {[E1+1:1:E2]} -> |1*x+off2d|, {[E2+1:1:E3]} -> |1*x+off3d
93+
|, {[E3+1:1:E4]} -> |1*x+off4d|, {[E4+1:1:E5]} -> |1*x+off5d|, {[E5+1:1:E6]} -> |1*x+off6d
94+
|, {[E6+1:1:E7]} -> |1*x+off7d|, {[E7+1:1:E8]} -> |1*x+off8d|, {[E8+1:1:E9]} -> |1*x+off9d
95+
|, {[E9+1:1:E10]} -> |1*x+off10d|>>
96+
map2: <<{[1:1:E1]} -> |1*x+off1b|, {[E1+1:1:E2]} -> |1*x+off2b|, {[E2+1:1:E3]} -> |1*x+off3b
97+
|, {[E3+1:1:E4]} -> |1*x+off4b|, {[E4+1:1:E5]} -> |1*x+off5b|, {[E5+1:1:E6]} -> |1*x+off6b
98+
|, {[E6+1:1:E7]} -> |1*x+off7b|, {[E7+1:1:E8]} -> |1*x+off8b|, {[E8+1:1:E9]} -> |1*x+off9b
99+
|, {[E9+1:1:E10]} -> |1*x+off10b|>>
100+
Emap: <<{[1:1:E1]} -> |0*x+1|, {[E1+1:1:E2]} -> |0*x+2|, {[E2+1:1:E3], [E3+1:1:E4]} -> |0*x+3
101+
|, {[E4+1:1:E5]} -> |0*x+4
102+
|, {[E5+1:1:E6], [E6+1:1:E7]} -> |0*x+6|, {[E7+1:1:E8]} -> |0*x+7|, {[E8+1:1:E9]} -> |0*x+8
103+
|, {[E9+1:1:E10]} -> |0*x+9|>>
104+
, 1
105+
);

test/TestRL3.test

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
/* Matching + SCC test originated from the following model
2+
(the result is indicated with comments):
3+
4+
model TestRL3
5+
//iR[i] and iR[i+1] can be computed out of each other
6+
//uL[i] and uL[i+1] can be computed out of each other
7+
//All variables form a large algebraic loop
8+
9+
constant Integer N=100000;
10+
Real iL[N],iR[N],uL[N];
11+
parameter Real L=1,R=1,L1=1,U=1,R0=1;
12+
equation
13+
for i in 1:N loop
14+
L*der(iL[i])=uL[i]; // der(iL[1:N])
15+
end for;
16+
for i in 1:N-1 loop
17+
iR[i]-iR[i+1]-iL[i]=0; // iR[1], iR[3:N]
18+
uL[i]-uL[i+1]-R*iR[i+1]=0; // iR[2], uL[2:N-1]
19+
end for;
20+
U-uL[1]-R*iR[1]=0; // uL[1]
21+
uL[N]-(iR[N]-iL[N])*R0=0; // uL[N]
22+
end TestRL3;
23+
*/
24+
25+
N = 100000;
26+
27+
F1 = N;
28+
F2 = N-1+F1;
29+
F3 = N-1+F2;
30+
F4 = 1+F3;
31+
F5 = 1+F4;
32+
U1 = N+F5; // der(iL)
33+
U2 = N+U1; // iR
34+
U3 = N+U2; // uL
35+
36+
E1 = N; // F1 - der(iL[i])
37+
E2 = N+E1; // F1 - uL[i]
38+
E3 = N-1+E2; // F2 - iR[i]
39+
E4 = N-1+E3; // F2 - iR[i+1]
40+
E5 = N-1+E4; // F3 - iR[i]
41+
E6 = N-1+E5; // F3 - uL[i]
42+
E7 = N-1+E6; // F3 - uL[i+1]
43+
E8 = 1+E7; // F4 - iR[1]
44+
E9 = 1+E8; // F4 - uL[1]
45+
E10 = 1+E9; // F5 - iR[N]
46+
E11 = 1+E10; // F5 - uL[N]
47+
48+
off1d = F1-E1;
49+
off2d = F1-E2;
50+
off3d = F2-E3;
51+
off4d = F2-E4;
52+
off5d = F3-E5;
53+
off6d = F3-E6;
54+
off7d = F3-E7;
55+
off8d = F4-E8;
56+
off9d = F4-E9;
57+
off10d = F5-E10;
58+
off11d = F5-E11;
59+
60+
off1b = U1-E1;
61+
off2b = U3-E2;
62+
off3b = U2-E3-1;
63+
off4b = U2-E4;
64+
off5b = U2-E5;
65+
off6b = U3-E6-1;
66+
off7b = U3-E7;
67+
off8b = U2-E8-N+1;
68+
off9b = U3-E9-N+1;
69+
off10b = U2-E10;
70+
off11b = U3-E11;
71+
72+
V: {[1:1:F1], [F1+1:1:F2], [F2+1:1:F3], [F3+1:1:F4], [F4+1:1:F5]
73+
, [F5+1:1:U1], [U1+1:1:U2], [U2+1:1:U3]}
74+
Vmap: <<{[1:1:F1]} -> |0*x+1|, {[F1+1:1:F2]} -> |0*x+2|, {[F2+1:1:F3]} -> |0*x+3
75+
|, {[F3+1:1:F4]} -> |0*x+4|, {[F4+1:1:F5]} -> |0*x+5
76+
|, {[F5+1:1:U1]} -> |0*x+6|, {[U1+1:1:U2]} -> |0*x+7|, {[U2+1:1:U3]} -> |0*x+8|>>
77+
map1: <<{[1:1:E1]} -> |1*x+off1d|, {[E1+1:1:E2]} -> |1*x+off2d|, {[E2+1:1:E3]} -> |1*x+off3d
78+
|, {[E3+1:1:E4]} -> |1*x+off4d|, {[E4+1:1:E5]} -> |1*x+off5d|, {[E5+1:1:E6]} -> |1*x+off6d
79+
|, {[E6+1:1:E7]} -> |1*x+off7d|, {[E7+1:1:E8]} -> |1*x+off8d|, {[E8+1:1:E9]} -> |1*x+off9d
80+
|, {[E9+1:1:E10]} -> |1*x+off10d|, {[E10+1:1:E11]} -> |1*x+off11d|>>
81+
map2: <<{[1:1:E1]} -> |1*x+off1b|, {[E1+1:1:E2]} -> |1*x+off2b|, {[E2+1:1:E3]} -> |1*x+off3b
82+
|, {[E3+1:1:E4]} -> |1*x+off4b|, {[E4+1:1:E5]} -> |1*x+off5b|, {[E5+1:1:E6]} -> |1*x+off6b
83+
|, {[E6+1:1:E7]} -> |1*x+off7b|, {[E7+1:1:E8]} -> |1*x+off8b|, {[E8+1:1:E9]} -> |1*x+off9b
84+
|, {[E9+1:1:E10]} -> |1*x+off10b|, {[E10+1:1:E11]} -> |1*x+off11b|>>
85+
Emap: <<{[1:1:E1]} -> |0*x+1|, {[E1+1:1:E2]} -> |0*x+2|, {[E2+1:1:E3], [E3+1:1:E4]} -> |0*x+3
86+
|, {[E4+1:1:E5], [E5+1:1:E6]} -> |0*x+4
87+
|, {[E6+1:1:E7]} -> |0*x+6|, {[E7+1:1:E8]} -> |0*x+7|, {[E8+1:1:E9]} -> |0*x+8
88+
|, {[E9+1:1:E10]} -> |0*x+9|, {[E10+1:1:E11]} -> |0*x+10|>>;
89+
90+
matchSCC(
91+
V: {[1:1:F1], [F1+1:1:F2], [F2+1:1:F3], [F3+1:1:F4], [F4+1:1:F5]
92+
, [F5+1:1:U1], [U1+1:1:U2], [U2+1:1:U3]}
93+
Vmap: <<{[1:1:F1]} -> |0*x+1|, {[F1+1:1:F2]} -> |0*x+2|, {[F2+1:1:F3]} -> |0*x+3
94+
|, {[F3+1:1:F4]} -> |0*x+4|, {[F4+1:1:F5]} -> |0*x+5
95+
|, {[F5+1:1:U1]} -> |0*x+6|, {[U1+1:1:U2]} -> |0*x+7|, {[U2+1:1:U3]} -> |0*x+8|>>
96+
map1: <<{[1:1:E1]} -> |1*x+off1d|, {[E1+1:1:E2]} -> |1*x+off2d|, {[E2+1:1:E3]} -> |1*x+off3d
97+
|, {[E3+1:1:E4]} -> |1*x+off4d|, {[E4+1:1:E5]} -> |1*x+off5d|, {[E5+1:1:E6]} -> |1*x+off6d
98+
|, {[E6+1:1:E7]} -> |1*x+off7d|, {[E7+1:1:E8]} -> |1*x+off8d|, {[E8+1:1:E9]} -> |1*x+off9d
99+
|, {[E9+1:1:E10]} -> |1*x+off10d|, {[E10+1:1:E11]} -> |1*x+off11d|>>
100+
map2: <<{[1:1:E1]} -> |1*x+off1b|, {[E1+1:1:E2]} -> |1*x+off2b|, {[E2+1:1:E3]} -> |1*x+off3b
101+
|, {[E3+1:1:E4]} -> |1*x+off4b|, {[E4+1:1:E5]} -> |1*x+off5b|, {[E5+1:1:E6]} -> |1*x+off6b
102+
|, {[E6+1:1:E7]} -> |1*x+off7b|, {[E7+1:1:E8]} -> |1*x+off8b|, {[E8+1:1:E9]} -> |1*x+off9b
103+
|, {[E9+1:1:E10]} -> |1*x+off10b|, {[E10+1:1:E11]} -> |1*x+off11b|>>
104+
Emap: <<{[1:1:E1]} -> |0*x+1|, {[E1+1:1:E2]} -> |0*x+2|, {[E2+1:1:E3], [E3+1:1:E4]} -> |0*x+3
105+
|, {[E4+1:1:E5], [E5+1:1:E6]} -> |0*x+4
106+
|, {[E6+1:1:E7]} -> |0*x+6|, {[E7+1:1:E8]} -> |0*x+7|, {[E8+1:1:E9]} -> |0*x+8
107+
|, {[E9+1:1:E10]} -> |0*x+9|, {[E10+1:1:E11]} -> |0*x+10|>>
108+
, 1
109+
);

test/TestRL4.test

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
/* Matching + SCC test originated from the following model
2+
(the result is indicated with comments):
3+
4+
model TestRL4
5+
//iR[i+1] must be computed out of iR[i]
6+
//uL[i] must be computed out of uL[i+1]
7+
8+
constant Integer N=100000;
9+
Real iL[N],iR[N],uL[N];
10+
parameter Real L=1,R=1,L1=1,I=1,R0=1;
11+
equation
12+
for i in 1:N loop
13+
L*der(iL[i])=uL[i]; // der(iL[1:N])
14+
end for;
15+
for i in 1:N-1 loop
16+
iR[i]-iR[i+1]-iL[i]=0; // iR[2:N]
17+
uL[i]-uL[i+1]-R*iR[i+1]=0; // uL[1:N-1]
18+
end for;
19+
iR[1]=I; // iR[1]
20+
uL[N]-(iR[N]-iL[N])*R0=0; // uL[N]
21+
end TestRL4;
22+
*/
23+
24+
N = 100000;
25+
26+
F1 = N;
27+
F2 = N-1+F1;
28+
F3 = N-1+F2;
29+
F4 = 1+F3;
30+
F5 = 1+F4;
31+
U1 = N+F5; // der(iL)
32+
U2 = N+U1; // iR
33+
U3 = N+U2; // uL
34+
35+
E1 = N; // F1 - der(iL[i])
36+
E2 = N+E1; // F1 - uL[i]
37+
E3 = N-1+E2; // F2 - iR[i]
38+
E4 = N-1+E3; // F2 - iR[i+1]
39+
E5 = N-1+E4; // F3 - iR[i+1]
40+
E6 = N-1+E5; // F3 - uL[i]
41+
E7 = N-1+E6; // F3 - uL[i+1]
42+
E8 = 1+E7; // F4 - iR[1]
43+
E9 = 1+E8; // F5 - iR[N]
44+
E10 = 1+E9; // F5 - uL[N]
45+
46+
off1d = F1-E1;
47+
off2d = F1-E2;
48+
off3d = F2-E3;
49+
off4d = F2-E4;
50+
off5d = F3-E5;
51+
off6d = F3-E6;
52+
off7d = F3-E7;
53+
off8d = F4-E8;
54+
off9d = F5-E9;
55+
off10d = F5-E10;
56+
57+
off1b = U1-E1;
58+
off2b = U3-E2;
59+
off3b = U2-E3-1;
60+
off4b = U2-E4;
61+
off5b = U2-E5;
62+
off6b = U3-E6-1;
63+
off7b = U3-E7;
64+
off8b = U2-E8-N+1;
65+
off9b = U2-E9;
66+
off10b = U3-E10;
67+
68+
V: {[1:1:F1], [F1+1:1:F2], [F2+1:1:F3], [F3+1:1:F4], [F4+1:1:F5]
69+
, [F5+1:1:U1], [U1+1:1:U2], [U2+1:1:U3]}
70+
Vmap: <<{[1:1:F1]} -> |0*x+1|, {[F1+1:1:F2]} -> |0*x+2|, {[F2+1:1:F3]} -> |0*x+3
71+
|, {[F3+1:1:F4]} -> |0*x+4|, {[F4+1:1:F5]} -> |0*x+5
72+
|, {[F5+1:1:U1]} -> |0*x+6|, {[U1+1:1:U2]} -> |0*x+7|, {[U2+1:1:U3]} -> |0*x+8|>>
73+
map1: <<{[1:1:E1]} -> |1*x+off1d|, {[E1+1:1:E2]} -> |1*x+off2d|, {[E2+1:1:E3]} -> |1*x+off3d
74+
|, {[E3+1:1:E4]} -> |1*x+off4d|, {[E4+1:1:E5]} -> |1*x+off5d|, {[E5+1:1:E6]} -> |1*x+off6d
75+
|, {[E6+1:1:E7]} -> |1*x+off7d|, {[E7+1:1:E8]} -> |1*x+off8d|, {[E8+1:1:E9]} -> |1*x+off9d
76+
|, {[E9+1:1:E10]} -> |1*x+off10d|>>
77+
map2: <<{[1:1:E1]} -> |1*x+off1b|, {[E1+1:1:E2]} -> |1*x+off2b|, {[E2+1:1:E3]} -> |1*x+off3b
78+
|, {[E3+1:1:E4]} -> |1*x+off4b|, {[E4+1:1:E5]} -> |1*x+off5b|, {[E5+1:1:E6]} -> |1*x+off6b
79+
|, {[E6+1:1:E7]} -> |1*x+off7b|, {[E7+1:1:E8]} -> |1*x+off8b|, {[E8+1:1:E9]} -> |1*x+off9b
80+
|, {[E9+1:1:E10]} -> |1*x+off10b|>>
81+
Emap: <<{[1:1:E1]} -> |0*x+1|, {[E1+1:1:E2]} -> |0*x+2|, {[E2+1:1:E3], [E3+1:1:E4]} -> |0*x+3
82+
|, {[E4+1:1:E5], [E5+1:1:E6]} -> |0*x+4
83+
|, {[E6+1:1:E7]} -> |0*x+6|, {[E7+1:1:E8]} -> |0*x+7|, {[E8+1:1:E9]} -> |0*x+8
84+
|, {[E9+1:1:E10]} -> |0*x+9|>>;
85+
86+
matchSCCTS(
87+
V: {[1:1:F1], [F1+1:1:F2], [F2+1:1:F3], [F3+1:1:F4], [F4+1:1:F5]
88+
, [F5+1:1:U1], [U1+1:1:U2], [U2+1:1:U3]}
89+
Vmap: <<{[1:1:F1]} -> |0*x+1|, {[F1+1:1:F2]} -> |0*x+2|, {[F2+1:1:F3]} -> |0*x+3
90+
|, {[F3+1:1:F4]} -> |0*x+4|, {[F4+1:1:F5]} -> |0*x+5
91+
|, {[F5+1:1:U1]} -> |0*x+6|, {[U1+1:1:U2]} -> |0*x+7|, {[U2+1:1:U3]} -> |0*x+8|>>
92+
map1: <<{[1:1:E1]} -> |1*x+off1d|, {[E1+1:1:E2]} -> |1*x+off2d|, {[E2+1:1:E3]} -> |1*x+off3d
93+
|, {[E3+1:1:E4]} -> |1*x+off4d|, {[E4+1:1:E5]} -> |1*x+off5d|, {[E5+1:1:E6]} -> |1*x+off6d
94+
|, {[E6+1:1:E7]} -> |1*x+off7d|, {[E7+1:1:E8]} -> |1*x+off8d|, {[E8+1:1:E9]} -> |1*x+off9d
95+
|, {[E9+1:1:E10]} -> |1*x+off10d|>>
96+
map2: <<{[1:1:E1]} -> |1*x+off1b|, {[E1+1:1:E2]} -> |1*x+off2b|, {[E2+1:1:E3]} -> |1*x+off3b
97+
|, {[E3+1:1:E4]} -> |1*x+off4b|, {[E4+1:1:E5]} -> |1*x+off5b|, {[E5+1:1:E6]} -> |1*x+off6b
98+
|, {[E6+1:1:E7]} -> |1*x+off7b|, {[E7+1:1:E8]} -> |1*x+off8b|, {[E8+1:1:E9]} -> |1*x+off9b
99+
|, {[E9+1:1:E10]} -> |1*x+off10b|>>
100+
Emap: <<{[1:1:E1]} -> |0*x+1|, {[E1+1:1:E2]} -> |0*x+2|, {[E2+1:1:E3], [E3+1:1:E4]} -> |0*x+3
101+
|, {[E4+1:1:E5], [E5+1:1:E6]} -> |0*x+4
102+
|, {[E6+1:1:E7]} -> |0*x+6|, {[E7+1:1:E8]} -> |0*x+7|, {[E8+1:1:E9]} -> |0*x+8
103+
|, {[E9+1:1:E10]} -> |0*x+9|>>
104+
, 1
105+
);

test/advection.test

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ map1: <<{[E0+1:1:E1]} -> |1*x+offM11 |, {[E1+1:1:E2]} -> |1*x+offM12|>>
3434
map2: <<{[E0+1:1:E1]} -> |1*x+offM21 |, {[E1+1:1:E2]} -> |1*x+offM22|>>
3535
Emap: <<{[E0+1:1:E1]} -> |0*x+1 |, {[E1+1:1:E2]} -> |0*x+2|>>;
3636

37-
matchSCCTS(
37+
matchSCC(
3838
V: {[V0+1:1:V1] , [V1+1:1:V2] , [V2+1:1:V3]}
3939
Vmap: <<{[V0+1:1:V1]} -> |0*x+1 |, {[V1+1:1:V2]} -> |0*x+2 |, {[V2+1:1:V3]} -> |0*x+3|>>
4040
map1: <<{[E0+1:1:E1]} -> |1*x+offM11 |, {[E1+1:1:E2]} -> |1*x+offM12|>>

test/implicit_indices.test

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ map1: <<{[0:1:99]x[0:1:99]} -> |1*x+101|1*x+200|, {[100:1:199]x[100:1:199]} -> |
1818
map2: <<{[100:1:199]x[100:1:199]} -> |0*x+100|1*x+0|, {[0:1:99]x[0:1:99]} -> |1*x+0|1*x+0|>>
1919
Emap: <<{[0:1:99]x[0:1:99]} -> |0*x+1|0*x+1|, {[100:1:199]x[100:1:199]} -> |0*x+2|0*x+2|>>;
2020

21-
matching(
21+
match(
2222
V: {[0:1:99]x[0:1:99], [101:1:200]x[200:1:299], [100:1:100]x[100:1:199]}
2323
Vmap: <<{[100:1:100]x[100:1:199]} -> |0*x+2|0*x+2|, {[0:1:199]x[0:1:199]} -> |0*x+1|0*x+1
2424
|, {[101:1:200]x[200:1:299]} -> |0*x+3|0*x+3|>>

test/matching2.test

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ map1: <<{[1:1:E1]} -> |1*x+0|, {[E1+1:1:E2]} -> |1*x+0|, {[E2+1:1:E3]} -> |1*x-o
3535
map2: <<{[1:1:E1]} -> |1*x+off1d|, {[E1+1:1:E2]} -> |1*x+off2d|, {[E2+1:1:E3]} -> |1*x+off3d|>>
3636
Emap: <<{[1:1:E1]} -> |0*x+1|, {[E1+1:1:E2], [E2+1:1:E3]} -> |0*x+2|>>;
3737

38-
matching(
38+
match(
3939
V: {[1:1:V1], [V1+1:1:V2], [V2+1:1:V3]}
4040
Vmap: <<{[1:1:V1]} -> |0*x+1|, {[V1+1:1:V2]} -> |0*x+2|, {[V2+1:1:V3]} -> |0*x+3|>>
4141
map1: <<{[1:1:E1]} -> |1*x+0|, {[E1+1:1:E2]} -> |1*x+0|, {[E2+1:1:E3]} -> |1*x-off3b|>>

test/matching3.test

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ map2: <<{[1:1:1]} -> |1*x+3|, {[2:1:2]} -> |1*x+1|, {[3:1:3]} -> |1*x-1|, {[4:1:
4343
Emap: <<{[1:1:1]} -> |0*x+1|, {[2:1:2]} -> |0*x+2|, {[3:1:3]} -> |0*x+3|, {[4:1:4]} -> |0*x+4|, {[5:1:5]} -> |0*x+5
4444
|, {[6:1:6]} -> |0*x+6|, {[7:1:7]} -> |0*x+7|, {[8:1:8]} -> |0*x+8|, {[9:1:9]} -> |0*x+9|, {[10:1:10]} -> |0*x+10|>>;
4545

46-
matching(
46+
match(
4747
V: {[2:1:2], [3:1:3], [4:1:4], [5:1:5], [9:1:9], [10:1:10], [11:1:11], [12:1:12]}
4848
Vmap: <<{[2:1:2]} -> |0*x+1|, {[3:1:3]} -> |0*x+2|, {[4:1:4]} -> |0*x+3|, {[5:1:5]} -> |0*x+4
4949
|, {[9:1:9]} -> |0*x+9|, {[10:1:10]} -> |0*x+10|, {[11:1:11]} -> |0*x+11|, {[12:1:12]} -> |0*x+12|>>

test/performance/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ target_sources(
77
sbg-performance
88
PRIVATE
99
main.cpp
10+
dom_ord_pwmap_perf.cpp
1011
pw_map_perf.cpp
1112
set_perf.cpp
1213
)

test/pw_map_test_1dim.test

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ map1: <<{[E0+1:1:E1]} -> 1*x+offM11, {[E1+1:1:E2]} -> 1*x+offM12, {[E2+1:1:E3]}
6868
map2: <<{[E0+1:1:E1]} -> 1*x+offM21, {[E1+1:1:E2]} -> 1*x+offM22, {[E2+1:1:E3]} -> 1*x+offM23, {[E3+1:1:E4]} -> 1*x+offM24, {[E4+1:1:E5]} -> 1*x+offM25, {[E5+1:1:E6]} -> 1*x+offM26, {[E6+1:1:E7]} -> 1*x+offM27, {[E7+1:1:E8]} -> 1*x+offM28, {[E8+1:1:E9]} -> 1*x+offM29, {[E9+1:1:E10]} -> 1*x+offM210, {[E10+1:1:E11]} -> 1*x+offM211>>
6969
Emap: <<{[E0+1:1:E1]} -> 0*x+1, {[E1+1:1:E2]} -> 0*x+2, {[E2+1:1:E3]} -> 0*x+3, {[E3+1:1:E4]} -> 0*x+4, {[E4+1:1:E5]} -> 0*x+5, {[E5+1:1:E6]} -> 0*x+6, {[E6+1:1:E7]} -> 0*x+7, {[E7+1:1:E8]} -> 0*x+8, {[E8+1:1:E9]} -> 0*x+9, {[E9+1:1:E10]} -> 0*x+10, {[E10+1:1:E11]} -> 0*x+11>>;
7070

71-
matchSCCTS(
71+
matchSCC(
7272
V: {[V0+1:1:V1], [V1+1:1:V2], [V2+1:1:V3], [V3+1:1:V4], [V4+1:1:V5], [V5+1:1:V6], [V6+1:1:V7], [V7+1:1:V8]}
7373
Vmap: <<{[V0+1:1:V1]} -> 0*x+1, {[V1+1:1:V2]} -> 0*x+2, {[V2+1:1:V3]} -> 0*x+3, {[V3+1:1:V4]} -> 0*x+4, {[V4+1:1:V5]} -> 0*x+5, {[V5+1:1:V6]} -> 0*x+6, {[V6+1:1:V7]} -> 0*x+7, {[V7+1:1:V8]} -> 0*x+8>>
7474
map1: <<{[E0+1:1:E1]} -> 1*x+offM11, {[E1+1:1:E2]} -> 1*x+offM12, {[E2+1:1:E3]} -> 1*x+offM13, {[E3+1:1:E4]} -> 1*x+offM14, {[E4+1:1:E5]} -> 1*x+offM15, {[E5+1:1:E6]} -> 1*x+offM16, {[E6+1:1:E7]} -> 1*x+offM17, {[E7+1:1:E8]} -> 1*x+offM18, {[E8+1:1:E9]} -> 1*x+offM19, {[E9+1:1:E10]} -> 1*x+offM110, {[E10+1:1:E11]} -> 1*x+offM111>>

0 commit comments

Comments
 (0)