Files
secondo/Algebras/TemporalNet/demo/smallnetwork

92 lines
5.2 KiB
Plaintext
Raw Normal View History

2026-01-23 17:03:45 +08:00
create database smallnetwork;
open database smallnetwork;
(create r:(rel(tuple((id int)(length real)(curve sline)(kind bool)(start bool)))));
(update r:= ((rel(tuple((id int)(length real)(curve sline)(kind bool)(start bool))))(
(1 845.04 ((37 136 97 118)(97 118 118 147)(118 147 186 135)(186 135 214 154)(214 154 288 155)(288 155 254 223)(254 223 386 209)(386 209 457 179)(457 179 518 202)(518 202 591 180)(591 180 640 180)(640 180 670 150)(670 150 720 140)) TRUE TRUE )
(2 437.92 ((153 48 229 89)(229 89 214 154)(214 154 162 198)(162 198 206 242)(206 242 152 310)(152 310 167 376)) TRUE TRUE )
(3 536.66 ((254 223 331 277)(331 277 326 324)(326 324 414 332)(414 332 505 315)(505 315 550 320)(550 320 600 350)(600 350 650 350)(650 350 710 360)) TRUE TRUE )
(4 278.59 ((386 209 334 135)(334 135 379 105)(379 105 358 41)(358 41 419 14)) TRUE TRUE )
(5 877.25 ((40 240 100 290)(100 290 152 310)(152 310 220 350)(220 350 260 420)(260 420 360 440)(360 440 400 390)(400 390 414 332)(414 332 460 260)(460 260 540 260)(540 260 610 240)(610 240 680 240)(680 240 720 210)) TRUE TRUE )
(6 199.443 ((600 280 600 350)(600 350 620 390)(620 390 620 430)(620 430 640 470)) TRUE TRUE )
(7 110.746 ((600 280 610 240)(610 240 620 200)(620 200 640 180)) TRUE TRUE )
(8 143.417 ((640 180 640 130)(640 130 650 80)(650 80 680 50)) TRUE TRUE )
)));
(create j:(rel(tuple((r1id int)(meas1 real)(r2id int)(meas2 real)(cc int)))));
(update j:=((rel(tuple((r1id int)(meas1 real)(r2id int)(meas2 real)(cc int))))(
( 1 201.34 2 153.06 65535 )
( 1 351.37 3 0.00 65535 )
( 1 484.11 4 0.00 65535 )
( 1 751.62 8 0 65535 )
( 2 370.24 5 133.82 65535 )
( 3 229.68 5 519.01 65535 )
( 3 425.84 6 70.00 65535 )
( 5 757.25 7 41.233 65535 )
( 6 0.0 7 0.0 65535)
( 7 110.746 8 0.0 65535)
( 1 751.62 7 110.746 65535)
)));
let n = thenetwork(1, r, j);
create mgp1:mgpoint;
update mgp1:=[const mgpoint value (
(("2007-01-01-10:10:00.000" "2007-01-01-10:10:01.000" TRUE FALSE)(1 5 1 0.0 10.0))
(("2007-01-01-10:10:01.000" "2007-01-01-10:10:02.000" TRUE FALSE)(1 5 1 10.0 25.0))
(("2007-01-01-10:10:02.000" "2007-01-01-10:10:10.000" TRUE FALSE)(1 5 1 25.0 55.0))
(("2007-01-01-10:10:10.000" "2007-01-01-10:10:20.000" TRUE FALSE)(1 5 1 55.0 85.0))
(("2007-01-01-10:10:20.000" "2007-01-01-10:10:25.000" TRUE FALSE)(1 5 1 85.0 118.0))
(("2007-01-01-10:10:25.000" "2007-01-01-10:10:40.000" TRUE FALSE)(1 5 1 118.0 185.0))
(("2007-01-01-10:10:40.000" "2007-01-01-10:10:50.000" TRUE FALSE)(1 5 1 185.0 225.0))
(("2007-01-01-10:10:50.000" "2007-01-01-10:10:55.000" TRUE FALSE)(1 5 1 225.0 285.0))
(("2007-01-01-10:10:55.000" "2007-01-01-10:10:58.000" TRUE FALSE)(1 5 1 285.0 355.0))
(("2007-01-01-10:10:58.000" "2007-01-01-10:11:08.000" TRUE FALSE)(1 5 1 355.0 425.0))
(("2007-01-01-10:11:08.000" "2007-01-01-10:11:15.000" TRUE FALSE)(1 5 1 425.0 489.0))
(("2007-01-01-10:11:15.000" "2007-01-01-10:11:21.000" TRUE FALSE)(1 5 1 489.0 549.0))
(("2007-01-01-10:11:21.000" "2007-01-01-10:11:35.000" TRUE TRUE)(1 5 1 589.0 629.0))
)];
create mgp2:mgpoint;
update mgp2:=[const mgpoint value (
(("2007-01-01-10:10:00.000" "2007-01-01-10:10:01.000" TRUE FALSE)(1 1 0 840.0 800.0))
(("2007-01-01-10:10:01.000" "2007-01-01-10:10:05.000" TRUE FALSE)(1 1 0 800.0 725.0))
(("2007-01-01-10:10:05.000" "2007-01-01-10:10:12.000" TRUE FALSE)(1 1 0 725.0 645.0))
(("2007-01-01-10:10:12.000" "2007-01-01-10:10:22.000" TRUE FALSE)(1 1 0 645.0 565.0))
(("2007-01-01-10:10:22.000" "2007-01-01-10:10:29.000" TRUE FALSE)(1 1 0 565.0 478.0))
(("2007-01-01-10:10:29.000" "2007-01-01-10:10:38.000" TRUE FALSE)(1 1 0 478.0 395.0))
(("2007-01-01-10:10:38.000" "2007-01-01-10:10:51.000" TRUE FALSE)(1 1 0 395.0 225.0))
(("2007-01-01-10:10:51.000" "2007-01-01-10:10:55.000" TRUE TRUE)(1 1 0 225.0 135.0))
)];
create mgp3:mgpoint;
update mgp3:=[const mgpoint value (
(("2007-01-01-10:10:00.000" "2007-01-01-10:10:21.000" TRUE FALSE)(1 1 1 0.0 251.0))
(("2007-01-01-10:10:21.000" "2007-01-01-10:10:37.000" TRUE FALSE)(1 1 1 251.0 400.0))
(("2007-01-01-10:10:37.000" "2007-01-01-10:10:52.000" TRUE FALSE)(1 1 1 400.0 605.0))
(("2007-01-01-10:10:52.000" "2007-01-01-10:11:20.000" TRUE FALSE)(1 1 1 605.0 800.0))
(("2007-01-01-10:11:20.000" "2007-01-01-10:11:32.000" TRUE TRUE)(1 1 1 800.0 840.0))
)];
create mgp4:mgpoint;
update mgp4:=[const mgpoint value (
(("2007-01-01-10:10:00.000" "2007-01-01-10:10:01.000" TRUE FALSE)(1 5 0 840.0 800.0))
(("2007-01-01-10:10:01.000" "2007-01-01-10:10:05.000" TRUE FALSE)(1 5 0 800.0 725.0))
(("2007-01-01-10:10:05.000" "2007-01-01-10:10:11.000" TRUE FALSE)(1 5 0 725.0 645.0))
(("2007-01-01-10:10:11.000" "2007-01-01-10:10:18.000" TRUE FALSE)(1 5 0 645.0 565.0))
(("2007-01-01-10:10:18.000" "2007-01-01-10:10:25.000" TRUE FALSE)(1 5 0 565.0 478.0))
(("2007-01-01-10:10:25.000" "2007-01-01-10:10:32.000" TRUE FALSE)(1 5 0 478.0 395.0))
(("2007-01-01-10:10:32.000" "2007-01-01-10:10:39.000" TRUE FALSE)(1 5 0 395.0 225.0))
(("2007-01-01-10:10:39.000" "2007-01-01-10:10:45.000" TRUE FALSE)(1 5 0 225.0 135.0))
(("2007-01-01-10:10:45.000" "2007-01-01-10:10:51.000" TRUE FALSE)(1 5 0 135.0 85.0))
(("2007-01-01-10:10:51.000" "2007-01-01-10:11:07.000" TRUE TRUE)(1 5 0 85.0 35.0))
)];
#query distance(mgp1,mgp2);
#query distance(mgp1,mgp3);
#query distance(mgp1,mgp4);
#query distance(mgp2,mgp3);
#query distance(mgp2,mgp4);
#query distance(mgp3,mgp4);
#query distance(mgp4,mgp4);
close database;