Sei sulla pagina 1di 10

Riassunti

Capitolo 2 → Equazioni differenziali ordinarie

Metodo di Eulero: si utilizza per calcolare la soluzione numerica all’istante di


tempo n basandosi sulla precedente soluzione numerica, ovvero quella all’istante n-1. Si può utilizzare questo
metodo perché si assume che Δ𝑡 sia molto piccolo e quindi il coefficiente della retta tangente non cambi o
cambi in maniera impercettibile in due istanti di tempo successivi. Il coefficiente della retta tangente è la
soluzione dell’ODE, cioè l’equazione differenziale ordinaria di riferimento da risolvere. È un metodo di primo
ordine e di passo 1, cioè la predizione della soluzione del passo successivo dipende solo da una soluzione
corrente. Metodo di primo ordine significa che l’errore diminuisce linearmente alla diminuzione del passo
temporale Δ𝑡.

Metodo del punto medio: si utilizza quando si deve risolvere un problema di Cauchy, cioè dove si conosce la
funzione in un punto e si vuole calcolare il valore della funzione al passo successivo. Al posto di calcolare la
soluzione dopo Δ𝑡, si calcola la soluzione dopo Δ𝑡/2. Per ottenere la soluzione al passo Δ𝑡/2, si utilizza il
metodo di Eulero. Il numero di calcoli aumenta, poiché ci saranno più intervalli, ma l’errore introdotto sarà
minore, come dimostrato dall’espansione di Taylor. È un metodo di secondo ordine, cioè l’errore diminuisce
al doppio della velocità con cui diminuisce Δ𝑡, inoltre la stima all’istante n+1 dipende da due valori, quello
all’istante di tempo n, e quello calcolato all’istante di tempo n+Δ𝑡/2. Anch’esso è un metodo di passo 21.

Metodi di Runge Kutta: sono i metodi del secondo ordine, che includono anche il metodo del punto medio.
Sono metodi che raggiungono la convergenza in maniera più veloce, cioè azzerano l’errore in minor tempo
rispetto ai metodi del primo ordine, ma questo comporta un maggior numero di computazioni per iterazione.

Metodo leapfrog: è un metodo multipasso, cioè il calcolo di una soluzione numerica avviene non solo
basandosi su un solo valore, ma su più valori.

utilizza lo schema dell’approssimazione tramite differenza centralizzata.


È chiamato leapfrog poiché per gli istanti di tempo n con n pari, si calcolano tramite la stima delle soluzioni
numerica degli istanti di tempo n dispari e viceversa. Per il primo passo si utilizzano i metodi di Runge-Kutta
di ordine 2 oppure Eulero. È un metodo di secondo ordine, cioè ha la convergenza di poco maggiore a 2.

Convergenza ed accuratezza di un metodo: risulta possibile studiare la convergenza di un metodo in due


modi:
a. Se la soluzione analitica è nota, è possibile confrontare la soluzione numerica ottenuta con
quella analitica per determinare l'errore commesso nel calcolo numerico. Tale stima viene fatta
prendendo in considerazione diversi valori dell'incremento di tempo dt.

E = dt * ∑(da n=0 a N) di |solNumerica - solAnalitica|

b. Se la soluzione analitica non è nota, è possibile studiare la convergenza prendendo in


considerazione diversi valori di incremento di tempo dt e confrontando i risultati ottenuti. In
particolare, si confrontano i risultati della soluzione con dt minore e quelli delle soluzioni con dt
maggiore.

diffgrid = dt * ∑(da n=0 a N) di |solNumCorrente - solNumMigliore|


Capitolo 3 → Equazioni alle derivate parziali: problemi convettivi

A differenza delle ODE, dove l’unica incognita da tenere in considerazione per calcolare una soluzione
numerica era il tempo, nelle equazioni alle derivate parziali bisogna tenere conto anche dell’incognita
spaziale.

Esempio: propagazione di un’onda con velocità c nella direzione x

Metodi per calcolare la derivata: forward difference → usa xi e xi+Δx

Backward difference → usa xi e xi-Δx

Central difference → usa xi-Δx e xi+Δx

Condizione CFL: condizione necessaria per la stabilità di una simulazione. Quando si lavora sulle PDE, si
tengono in considerazione spazio e tempo. Per calcolare l’istante successivo, si tiene in considerazione il
valore dell’istante corrente. Se andiamo a diminuire troppo il passo spaziale, la simulazione diventa instabile
poiché non è possibile calcolare il valore della funzione in quanto non ricade nell’intervallo di discretizzazione
spaziale.

