Adatok az N-dodekaéderhez

Felületre illeszkedő gráfok és duálisaik
Itt jószerével csak a végeredménye látható annak a munkának, amelyet a páronként szomszédos lapokkal rendelkező 12 lapú konstrukcióról készítettem, amelyhez csak ezeket az adatokat kaptam "kívülről".
Az ebből előállított txt fájl szerkesztésével megkaptam a konstrukció szerkesztését leíró mátrixot:
F= {
{ 1, 2, 7, 5, 6, 8, 9, 10, 4, 3, 11},
{ 1, 2, 20, 15, 14, 19, 18, 16, 12, 13, 17},
{ 3, 4, 27, 21, 22, 25, 23, 12, 13, 24, 26},
{ 5, 6, 29, 31, 21, 22, 32, 14, 15, 30, 28},
{ 5, 7, 34, 33, 37, 36, 35, 16, 12, 23, 28},
{ 6, 8, 38, 39, 40, 34, 33, 17, 13, 24, 29},
{ 8, 9, 18, 19, 41, 42, 25, 23, 28, 30, 38},
{ 9, 10, 43, 44, 31, 29, 24, 26, 35, 16, 18},
{ 3, 11, 41, 19, 14, 32, 40, 39, 36, 35, 26},
{ 4, 10, 43, 20, 15, 30, 38, 39, 36, 37, 27},
{ 1, 11, 41, 42, 44, 31, 21, 27, 37, 33, 17},
{ 2, 7, 34, 40, 32, 22, 25, 42, 44, 43, 20 }}
, továbbá a konstrukció 44 csúcsának a koordinátáit.
Azonban csakhamar kiderült, hogy az egy-egy sokszög csúcsai csak 5 tizedjegynyi pontosan vannak egy síkban , a GeoGebra viszont csak akkor rajzol meg egy térbeli sokszöget, ha a csúcsok legalább 10 tizedesnyi pontosan egy síkban van.
Az elvi megoldás
Lényegében azt kellett megoldani, a hogy a csúcsok koordinátáit tartalmazó 44 elemű V lista "jó", legyen, vagyis egy-egy sokszög pontjai kellő pontossággal essenek egy síkba.
Ehhez:
- válasszunk minden lap pontjai közül három eléggé távolit;
- vegyük a három pont síkjának a pólusát egy fix (jelenesetben G=((0,0,0),10) gömbre nézve.
- vegyük az így kapott 12 pont polársíkjait;;
- a keresett poliéder minden csúcsát három ilyen sík közös pontja adja. Azt, hogy melyik ez a három-három sík az F(11,12) mátrix duálisa a DF(3,44) mátrix írja le;
- a keresett poliéder 44 csúcsát - abból DF mátrixszal vezérelt 44 db három ismeretlenes lineáris egyenletrendszer megoldásaként kapjuk a 44 pontot tartalmazó V listában.
- Az F mátrix és a V lista elegendő a poliéder egyértelmű megadásához.
AZ F mátrix duálisa.
Bár nem tartozik a probléma érdemi részéhez, de előbb az F mátrixot átírtam rendezetté azzal, hogy az egymással szomszédos lapok közös éleinek a sorszámai ellentétes sorrendben legyenek. Pl. az 1. és 2. lap közös élének a csúcsai {1,2} az 1. lapon és {2,1} a 2. -on.
F= {
{ 1, 2, 7, 5, 6, 8, 9, 10, 4, 3, 11 },
{17, 13, 12, 16, 18, 19, 14, 15, 20, 2, 1 },
{ 3, 4, 27, 21, 22, 25, 23, 12, 13, 24, 26 },
{28, 30, 15, 14, 32, 22, 21, 31, 29, 6, 5 },
{ 5, 7, 34, 33, 37, 36, 35, 16, 12, 23, 28 },
{29, 24, 13, 17, 33, 34, 40, 39, 38, 8, 6 },
{38, 30, 28, 23, 25, 42, 41, 19, 18, 9, 8 },
{18, 16, 35, 26, 24, 29, 31, 44, 43, 10, 9 },
{26, 35, 36, 39, 40, 32, 14, 19, 41, 11, 3 },
{ 4, 10, 43, 20, 15, 30, 38, 39, 36, 37, 27 },
{ 1, 11, 41, 42, 44, 31, 21, 27, 37, 33, 17 },
{20, 43, 44, 42, 25, 22, 32, 40, 34, 7, 2 }
}
Onnan tudjuk, hogy az F mátrix valóban jól írja le a poliédert, hogy a mátrixban szereplő 44 szám mindegyike pontosan három sorban van jelen. mivel minden csúcs három sík közös pontja.
Ezért a DV(3,44) mátrix egy-egy sorába azoknak a síkoknak a sorszámai kerülnek, amelyekben az adott sorszámú csúcsok benne vannak.
Így az alábbi applet bemenő adata az F(11,12) mátrix, eredménye (outputja) a DF(3,44) mátrix, egyetlen utasítása:
DF=Sorozat(Sorozat(Ha({n}\Elem(F, i) ≟ {}, i, 0), i, 1, 12) \ {0}, n, 1, 44)
Ez az utasítás azonban elég tömör, megérdemel némi magyarázatot.
A külső ciklus előállít egy egyetlen elemű {n} mátrixot, amiből a listákra vonatkozó \ művelettel rendre kivontuk a V lista i-edik sorát, mint listát.
Ha a kivonás eredménye az üres {} lista, az az jelenti, hogy az n szám benne volt V i-edik sorában. Ezzel lénygében előállítottunk az F listából egy másik (11x12)-es listát, amelynek egy-egy megjegyzett (kapott) eleme i, ha n ott van a lista i-edik sorában. Ezt onnan "tudjuk", hogy ilyenkor az {n} lista kiürül: {} , így ekkor i-t megjegyezzük. Ha nincs az adott sorban az n -szám, vagyis {n}\Elem(F, i) ≟ {} értéke false , akkor 0-t írunk az adott helyre. Az így kapott sorból a \ {0} művelettel eltávolítjuk a nullákat, így a DF márix 44 sorának mindegyikében pontosan három indexnek kell lennie, mivel a 44 elem mindegyike pontosan három sorban volt ott, egy-egy példányban.
Kipróbálható, hogy ha az F mátrixot "elrontjuk" azzal, hogy valamelyik elem helyére más számot írunk, akkor mi történik.
Később meg fogom nézni, hogy ez a művelet más poliéderek duális vezérlő mátrixainak az előállítására is alkalmas-e.
Saját eljárás egy sík pólusának a megadására.
A vázolt elvi megoldás gyakorlati kivitelezéséhez DV(3,44) mátrix előállításán túlmenően szükség volt egy saját eljárás kifejlesztésére, amelynek bemenő adata egy sík három nem kollineáris pontja, eredménye a sík D((0,0,0),10) gömbjére vonatkozó pólusa.
A poliéderek közötti duális kapcsolatról, valamint a (projektív) tér síkjai és pontjai közötti pólus-poláris kapcsolatról itt olvashatunk bővebben.
A GeoGebra szempontjait figyelembe véve lényegében ezt a feladatot kell(ene) megoldanunk: Legyen az O=(0,0,0) pontnak a tér egy O-ra nem illeszkedő S=Sík(A,B,C) síkjára eső merőleges vetülete T, T-nek a G=Gömb(O,r) re vonatkozó inverze P, azaz P=Nyújtás(T, (r/t)^2) , ahol t=Távolság(O,T).
Ebből a - szerkesztéssel kapott - (A,B,C) → P hozzárendelésből is lehetne egy saját eljárást készíteni , amelynek bemenő adata három pont, eredménye e három pont síkjának a G gömbre vonatkozó pólusa. ?Mivel azonban ezt az eljárást sokszor kell használunk, és a lehető legpontosabb eredményre van szükségünk, ezért más utat választunk.
Kihasználjuk azt a könnyen igazolható összefüggést, miszerint az A=(ax,ay,az) koordinátákkal adott pont G=((0,0,0),r) gömbre vonatkozó polársíkjának az egyenlete axx+ayy+azz=r2, így a P pont koordinátáit egy három lineáris egyenletből álló három ismeretlenes egyenletrendszer - az A, B, C pontok polársíkjainak az egyenleteiből számítjuk ki, a lehető legegyszerűbb módon, a Cramer szabállyal.
A G alapgömb sugarát konstansként r=10 értékre állítottuk be, így a saját eljárás benenő aatai csak az A,B,C pontok koordinátái.
Irodalom:
Az alább preprint anyag foglalkozik érdemben ezzel a kérdéssel:
https://www.preprints.org/manuscript/202502.1872