Anar al contingut

XaoS

De L'Enciclopèdia, la wikipedia en valencià
Archiu:Xaos.png
XaoS

XaoS (es pronuncia chaos) és un programa interactiu d'ampliació (zoom) de fractales que permet a l'usuari acostar-se i alluntar-se contínuament d'un fractal en temps real.

XaoS es distribuïx com software lliure baix la GPL i és un programa multiplataforma, disponible per a distints sistemes operatius com Linux, Windows, Mac OS X, BeOS i uns atres.[1] En anys recents també s'ha publicat una versió web que pot funcionar sense conexió, accessible en https://xaos.app.[2]

XaoS pot mostrar el Conjunt de Mandelbrot (potències 2, 3, 4, 5 i 6), el Octo fractal, tres tipos de fractales de Barnsley, el Fractal de Newton (orde 3 i 4), el fractal Phoenix i Magnet (1 i 2). També pot generar conjunts de Julia a partir de regions seleccionades d'atres fractales, i permet introduir fòrmules personalisades.

Versions anteriors de XaoS podien representar fractales com Art ASCII usant AAlib, lo que, junt en la seua integració en ferramentes de GNU, permetia eixecutar-ho pràcticament en qualsevol lloc. Versions més recents ampren la biblioteca multiplataforma Qt.

El programa inclou ajuda interactiva i una introducció animada als fractales. Dita introducció s'organisa en dèu capítuls que presenten distintes fòrmules disponibles en el software i les seues característiques.

Algoritme de Hubička

[editar | editar còdic]

XaoS va escomençar sent un visor del conjunt de Mandelbrot descrit pel seu autor com "mal escrit",[3] fins que Jan Hubička va afegir un método de zoom eficient, conegut a voltes com algoritme de XaoS o algoritme de Hubička.

En aquella época, les películes de zoom sobre fractales es produïen recalculando per complet cada fotograma, a pesar de que fotogrames consecutius compartixen de forma natural grans zones en comuna. Açò feya impossible un zoom interactiu sense ordenadors molt potents.[4] Ademés, llevat que s'aplicara processament adicional para antialiasing, recalcular cada fotograma podia produir un efecte de «parpadeo» quan chicotetes zones lluentes apareixen i desapareixen entre píxels.[5]

Permetre que l'usuari faça zoom de forma decorreguda, en lloc de "bots" com en Fractint, resultava una forma més natural d'interactuar en fractales. Per a conseguir-ho, Hubička necessitava reutilisar càlculs ya realisats. Guardar cada píxel calculat consumiria massa memòria, aixina que l'algoritme conserva solament el fotograma anterior i, en lloc de recordar la posició exacta de cada píxel, manté files i columnes alineades i reutilisa eixes files/columnes.


La part més difícil de l'algoritme consistix en decidir qué files i columnes guardades es dibuixen en cada posició. Si s'elegix mal, l'image es distorsiona, pero deu fer-se lo prou ràpit com per a que el zoom resulte útil. Despuix de provar vàries heurístiques, el problema es va tractar com un d'optimisació.

Les files i columnes que falten es colorean inicialment igual que la fila o columna més propenca, i es recalculan en quant la CPU té temps disponible. L'algoritme equilibra mantindre el moviment de zoom en aumentar el nivell de detall: es priorisa l'àrea cap a la que s'està fent zoom (perque permaneixerà més temps en pantalla i sol ser a on mira l'usuari). En alluntar-se, ocorre lo contrari i es priorisen les vores.[5]

L'algoritme de Hubička també pot aplicar-se a zoom interactiu sobre atres imàgens en les que els píxels es calculen, i s'ha utilisat en atres programes d'ampliació de fractales i visualisació matemàtica.[6]


Referències

[editar | editar còdic]
  1. «XaoS - GNU Project - Free Software Foundation». Consultat el 14 de decembre de 2025.
  2. «XaoS Web App». Consultat el 14 de decembre de 2025.
  3. «XaoS man page / README» (en en). Consultat el 14 de decembre de 2025.
  4. «CS and Danse» (en en) (pdf). Archivat des d'el original, el 20 de decembre de 2005. Consultat el 14 de decembre de 2025.
  5. 5,0 5,1 «XaoS Algorithms» (en en). Archivat des d'el original, el 28 de març de 2014. Consultat el 14 de decembre de 2025.
  6. «Visualizations on the Complex Plane» (en en). Archivat des d'el original, el 17 d'octubre de 2006. Consultat el 14 de decembre de 2025.