Il passo spaziale deve essere minore del passo temporale altrimenti il valore della funzione non ricade nel
dominio dello spazio e quindi la simulazione diventa instabile.

Metodi di Lax-Friedrichs, Lax-Wendroff, MacCormack: sono metodi di risoluzione per le equazioni


differenziali alle derivate parziali. Per il calcolo della derivata parziale rispetto al tempo viene utilizzata la
formula alle differenze finite in avanti, in quanto il tempo può, fisicamente, solo avanzare. Per il calcolo
della derivata parziale rispetto allo spazio (x), per ottenere una soluzione stabile sia per valori di c > 0 che per
c < 0, viene utilizzato uno dei seguenti metodi:
1. Schema di Lax-Friedrichs
Prevede di usare lo schema alle differenze finite in avanti per il tempo e quello alle differenze
centrate per lo spazio (ForwardTimeCentralSpace) con l'unica differenza di sostituire il termine u_n_i
con la media dei suoi due nodi vicini nello stesso istante di tempo nello stencil, cioè 1/2 * (u_n_i+1 +
u_n_i-1), in quanto senza questa sostituzione, il classico metodo FTCS risulterebbe instabile.

2. Schema di Lax-Wendroff
Utilizza una sorta di trucco per poter rendere stabile la FTCS. È stato il primo schema di risoluzione
che ha permesso di raggiungere una convergenza di secondo ordine sia sullo spazio che sul tempo.
Si utilizzano grandi quantità di variabili e la matrice Jacobiana.

3. Schema di MacCormack
È un metodo di passo 2, e adotta il classico schema predittore (passo 1)-correttore (passo 2) e
raggiunge un'accuratezza del secondo ordine sia nel tempo che nello spazio.

Schema predittore-correttore: si utilizza per risolvere una ODE e si divide in due step:
1. Step predittore: viene predetto il prossimo valore y_n+1 col metodo di Eulero.
2. Step correttore: viene corretto il valore predetto con un metodo di integrazione trapezoidale
(03.06) Schemi di convenzione

Abbiamo realizzato che lo schema a differenze forward-time/backward-space ha diverse limitazioni: non


può gestire le velocità d’onda che si muovono in più di una direzione. Introduciamo altri schemi che
possono risolvere il problema.

Schema Lax-Friedrichs

Per la variabile temporale, si utilizzare la formula delle differenze forward.


Per le variabili spaziale, si utilizzano le differenze centrali.
Il problema nasce nel combinare le due nell’equazione di convenzione, in quanto la FTCS è instabile
(Forward Time Central Scheme).
Lo schema di Lax-Friedrichs proposto da Lax nel 54 comporta un trick per stabilizzare la FTCS. Consiste nel
sostituire l’elemento al tempo n e posizione i con la media dei valori agli estremi. Così facendo la
discretizzazione numerica risulta stabile, seppur con un errore del prim’ordine.

Schema Lax-Wendroff
Metodo introdotto negli anni 60 è stato il primo schema ad ottenere un’accuratezza al second’ordine sia
nel tempo che nello spazio. Per svilupparlo richiede diverso lavoro (Taylor e Jacobiano).
Questo metodo cattura la nitidezza dello shock molto meglio rispetto al Lax-Friedrichs, ma introduce un
nuovo problema: le oscillazioni numeriche dove la soluzione non è per nulla fluida.

Schema MacCormack
Metodo introdotto nel 69, si tratta di uno schema suddiviso in due fasi: la prima fase di chiama predittore
mentre la seconda correttore. Questo metodo ottiene un’accuratezza del second’ordine sia nel tempo che
nello spazio.

La prima fase sembra uno schema forward-time/forward-space, mentre la seconda fase uno schema
forward-time/backward-space con la media del primo risultato.

Schemi Predittore-Corettore
In generale tutti gli schemi predittore/correttore sono suddivisi in due fasi.
La fase del predittore nella quale i valori delle funzioni (e derivate) ad un punto precedente sono usati per
predire il valore della funzione al punto seguente.
La fase del correttore nella quale si usano i valori del predittore, insieme ad un metodo differente, per
stimare nuovamente il valore della funzione nello stesso punto.

4. Equazioni alle derivate parziali: problemi diffusivi

