fix: Add three missing edges

This commit is contained in:
Glen Whitney 2025-09-22 08:38:29 -07:00
parent 02cf7580bc
commit 3afdd3a36b
3 changed files with 149 additions and 146 deletions

View file

@ -829,15 +829,15 @@ const_array!(ACRON554_COMMON: (&str, [f64; 3], bool, usize, &str) = [
("B_NE", [ HPHI, HPHI, RTHPHI], P, 2, "Z_E"), ("B_NE", [ HPHI, HPHI, RTHPHI], P, 2, "Z_E"),
("B_NW", [-HPHI, HPHI, RTHPHI], P, 2, ""), ("B_NW", [-HPHI, HPHI, RTHPHI], P, 2, ""),
("B_SW", [-HPHI, -HPHI, RTHPHI], P, 2, "Z_S"), ("B_SW", [-HPHI, -HPHI, RTHPHI], P, 2, "Z_S"),
("B_SE", [ 0.812, -0.812, 0.89], F, 2, "Z_E,Z_S"), ("B_SE", [ 0.812, -0.812, 0.89], F, 2, "A_SE,Z_E,Z_S"),
("Y_NE", [ 0.11, 0.103, 1.019], F, 3, "B_NE"), ("Y_NE", [ 0.11, 0.103, 1.019], F, 3, "B_NE"),
("Y_NW", [-0.103, 0.103, 1.02], F, 3, "B_NW"), ("Y_NW", [-0.103, 0.103, 1.02], F, 3, "B_NW"),
("Y_SE", [ 0.11, -0.11, 1.017], F, 3, "B_SE"), ("Y_SE", [ 0.11, -0.11, 1.017], F, 3, "B_SE"),
("Y_SW", [-0.103, -0.11, 1.019], F, 3, "B_SW"), ("Y_SW", [-0.103, -0.11, 1.019], F, 3, "B_SW"),
("C_N", [ 0., 1., RTPHIPH], P, 4, "Y_NE,Y_NW"), ("C_N", [ 0., 1., RTPHIPH], P, 4, "Y_NE,Y_NW"),
("C_W", [-1., 0., RTPHIPH], P, 4, "Y_NW,Y_SW"), ("C_W", [-1., 0., RTPHIPH], P, 4, "Y_NW,Y_SW"),
("C_E", [ 1.006, -0.006, 1.45], F, 4, "Y_NE,Y_SE"), ("C_E", [ 1.006, -0.006, 1.45], F, 4, "B_NE,B_SE,Y_NE,Y_SE"),
("C_S", [ 0.006, -1.006, 1.45], F, 4, "Y_SE,Y_SW"), ("C_S", [ 0.006, -1.006, 1.45], F, 4, "B_SE,B_SW,Y_SE,Y_SW"),
("D_NE", [ 0.2, 0.181, 2.011], F, 5, "Y_NE,C_N,C_E"), ("D_NE", [ 0.2, 0.181, 2.011], F, 5, "Y_NE,C_N,C_E"),
("D_NW", [-0.181, 0.181, 2.014], F, 5, "Y_NW,C_N,C_W"), ("D_NW", [-0.181, 0.181, 2.014], F, 5, "Y_NW,C_N,C_W"),
("D_SE", [ 0.2, -0.2, 2.009], F, 5, "Y_SE,C_E,C_S"), ("D_SE", [ 0.2, -0.2, 2.009], F, 5, "Y_SE,C_E,C_S"),

View file

@ -40,21 +40,21 @@ A_SW:
Z_E: Z_E:
┌ ┐ ┌ ┐
0.22640100987140263 0.22634143549538555
-0.0000000000000011264771679683783 0.000032427771744506665
0.8216712192845821 0.8216513780396574
│ 0.5 │ │ 0.5 │
0.36320050493570133 0.363170717377161
└ ┘ └ ┘
Z_S: Z_S:
┌ ┐ ┌ ┐
0.0000000000000011207778651773038 -0.000032427771744220924
-0.22640100987140266 -0.22634143549538618
0.8216712192845821 0.8216513780396576
│ 0.5 │ │ 0.5 │
0.3632005049357014 0.36317071737716133
└ ┘ └ ┘
@ -90,51 +90,51 @@ B_SW:
B_SE: B_SE:
┌ ┐ ┌ ┐
0.809033099711693 0.8089673881587364
│ -0.8090330997116932 │ -0.8089673881587335
│ 0.8991650349038145 │ 0.8995105586041169
│ 0.5 │ │ 0.5 │
│ 1.0587834364258994 │ 1.0589799582637938
└ ┘ └ ┘
Y_NE: Y_NE:
┌ ┐ ┌ ┐
0.1069938166551964 0.10684030416478518
0.10687496051180567 0.1069861535711018
│ 1.0184481498960403 │ 1.0181778574241942
│ 0.5 │ │ 0.5 │
│ 0.5300532840864689 │ 0.5297735192825956
└ ┘ └ ┘
Y_NW: Y_NW:
┌ ┐ ┌ ┐
│ -0.10692428477988265 │ -0.10693925692260356
│ 0.10692428477988265 │ 0.10693925692260356
1.018330847132124 1.0182278452645257
│ 0.5 │ │ 0.5 │
│ 0.5299316597860524 │ │ 0.5298299819167654 │
└ ┘ └ ┘
Y_SE: Y_SE:
┌ ┐ ┌ ┐
│ 0.10698231945637848 │ 0.10684605297358556
│ -0.10698231945639325 │ -0.10684605297358302
1.018535901893324 1.0181767492960683
│ 0.5 │ │ 0.5 │
│ 0.5301529083990917 │ 0.5297580227088338
└ ┘ └ ┘
Y_SW: Y_SW:
┌ ┐ ┌ ┐
│ -0.10687496051180383 │ -0.10698615357110258
-0.1069938166551987 -0.10684030416478382
1.018448149896045 1.0181778574241929
│ 0.5 │ │ 0.5 │
│ 0.5300532840864739 │ 0.5297735192825943
└ ┘ └ ┘
@ -160,219 +160,219 @@ C_W:
C_E: C_E:
┌ ┐ ┌ ┐
│ 0.999774682263142 │ 0.9997685166344451
│ 0.00007707371674579322 │ 0.000045591796741388215
1.4560976171636484 1.4555126531079483
│ 0.5 │ │ 0.5 │
1.5598847602606936 1.5590202705588938
└ ┘ └ ┘
C_S: C_S:
┌ ┐ ┌ ┐
│ -0.00007707371679479347 │ -0.00004559179673933571
│ -0.9997746822631508 │ -0.9997685166344433
│ 1.4560976171636524 │ 1.4555126531079468
│ 0.5 │ │ 0.5 │
│ 1.5598847602607082 │ 1.5590202705588896
└ ┘ └ ┘
D_NE: D_NE:
┌ ┐ ┌ ┐
│ 0.19033806936716854 │ 0.19050130249898212
│ 0.19095328682585785 │ 0.19080920821293734
│ 2.0114149031061697 │ 2.0111349254444733
│ 0.5 │ │ 0.5 │
│ 2.0592414502287557 │ 2.0586841044725492
└ ┘ └ ┘
D_NW: D_NW:
┌ ┐ ┌ ┐
│ -0.19098096419177987 │ -0.19087531658436754
0.19098096419177987 │ 0.1908753165843677 │
2.011241314951004 2.0111018697108243
│ 0.5 │ │ 0.5 │
2.0590184768076125 2.058720870516732
└ ┘ └ ┘
D_SE: D_SE:
┌ ┐ ┌ ┐
0.19032946838241013 0.1904710244638656
│ -0.1903294683824241 │ -0.1904710244638643
2.0115648207047037 2.011170408319603
│ 0.5 │ │ 0.5 │
│ 2.0594218564511593 │ 2.0586783801164676
└ ┘ └ ┘
D_SW: D_SW:
┌ ┐ ┌ ┐
│ -0.1909532868258615 │ -0.19080920821293662
│ -0.1903380693671672 │ -0.19050130249898098
2.011414903106175 2.011134925444472
│ 0.5 │ │ 0.5 │
2.0592414502287664 2.0586841044725475
└ ┘ └ ┘
E_N: E_N:
┌ ┐ ┌ ┐
│ -0.0004604038856374817 │ -0.0001774225161991373
│ 1.0676219893284662 │ 1.0673561656973407
2.4530572130770922 2.453087108367921
│ 0.5 │ │ 0.5 │
│ 3.5786536184595112 │ 3.5784389787247153
└ ┘ └ ┘
E_W: E_W:
┌ ┐ ┌ ┐
│ -1.0676219893284706 │ -1.0673561656973403
│ 0.00046040388565697025 │ 0.00017742251619961636
│ 2.4530572130770927 │ 2.4530871083679195
│ 0.5 │ │ 0.5 │
3.5786536184595152 │ 3.578438978724712 │
└ ┘ └ ┘
E_E: E_E:
┌ ┐ ┌ ┐
1.0666707731054204 1.0669548967200053
│ 0.00046707469035518474 │ 0.0001843766584768728
2.4538581237635935 2.4532662028373866
│ 0.5 │ │ 0.5 │
3.5796028507332176 3.5784510553790545
└ ┘ └ ┘
E_S: E_S:
┌ ┐ ┌ ┐
│ -0.0004670746903934693 │ -0.00018437665847651806
-1.0666707731054261 -1.0669548967200044
2.4538581237635966 2.453266202837385
│ 0.5 │ │ 0.5 │
3.5796028507332323 3.57845105537905
└ ┘ └ ┘
F_NE: F_NE:
┌ ┐ ┌ ┐
0.2796758584560578 0.28011657185554717
0.28103193693793593 0.280597474289424
│ 3.003332401794294 │ 3.003049209443169
│ 0.5 │ │ 0.5 │
│ 4.588601770269869 │ 4.587753011062896
└ ┘ └ ┘
F_NW: F_NW:
┌ ┐ ┌ ┐
-0.2810301396616794 -0.280598407806719
│ 0.28103013966168067 │ 0.28059840780671874
│ 3.003103384288446 │ 3.002988046197754
│ 0.5 │ │ 0.5 │
│ 4.588292426736586 │ 4.587705454166589
└ ┘ └ ┘
F_SE: F_SE:
┌ ┐ ┌ ┐
0.2796768046605061 0.28011643423019444
│ -0.2796768046605201 │ -0.2801164342301949
3.003549612841133 3.0031051243209257
│ 0.5 │ │ 0.5 │
│ 4.588874270244861 │ 4.587785491049536
└ ┘ └ ┘
F_SW: F_SW:
┌ ┐ ┌ ┐
-0.2810319369379494 -0.2805974742894247
│ -0.2796758584560562 │ -0.28011657185554784
3.0033324017942995 3.003049209443168
│ 0.5 │ │ 0.5 │
4.588601770269887 4.587753011062893
└ ┘ └ ┘
G_1: G_1:
┌ ┐ ┌ ┐
│ 0.4992113404748246 │ 0.4997377212516245
│ 1.2078950246429414 │ 1.2073683664308739
│ 3.3078353127534763 │ 3.3077679987306667
│ 0.5 │ │ 0.5 │
│ 6.324999358939364 │ 6.324404048677748
└ ┘ └ ┘
G_2: G_2:
┌ ┐ ┌ ┐
│ 1.2063182040451104 │ 1.2068449832232118
│ 0.5007887810363889 │ 0.5002622274345682
│ 3.308363220828225 │ │ 3.307880423181695 │
│ 0.5 │ │ 0.5 │
6.325629722163805 │ 6.3244041808325075 │
└ ┘ └ ┘
G_4: G_4:
┌ ┐ ┌ ┐
1.2063180313441202 1.2068444751045393
│ -0.49921120092990906 │ -0.4997377595067899
│ 3.3087390625721245 │ 3.307966697528916
│ 0.5 │ │ 0.5 │
6.326084592820001 6.324427820224868
└ ┘ └ ┘
G_5: G_5:
┌ ┐ ┌ ┐
0.49921120092986965 0.4997377595067881
│ -1.2063180313441402 │ -1.2068444751045408
3.3087390625721245 3.307966697528914
│ 0.5 │ │ 0.5 │
│ 6.326084592820007 │ 6.324427820224864
└ ┘ └ ┘
G_7: G_7:
┌ ┐ ┌ ┐
│ -0.5007887810364288 │ -0.5002622274345697
│ -1.2063182040451044 │ -1.2068449832232129
3.3083632208282268 3.307880423181691
│ 0.5 │ │ 0.5 │
│ 6.325629722163823 │ 6.324404180832497
└ ┘ └ ┘
G_8: G_8:
┌ ┐ ┌ ┐
-1.207895024642962 -1.2073683664308756
│ -0.4992113404748007 │ -0.4997377212516256
│ 3.307835312753477 │ 3.307767998730663
│ 0.5 │ │ 0.5 │
6.32499935893938 6.3244040486777395
└ ┘ └ ┘
G_10: G_10:
┌ ┐ ┌ ┐
│ -1.2078955260488684 │ -1.2073693671510268
0.5007885331479526 0.50026206687508
│ 3.307456458408049 │ 3.307678829535478
│ 0.5 │ │ 0.5 │
6.324533930139645 │ 6.3243704479462215 │
└ ┘ └ ┘
G_11: G_11:
┌ ┐ ┌ ┐
│ -0.5007885331479277 │ -0.5002620668750811
│ 1.2078955260488742 │ 1.2073693671510257
3.3074564584080495 3.30767882953548
│ 0.5 │ │ 0.5 │
│ 6.324533930139641 │ 6.324370447946225
└ ┘ └ ┘

View file

@ -30,15 +30,15 @@ acron_data = [
("B_NE", [ HPHI, HPHI, RTHPHI], P, 2, "Z_E"), ("B_NE", [ HPHI, HPHI, RTHPHI], P, 2, "Z_E"),
("B_NW", [-HPHI, HPHI, RTHPHI], P, 2, ""), ("B_NW", [-HPHI, HPHI, RTHPHI], P, 2, ""),
("B_SW", [-HPHI, -HPHI, RTHPHI], P, 2, "Z_S"), ("B_SW", [-HPHI, -HPHI, RTHPHI], P, 2, "Z_S"),
("B_SE", [ 0.812, -0.812, 0.89], F, 2, "Z_E,Z_S"), ("B_SE", [ 0.812, -0.812, 0.89], F, 2, "A_SE,Z_E,Z_S"),
("Y_NE", [ 0.11, 0.103, 1.019], F, 3, "B_NE"), ("Y_NE", [ 0.11, 0.103, 1.019], F, 3, "B_NE"),
("Y_NW", [-0.103, 0.103, 1.02], F, 3, "B_NW"), ("Y_NW", [-0.103, 0.103, 1.02], F, 3, "B_NW"),
("Y_SE", [ 0.11, -0.11, 1.017], F, 3, "B_SE"), ("Y_SE", [ 0.11, -0.11, 1.017], F, 3, "B_SE"),
("Y_SW", [-0.103, -0.11, 1.019], F, 3, "B_SW"), ("Y_SW", [-0.103, -0.11, 1.019], F, 3, "B_SW"),
("C_N", [ 0., 1., RTPHIPH], P, 4, "Y_NE,Y_NW"), ("C_N", [ 0., 1., RTPHIPH], P, 4, "Y_NE,Y_NW"),
("C_W", [-1., 0., RTPHIPH], P, 4, "Y_NW,Y_SW"), ("C_W", [-1., 0., RTPHIPH], P, 4, "Y_NW,Y_SW"),
("C_E", [ 1.006, -0.006, 1.45], F, 4, "Y_NE,Y_SE"), ("C_E", [ 1.006, -0.006, 1.45], F, 4, "B_NE,B_SE,Y_NE,Y_SE"),
("C_S", [ 0.006, -1.006, 1.45], F, 4, "Y_SE,Y_SW"), ("C_S", [ 0.006, -1.006, 1.45], F, 4, "B_SE,B_SW,Y_SE,Y_SW"),
("D_NE", [ 0.2, 0.181, 2.011], F, 5, "Y_NE,C_N,C_E"), ("D_NE", [ 0.2, 0.181, 2.011], F, 5, "Y_NE,C_N,C_E"),
("D_NW", [-0.181, 0.181, 2.014], F, 5, "Y_NW,C_N,C_W"), ("D_NW", [-0.181, 0.181, 2.014], F, 5, "Y_NW,C_N,C_W"),
("D_SE", [ 0.2, -0.2, 2.009], F, 5, "Y_SE,C_E,C_S"), ("D_SE", [ 0.2, -0.2, 2.009], F, 5, "Y_SE,C_E,C_S"),
@ -63,6 +63,7 @@ acron_data = [
] ]
E = 0.0 E = 0.0
n_struts = 11 # for the pinned vertices, which all have length exactly 1
for vi in range(0, len(acron_data)): for vi in range(0, len(acron_data)):
start_id = acron_data[vi][0] start_id = acron_data[vi][0]
start = vertices[start_id] start = vertices[start_id]
@ -79,4 +80,6 @@ for vi in range(0, len(acron_data)):
(end[0]-start[0])**2 + (end[1]-start[1])**2 + (end[2]-start[2])**2) (end[0]-start[0])**2 + (end[1]-start[1])**2 + (end[2]-start[2])**2)
print(f"{start_id}-{end_id}: {dist} {dist-1}") print(f"{start_id}-{end_id}: {dist} {dist-1}")
E += fabs(dist-1) E += fabs(dist-1)
n_struts += 1
print(n_struts, "unit edges")
print(f"----> Total distortion E={E}") print(f"----> Total distortion E={E}")