No description
  • Haskell 84.7%
  • Prolog 15.3%
Find a file
2026-02-09 03:25:44 +01:00
progetto first commit 2026-02-09 03:24:40 +01:00
README.md update 2026-02-09 03:25:44 +01:00

Diffusion-Limited Aggregation (DLA) in Haskell

Un'implementazione funzionale dell'algoritmo Diffusion-Limited Aggregation (DLA), un modello di crescita frattale che simula processi come la formazione di cristalli, depositi elettrolitici e strutture ramificate in fisica e biologia.

Caratteristiche principali

  • Purezza funzionale: Implementazione puramente funzionale senza effetti collaterali.
  • Modello generico: Funziona con diversi tipi di griglie N x N e particelle.
  • Parametri configurabili: Dimensioni griglia, semi (seed), probabilità.
  • Visualizzazione: Supporto per generare output testuali da shell

Componenti principali

Random.hs - Generazione pseudo-casuale

Modulo fondamentale per la simulazione stocastica, implementa:

  • Generatore Lineare Congruenziale (LCG) per numeri pseudo-casuali dato un intervallo
  • Seed temporale nanosecondo-precise per inizializzazione

DLA.hs - Cuore della simulazione

Modulo che implementa il nucleo dell'algoritmo Diffusion-Limited Aggregation con gestione:

  • Inizializzazione griglia
  • Movimento particelle
  • Regole di aggregazione
  • Visualizzazione tramite shell

Main.hs - funzione che fa partire la simulazione