Condizioni al contorno: una condizione al contorno viene rappresentata da una regola che descrive come il
sistema interagisce con i bordi del dominio di interesse. Un esempio visto, riguardo lo studio dell'equazione
di diffusione del calore, è quello dell'asta di grafite, in cui il lato sinistro viene mantenuto a temperatura
costante.
• Dirichlet: condizione al contorno in cui la soluzione nei punti corrispondenti al contorno del sistema
o in una parte di sistema sono mantenute uguali ad una certa costante predefinita.
• Neumann: condizione al contorno in cui vengono specificati i valori che la derivata della soluzione
deve assumere sul contorno o su una parte del contorno del dominio di interesse.

Schemi espliciti e schemi impliciti: schemi espliciti e schemi impliciti sono schemi di integrazione utilizzati
in analisi numerica per ottenere soluzioni approssimate di equazioni differenziali ordinarie o equazioni
differenziali alle derivate parziali.
- Esplicito → uno schema esplicito consente di calcolare facilmente la soluzione all’istante n + 1 sulla
base della soluzione dell’istante di tempo corrente n. L’utilizzo di uno schema esplicito presenta i
seguenti vantaggi:
• Utilizzo di un passo temporale di tempo, dt, piccolo per ottenere stabilità.
• Ogni modifica alle condizioni di contorno influenza la soluzione solo all’istante successivo e
non immediatamente.
- Implicito → uno schema implicito consente di calcolare la soluzione risolvendo un’equazione che
prende in considerazione sia lo stato corrente del sistema, sia lo stato del sistema all’istante di
tempo successivo. Permette di lavorare con passi di discretizzazione più grandi senza dover
sottostare a condizioni di stabilità. Se si sceglie un passo temporale grande però si potrebbe
perdere accuratezza.

Lo schema esplicito viene risolto con un semplice schema FTCS (Forward Time Central Scheme).
Lo schema implicito viene risolto con un sistema lineare di equazioni del tipo [A][x] = [b] + [b]b.c.

Esempio generico

Equazione del calore in 1D:

Schema esplicito →

Schema implicito →

Schema esplicito Schema Implicito


5. Metodi a elementi finiti

Metodi a volumi finiti: sono gli schemi più utilizzati per quanto riguarda la fluido dinamica. Sono metodi di
risoluzione flessibile, che non hanno bisogno di una struttura particolare dello stencil, ed inoltre offrono una
discretizzazione conservativa utilizzando la legge di conservazione.

Metodo di Godunov: introdotta nel 1959 utilizza la legge della conservazione nella sua forma integrale. In
ogni cella in cui è diviso il volume di controllo si ha un valore a eL ed eR che indica l'energia ai bordi della cella;
questo tipo di problema è chiamato problema di Riemann. Per calcolare il nuovo valore dell'energia, ai bordi
della cella, si utilizza la risoluzione analitica del problema di Riemann. La soluzione totale sarà poi ricostruita
unendo tutte le singole soluzioni. È un metodo di primo ordine. Per ottenere una soluzione più accurata di
utilizza lo schema MUSCL.

Schema MUSCL: è un metodo di secondo ordine a volumi finiti. È un'evoluzione dello schema di Godunov di
cui va a modificare la rappresentazione costante a tratti della funzione inserendo una rappresentazione
lineare a tratti, mantenendo le varie condizioni agli estremi delle singole celle.

Godunov vs MUSCL: in ogni cella dello schema di Godunov, è rappresentata la funzione normale, mentre in
ogni cella MUSCL è rappresentata una linea che rappresenta la derivata della funzione all'interno della cella.

Differenza tra metodi a differenze finite e volume finiti:


- differenze finite calcolano la soluzione solamente nei nodi della griglia
- volumi finiti permettono di calcolare la soluzione anche nell'intervallo fra due nodi. La soluzione però
è meno accurata in quanto è un'approssimazione della soluzione reale.

Metodi ad elementi finiti: metodi che implementa la divisione di un sistema in più sotto parti, delle quali si
andrà a calcolare la soluzione e si uniranno alla fine per trovare la soluzione finale. Esempi: filo che viene
diviso in più parti, doppio pendolo. Lavorano sull'energia e utilizzano le matrici associate.
6. Sistemi stocastici

Un modello deterministico effettua una previsione fornendo come output un valore numerico senza dare
nessuna misura della distribuzione probabilistica del risultato.

