Sapienza Università di Roma
Facoltà di Ingegneria
Tesi di Laurea in Ingegneria Informatica
Animazione Interattiva di
Esplosioni
Candidato: Claudio Ponziani
Relatore: Prof. Marco Schaerf
Correlatore: Ing. Marco Fratarcangeli
Anno Accademico 2006/2007
Dinamica di una esplosione

Una esplosione è un improvviso e violento
aumento di volume e rilascio di energia,
generalmente accompagnata da alte
temperature e diffusione di gas.
Può coinvolgere diversi materiali
Effetti visivi differenti
Dipartimento di Informatica e Sistemistica - Sapienza Università di Roma – Ponziani Claudio
Sommario
Teoria sulla
dinamica dei
fluidi
Particles System
(cfr. Fieldman et al. 2003)
Visualizzazione
Tecniche di
simulazione
Fluid Solver Based
(cfr. Rasmussen et al. 2003)
Dipartimento di Informatica e Sistemistica - di Roma "La Sapienza" – Claudio Ponziani
Equazioni di Navier-Stokes 1/3
Un fluido, con densità e temperatura costanti, è
determinato da:
◦ un campo di velocità u
◦ un campo di pressione p
 Questi campi variano nel tempo secondo le
equazioni di Navier-Stokes:

u  0
Viscosità del fluido
u
1
 u   u p  2u  f
t

Densità del fluido
Insieme delle forze esterne
Dipartimento di Informatica e Sistemistica - Sapienza Università di Roma – Ponziani Claudio
Equazioni di Navier-Stokes 2/3

Imponiamo:
◦ Conservazione massa
◦ Conservazione quantità di moto
◦ Boundary Conditions:
Periodic Boundaries
Fixed Boundaries
Dipartimento di Informatica e Sistemistica - Sapienza Università di Roma – Ponziani Claudio
Equazioni di Navier-Stokes 3/3

Combiniamo le due equazioni di NavierStokes
u
1
2


  u   u p  u  f
t

u  0
Decomposizione di Helmoltz-Hodge
u
 P  u   u  2u  f
t


Operatore che proietta qualsiasi vettore w sulla
sua parte di divergenza u=Pw
Dipartimento di Informatica e Sistemistica - di Roma "La Sapienza" – Claudio Ponziani
Metodo di risoluzione
Risolviamo l’equazione partendo da uno
stato iniziale w0 e procedendo con time
step t
 Quattro passi di risoluzione ad ogni
iterazione

Add Force
w1
Advect
w2
Diffuse
w3
Project
w4
Dipartimento di Informatica e Sistemistica - Sapienza Università di Roma – Ponziani Claudio
Aggiungiamo forze esterne
Passo semplice da risolvere
 Se assumiamo che la forza applicata non
varia nel tempo abbiamo che il suo
risultato sul fluido è dato da

w1  w0 x   t  f x, t 
Campo di velocità iniziale
Forza esterna
Dipartimento di Informatica e Sistemistica - Sapienza Università di Roma – Ponziani Claudio
Effetto del fenomeno di convezione
u
2
 P  u   u  u  f
t
Rende l’equazione non lineare


Metodo delle caratteristiche
w2 x   w1  px,t 
Linea di flusso del campo di velocità
Dipartimento di Informatica e Sistemistica - di Roma "La Sapienza" – Claudio Ponziani
Metodo delle caratteristiche

Conoscere la velocità in un punto x al
tempo t  t
Linea di flusso p(x,s)
( x0 , t )
( x1 , t  t )
w( x1 , t  t )  w( x0 , t )
Dipartimento di Informatica e Sistemistica - di Roma "La Sapienza" – Claudio Ponziani
Esplosione – Spazio virtuale
Spazio rappresentato con
griglia tridimensionale
Singolo Voxel di coordinate (i,j,k)
j
k
i
Densità[i,j,k]
Due array tridimensionali
Velocità[i,j,k]
Dipartimento di Informatica e Sistemistica - di Roma "La Sapienza" – Claudio Ponziani
Esplosione - Simulazione

Aumentiamo la densità di alcuni voxels

Inseriamo delle forze violenti che modificano il campo di velocità
Dipartimento di Informatica e Sistemistica - Sapienza Università di Roma – Ponziani Claudio
Fase di Rendering

Due tecniche provate
◦ Cubes Rendering
 Visualizziamo ogni singolo
voxels in funzione del suo
valore di densità.
◦ Textures Planes Volume
Rendering
 Tecnica più complessa che
utilizza textures planes
Dipartimento di Informatica e Sistemistica - Sapienza Università di Roma – Ponziani Claudio
Textures Planes Volume Rendering
Sezioniamo la griglia in piani
perpendicolari al punto di vista
dell’osservatore, prelevando le
immagini
Alpha Blending attivo
Depth Testing disattivo
Disegniamo i piani dal più
vicino al più lontano
Dipartimento di Informatica e Sistemistica - di Roma "La Sapienza" – Claudio Ponziani
Analisi dei risultati
Valore
Dimensione
Valore
N
30
N
40
TPVR attivo
Si
TPVR attivo
Si
Diff Rate
0.0002
Diff Rate
0.0002
Visc Rate
0.0002
Visc Rate
0.0002
Frame Rate Max
16.59 fps
Frame Rate Max
7.12 fps
Frame Rate Avg
13.30 fps
Frame Rate Avg
6.72 fps
Draw Density
21.88 %
Draw Density
25.65%
Density Step
16.6260
%
Density Step
16.60%
Velocity Step
50
63.30%
Velocity Step
71.22%
Frames per secondo
Dimensione
40
Costo computazione
 O(n 3 )
30
20
10
0
10
15
20
25
30
35
Dimensione griglia
40
45
50
Dipartimento di Informatica e Sistemistica - Sapienza Università di Roma – Ponziani Claudio
Obiettivi Raggiunti

Realizzazione di un’animazione plausibile

Minimizzazione del costo computazionale

Simulazione guidata dalle leggi fisiche dei
fluidi
Dipartimento di Informatica e Sistemistica – Sapienza Università di Roma – Ponziani Claudio
Possibili miglioramenti

Gestione del colore in funzione della
temperatura.

Interazioni con oggetti virtuali.

Riduzione della complessità
computazionale.
Dipartimento di Informatica e Sistemistica - Sapienza Università di Roma – Ponziani Claudio
Scarica

ppt