Google Classroom
GeoGebraGeoGebra Ders

Adatok az N-dodekaéderhez

A hat lyukú tóruszfelületre feszített 12 csúcsú teljes gráf
A hat lyukú tóruszfelületre feszített 12 csúcsú teljes gráf

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:
  1. válasszunk minden lap pontjai közül három eléggé távolit;
  2. 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.
  3. vegyük az így kapott 12 pont polársíkjait;;
  4. 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;
  5. 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.
  6. 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