Un modello stocastico è caratterizzato invece dal contenere procedure che tengano conto delle distribuzioni
di probabilità, assieme ad elementi che aggiungono una componente casuale nel caratterizzare lo stato di
alcune o tutte le variabili. Questo in genere è attuato considerando le variabili ed i parametri del modello
come variabili casuali. Viene in questo caso utilizzata la capacità del modello di generare numeri casuali
oppure si utilizzano stime della variabilità dei parametri, verificando l'effetto di questa variabilità nel
comportamento del sistema.

Metodo Metropolis-Hastings: il metodo Metropolis-Hastings consente di generare campioni x (vettore) da


una data distribuzione P(x). In particolare, genera un percorso random attraverso tutti i possibili valori di x.
Grazie ad una data densità di probabilità Q(xi+1 | xi) si rende possibile determinare il valore successivo di x in
base a quello precedente. L’unica cosa cruciale con Q è che la densità di probabilità dovrebbe essere
simmetrica.
L'algoritmo procede come segue:
1. Si inizializza il campione; partendo da un generico x0 si utilizza Q(x* | xi) per generare x1.
2. In particolare, ad ogni passo i:
a. Viene proposto un nuovo candidato, x*i+1, preso dalla distribuzione Q;
b. Viene calcolato il rapporto delle probabilità di x*i+1 e xi:

Se alpha >= 1 significa che x*i+1 risulta essere un valore più probabile di xi e lo si accetta;
Se alpha < 1 si accetta x*i+1 con probabilità alpha; un modo per fare ciò è quello di generare un
numero casuale r compreso in [0, 1]:
a) Se r < alpha allora si accetta x*i+1;
b) se r >= alpha allora si setta xi+1 = xi.

Tale metodo può però diventare lento, quando il numero dei possibili campioni aumenta, nel generare nuovi
campioni, in quanto le nuove proposte vengono rifiutate nel maggiore dei casi. Questo accade in quanto non
esiste un vero e proprio criterio, che permette di esplorare l'intero spazio dei possibili valori, che sia
efficiente.

Dinamica Hamiltoniana: modifica il metodo Metropolis-Hastings cercando di guidare la regione dei valori da
visitare in modo tale che il numero di nuovi valori scartati sia minore. Utilizza per l'integrazione il metodo
leapfrog, che è un metodo di secondo ordine. Utilizza come criterio per l'accettazione o meno l'energia, che
deve essere minore di zero. Se l'energia è maggiore di zero, viene calcolata la probabilità alpha con cui il
valore verrà accettato o meno come succedeva con il metodo MH. Applicato per la risoluzione del modello
Ising.

Se si utilizza uno spazio di valori da visitare ristretto, HMC (Hybrid Monte Carlo o dinamica Hamiltoniana)
non è molto più efficiente di quanto è il metodo MH, ma all'aumentare dello spazio dei valori esso è molto
più efficiente in quanto i valori vengono scartati molto meno spesso.
7. Soluzione delle equazioni ellittiche

Tutti i metodi citati sopra sono stati introdotti nello studio di problemi in cui non interessa l'evoluzione
nel tempo ma bensì lo stato in cui il sistema si trova una volta rilassato; consentono infatti di rilassare
il sistema fino a raggiungere la condizione desiderata.

Vengono prese in considerazione l’equazione di Poisson:

e l’equazione di Laplace:

le quali permettono di descrivere fenomeni fisici non dipendenti dal tempo, quali ad esempio, il campo
gravitazionale prodotto da un enorme oggetto, il potenziale elettrico di una distribuzione di carica, ecc.
(Esempio di utilizzo equazione del calore 2D indipendente dal tempo con dx=dy e discretizzata con uno
schema alle differenze centrali)

Metodi:
▪ Jacobi: per ogni punto viene effettuata una media dei punti ad esso vicini(quindi i 4 elementi a
nord, sud, est e ovest).

Questa procedura viene utilizzata in maniera iterativa finché la differenza tra due iterazioni
successive non è abbastanza piccola.
▪ Gauss-Seidel: diversamente dal metodo Jacobi prevede di utilizzare i valori noti, appena calcolati,
non appena risultano disponibili

▪ SOR(Sovra rilassamento): migliora il metodo Gauss-Seidel implementando una combinazione


lineare della soluzione precedente e di quella attuale.

Dipende da un parametro w, che porta ad una simulazione stabile solo se compreso in (0, 2), inoltre
determina quanto veloce il metodo SOR risulterà essere rispetto al metodo Gauss-Seidel.
o Se w < 1, è meno efficiente di Gauss (converge più lentamente)(under-relaxation)
o Se w = 1, è efficiente come Gauss
o Se w > 1, allora, è più efficiente di Gauss (converge più velocemente)(over-relaxation)
o w = 2 / (1 + pi / nx) valore ottimale.

