Simulazione Interattiva di Fluidi in 3D Vincolati da Potenziale Geometrico Università degli Studi...

Post on 01-May-2015

215 views 0 download

Transcript of Simulazione Interattiva di Fluidi in 3D Vincolati da Potenziale Geometrico Università degli Studi...

Simulazione Interattiva di Fluidi in 3D Vincolati da Potenziale Geometrico

Università degli Studi di Roma La SapienzaFacoltà di Ingegneria

Tesi di Laurea in Ingegneria Informatica

Relatore

Prof. Marco Shaerf

Correlatore

Ing. Marco Fratarcangeli

Candidato

Luca Mancini

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Il Problema del Controllo

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Sommario

• Il Simulatore

• Il Potenziale Geometrico

• Ottimizzazioni

• Rendering

• Conclusioni

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Il Simulatore 0

Il Simulatore

• Il Potenziale Geometrico

• Ottimizzazioni

• Rendering

• Conclusioni

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Il Simulatore 1

L’equazione ammette soluzioni analitiche solo in pochi casi di scarso interesse

• Utilizzo di tecniche di integrazione numerica

• Discretizzazione dello spazio di simulazione

Fupuuudt

du

1 )( 2

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Discretizzazione

Divisione dello spazio in celle di forma cubica

Ad ogni cella sono associati densità e velocità del fluido contenuto

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Algoritmo Simulatore

Avvezione ut+tDiffusione F. Esterne Proiezioneut

Le componenti dell’equazione del moto sono applicati in sequenza per ottenere la velocità all’istante t+t

Fupuuudt

du

1 )( 2

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Il Potenziale Geometrico 0

• Il SimulatoreIl Potenziale Geometrico

• Ottimizzazioni

• Rendering

• Conclusioni

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Potenziale Geometrico 1

Tecnica del Potenziale Geometrico

• Modifica delle proprietà dello spazio di simulazione

• Il fluido segue in modo naturale le specifiche di controllo senza nessun intervento esterno

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Potenziale Geometrico 2

• Caso monodimensionale di problema di controllo

• A deve spostarsi da X0 a Xtarget

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Potenziale Geometrico 3

• Si applica il potenziale U(x) al sistema

• A si sposta naturalmente verso Xtarget

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Calcolo Potenziale Geometrico 1

Si individuano le zone pstart, pconfine e ptarget

ptarget mesh di controllo

pconfine

confini dello spazio di simulazione

pstart

zona che contiene il fluido inizialmente

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Calcolo Potenziale Geometrico 2

U(ptarget) = 0

U(pstart) = 0,5

U(pconfine) = 1confinestart

confineconfine

startstart

target

kk

kpU

kpU

pU

U(p)

0 ,

)(

)(

0)(

02

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Calcolo Potenziale Geometrico 3

Il contributo dato dal potenziale alla velocità del fluido si ottiene calcolando il gradiente:

UFpotenziale

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Implementazione

Avvezioneut ut+t

Potenziale

vt+t

Il calcolo è effettato in una fase iniziale, non durante la simulazione

Diffusione F. Esterne Proiezione

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Ottimizzazioni

• Il Simulatore

• Il Potenziale GeometricoOttimizzazioni

• Rendering

• Conclusioni

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Migliorare l’efficienza 1

Problema:

La simulazione fisica richiede una quantità di calcoli eccessiva per una esecuzione in tempo reale

Soluzione:

Effettuare i calcoli per ottenere la velocità del fluido su una griglia di dimensioni minori

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Migliorare l’efficienza 2

Simulatore Interpolazione

u’t u’t+t ut+t

griglia interna griglia esterna

I calcoli sono effettuati in una griglia di dimensioni minori e poi si effettua una interpolazione per ottenere la velocità da applicare alla densità

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Migliorare l’efficienza 3

Il grafico mostra i risultati ottenuti utilizzando il sistema a due griglie

0,000

5,000

10,000

15,000

20,000

25,000

box sedia teschio testa

8x8x8

16x16x16

32x32x32

I test sono stati effettuati calcolando i fps mantenendo costanti le dimensioni della griglia esterna e variando quelle della griglia interna

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Migliorare l’efficienza 4

Utilizzo di una griglia esterna di dimensioni 32x32x32

– Senza il sistema a due griglie la simulazione è eseguita a 8 fps

– Con il sistema a due griglie ed una griglia interna 16x16x16 si ottengono 20 fps

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Rendering 0

• Il Simulatore

• Il Potenziale Geometrico

• OttimizzazioniRendering

• Conclusioni

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Rendering 1

• Esistono varie modalità per renderizzare il fluido

• Rappresentazione delle celle come cubi

• Marching cubes

• Raytracing e Photon Mapping

velocità

qualità

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Billboarding

camera camera

senza billboarding

con billboarding

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Calcolo BillboardingVettori della camera:

•camPos

•camUp

•camRight

Posizione elemento da disegnare:

•Pos

look = camPos – pos

right = camUp x look

up = look x right

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Simulazione 1

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Simulazione 2

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Conclusioni 0

• Il Simulatore

• Il Potenziale Geometrico

• Ottimizzazioni

• RenderingConclusioni

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Conclusioni 1

• Realizzazione di un simulatore di fluidi in uno spazio tridimensionale

• Controllo mediante Potenziale Geometrico– Calcoli per il controllo in una fase di

preprocessamento– Simulazione indipendente dalla complessità

della mesh di controllo

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Conclusioni 2

– Interfaccia semplificata: non è necessario che l’animatore conosca le leggi fisiche del moto del fluido

• Ottimizzazioni per eseguire la simulazione in real-time– Fps triplicati con la doppia griglia

• Rendering con billboarding– Buona qualtà per rendering in real-time

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Fine

Simulazione Interattiva di Fluidi in 3D Vincolati da Potenziale Geometrico

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Migliorare il controllo 1

• Il fluido controllato assume una forma troppo arrotondata

• I dettagli della mesh di controllo non sono visualizzati

E’ necessario un maggior controllo nella generazione della funzione potenziale

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Migliorare il controllo 2

Introduzione di una funzione di mapping

La funzione mappa il potenziale in modo da migliorare la rappresentazione della mesh di controllo

La funzione è parametrica e può essere controllata dall’esterno

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

Migliorare il controllo 3

Potenziale

vt+t

ut+t

MappingU(x) Umap(x)

La funzione di mapping viene applicata al potenziale U(x) prima di calcolarne il gradiente

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

La Funzione di mapping 1

Parametri:• dens: valore di U(x) per il quale

la U mappata vale 0,5• max: valore di U(x) per il quale la

U mappata vale 1 (il valore massimo)

• fine: il valore che assume la U mappara quando U(x) è pari a 1 (sui bordi)

Dipartimento di Informatica e Sistemistica -Università di Roma "La Sapienza" - Luca Mancini

La Funzione di mapping 2

funzione identitàdens = 0,5 max = 0,75dens = 0,25 max = 0,60dens = 0,10 max = 0,50