• Metodo a discesa rapida (steepest descent): consente di rilassare il sistema considerato in maniera
molto più efficiente, rispetto ai metodi visti in precedenza. Nella prima iterazione si individua un
valore casuale come soluzione dell’equazione di Poisson, e poi si va a raffinare fino ad ottenere la
soluzione accettabile andando a diminuire l’errore, cioè il residuo a poco a poco. In ogni iterazione,
le soluzioni sono ortogonali, come in un reticolo, ma non c’è nessun meccanismo che controlla le
direzioni dei vari passi.
In particolare, considerando l’equazione di Poisson discretizzata:

è possibile immaginare che tutti i valori di p e b vengano raggruppati in matrici, ottenendo:


A * p = b, dove Aè la matrice di coefficienti che moltiplica p
Ogni metodo iterativo inizia con un valore iniziale p_0 e modifica la matrice p in modo tale da
raggiungere la soluzione.
Modificare la matrice p può essere visto come aggiungere a p un altro vettore p, ad esempio:

dove d è il vettore che stabilisce in che direzione muoversi per poter raggiungere in maniera più
efficiente la soluzione e alpha determina di quanto muoversi, la grandezza dello step.
Viene introdotto il concetto di residuo, il quale risulta corrispondere al vettore d, ed indica qual è il
vettore da aggiungere a A * p per raggiungere il vettore b, quindi per raggiungere la soluzione.
Ad ogni iterazione si procede quindi nel seguente modo:
1. Viene calcolato r come: r = b - A * p
2. Viene calcolato alpha come: alpha = (r_k * r_k) / (r_k * A * r_k)

3. Viene calcolato p_k+1 come: (con r al posto di d)

• Gradiente Coniugato: utilizza una matrice simmetrica e positiva di coefficienti. È più efficiente del
metodo Jacobi perché arriva alla condizione di uscita del ciclo del calcolo della soluzione con molte
meno iterazioni. Si utilizza il residuo, che è la differenza, l’errore per ogni punto della matrice tra il
valore calcolato ed il valore esatto. Rispetto al metodo di discesa rapida, controlla che due soluzioni
successive non abbiano mai la stessa direzione. Inoltre, è molto più efficiente quando si deve
risolvere una equazione di Poisson molto complicata, altrimenti se si tratta di una equazione di
Poisson base e semplice la sua efficienza è simile a quella del metodo a discesa rapida.
• Metodo MULTIGRID: si basano su
o Restrizione: trasferimento di dati da una griglia fine ad una più grezza. Abbiamo due
modalità:
▪ Iniezione: si trasportano i valori nella stessa grigia ignorando i valori che nella
nuova griglia più grezza non sono presenti.
▪ Adattamento a dimensione massima: si tiene conto dei valori intermedi
effettuando una media per avere una rappresentazione migliore.
o Interpolazione: passaggio da una griglia grezza ad una fine. Nel momento in cui aggiungo
un valore tra due valori della griglia grezza, inserisco la media dei due valori.

I metodi multigrid permettono di avere una convergenza più veloce, cioè l’errore si avvicina a
zero con un numero molto minore di iterazioni. Tutto questo appunto perché un salto in una
griglia singola, come per i metodi precedenti, è in realtà una griglia anche esso stesso. Ovvero,
per passare da una soluzione ad un’altra, mentre nei metodi a griglia singola il passaggio è
diretto, e l’errore quindi viene azzerato con un minor numero di iterazioni, nei metodi
multigrid, un singolo passo tra una soluzione ed un’altra è anche esso stesso una griglia grezza.
L’utilizzo di più griglie è utile per raffinare il residuo, che a mano a mano si fa sempre minore.
8. Simulazioni da dinamiche emergenti

Automa cellulare: è un modello matematico usato per descrivere l'evoluzione di sistemi discreti. È un
insieme di cellule dello stesso tipo. Ogni cellula ha un insieme di possibili stati, lo stato di ogni cellula viene
aggiornato in maniera sincronizzata, ovvero tutte le cellule aggiornano il proprio stato nello stesso istante.
Le regole per l’aggiornamento dello stato delle cellule dipendono dalle cellule circostanti alla cellula che si
vuole aggiornare. Se le cellule sono disposte in modo regolare, si dice automa a lattice (a reticolo).

Automa cellulare 1D: viene chiamato laccio, e ha due stati, pieno o vuoto. Lo stato della cella i-esima
dipende dallo stato delle n cellule precedenti e dalle n cellule successive.

Differenze con Equazioni alle derivate parziali:


- Negli automi cellulari 1D gli stati sono finiti, mentre nelle PDE si hanno valori infiniti
- Negli automi cellulari non ci sono condizioni, mentre nelle PDE esiste la CFL per gestire la stabilità

Modello Nagel-Schreckenberg: modello che utilizza un automa cellulare 1D in cui ogni macchina presente
occupa una cella dell’automa. Le macchine non si scontrano mai. Ogni macchina che non viaggia a velocità
massima aumenta la sua accelerazione di una unità, se la distanza (espressa in celle) dalla macchina davanti
è minore della velocità dell’auto, la velocità viene diminuita. Il modello NS viene utilizzato per gestire gli
shock negli automi cellulari.

Numero di Reynolds: valore che caratterizza un flusso, U indica la velocità del flusso, L la
dimensione dell’ostacolo e v indica la diffusità cinematica

Modello HPP: reticolo quadrato, ogni nodo ha 4 cellule. Ogni particella ha la sua direzione e la sua velocità,
nel momento in cui due particelle hanno direzioni opposte, ovvero tendono a scontrarsi, la loro direzione
viene dirottata in maniera ortogonale, una particella andrà nella direzione destra e una sinistra. Ai bordi
però devono essere poste delle condizioni poiché alcune particelle rappresentate nelle cellule potrebbero
sparire dal rettangolo. Le possibili soluzioni sono:
- Periodiche: a sinistra escono e a destra del quadrato rientrano
- Outflow: le particelle sono assorbite e semplicemente spariscono
- Inflow: le particelle sono create dai bordi
- Free-slip: le particelle rimbalzano sui bordi seguendo la legge di distribuzione
- No-slip: le particelle rimbalzano sui bordi come se fosse uno specchio
Non riesce a rappresentare l’equazione di Navier-Stokes, che descrive il flusso di un fluido incompressibile.

Automa cellulare a reticolo FHP: è un tipo di automa a reticolo in cui ogni nodo ha sei nodi vicini, cioè è il
centro di un esagono. In ogni nodo ci sono 7 cellule, ovvero la cellula centrale e le sue 6 cellule vicine. Ci
sono più regole per gestire le collisioni, le più utilizzate sono la FHP-I, la FHP-II e la FHAP-III. La FHP-I
gestisce le collisioni in maniera simmetrica, cioè come se fosse uno specchio. Permette di risolvere
l’equazione di Navier-Stokes, in quando l’angolo di riflessione di simmetria è di 120° e non di 90° come
nell’automa HPP.

Automi a reticolo di Boltzmann: sono automi a reticolo più generali, infatti è dimostrato che da un automa
di a reticolo di Boltzmann si possa risalire tramite una particolare configurazione ad un automa a reticolo
cellulare (LGCA). La differenza sta nel fatto che i valori che possono assumere le cellule non sono più
discreti, ma continui, cioè potenzialmente infiniti. Cioè una cellula non potrà essere piena o vuota, cioè 0 o
1, ma potrà assumere un valore compreso tra 0 e 1.
Il reticolo è un reticolo quadrato e non esagonale, in cui è presente un valore c che rappresenta la scala del
reticolo. Il processo di propagazione è composto da 2 fasi: si calcola il nuovo valore della distribuzione per
ogni nodo, e si inoltra il nuovo valore ai nodi vicini corrispondenti. Quando si incontra un bordo del reticolo,
come per gli automi cellulari a reticolo normali, si possono assumere vari comportamenti:
- No slip at an obastacle: le funzioni di distribuzione vengono riflesse come in uno specchio
- In flow condition: le funzioni di distribuzione vengono create direttamente dai bordi, in questo
modo si possono assegnare delle velocità prestabilite alle particelle, ecc.ecc.
- Outflow: le particelle che vanno in contatto con il bordo vengono assorbite

Automi LGCA vs Automi di Boltzmann


- LGCA: calcolano eventuali collisioni e predispongono le particelle per la fase successiva, cioè la
propagazione. Quindi ci sono due passaggi → collisione e poi propagazione
- LBA: calcolano l’equilibrio per ogni nodo e poi lo distribuiscono ai nodi vicini. Due passaggi →
calcolo equilibrio e poi propagazione. La propagazione avviene con una determinata velocità ed in
base alla densità del reticolo.

Potrebbero piacerti anche