inf2340 – våren 2004 oversikt over innhold
Post on 05-Feb-2016
48 Views
Preview:
DESCRIPTION
TRANSCRIPT
INF2340 – Våren 2004INF2340 – Våren 2004Oversikt over innholdOversikt over innhold
16.01.04 INF2340/ V04 / Dag 1 2
Simulering i IN229
Simulatorkode– Proseduralt (FORTRAN / C)
– Objekt-orientert (C++)
Fysisk problem
Ex:– Svingende streng
– Vannbølger
– Varme i jordskorpen
Numerisk metode– Endelig differansemetode
– Gauss eliminasjon
– Suksessiv substitusjon
Matematisk modell
Ex:– ODE
– Bølgeligning
– Varmeligning
16.01.04 INF2340/ V04 / Dag 1 3
Del 1: MyVector
Min første vektorklasse (= “Hello World”)
• Introduksjon til C++
• Eksempel på OO-design for simulering
• Effektivitetshensyn
• Arv
• Templates
16.01.04 INF2340/ V04 / Dag 1 4
Del 2: Endelige differanser
Rask innføring i endelige differanser:
• f’(x) ( f(x+h) - f(x) ) / h , osv….
• konvergens
• orden
16.01.04 INF2340/ V04 / Dag 1 5
Del 3: ODESolver
• Litt om ordinære differensialligninger (ODE)
• Noen numeriske metoder– Forlengs og baklengs Euler, Runge-Kutta
• Design av “bibliotek” av ODE-løsere
• Implementasjon
• Sentrale prinsipper for simulator software
16.01.04 INF2340/ V04 / Dag 1 6
Del 4: Bølgeligning
• Fra fysisk problem til simulatorkode– Svingende streng (strikk)
• Endelig differansemetode
• Implementasjon
• Kjapt om numerisk stabilitet
• Reell anvendelse:– Bølger på dypt vann
16.01.04 INF2340/ V04 / Dag 1 7
Del 5: Varmeligningen
• Fra fysisk problem til simulatorkode:– Varmeledning i jordskorpen
• Endelig differansemetode
• Litt numerisk lineæralgebra
• Kjapt om ikkelineære ligninger
16.01.04 INF2340/ V04 / Dag 1 8
Del 6: Diverse
• Mer om matematiske modeller (PDEer)
• Mer om differansemetoder
• Abstraksjoner i simulatorkoder
• Mer om objektorientert programvare
16.01.04 INF2340/ V04 / Dag 1 9
Visualisering i IN229Fenomen/prosess
Mat. modellMåling
SimuleringIN229 - Simuleringsdelen
IN229 - Visualiseringsdelen
Numeriskdatasett
1.23E-082.59E-103.04E-083.87E-09
...
7.33E-061.56E-084.49E-085.28E-07
...
"Visualization Pipeline"
Grafiskeprimitiver
"Rendering Pipeline"
Bilde
16.01.04 INF2340/ V04 / Dag 1 10
Del 1: Del 1: Introduksjon til VTK
Numeriskdatasett
1.23E-082.59E-103.04E-083.87E-09
...
7.33E-061.56E-084.49E-085.28E-07
...
"Visualization Pipeline"
Grafiskeprimitiver
"Rendering Pipeline"
Bilde
• Objektorientert C++ klassebibliotek for visualisering
16.01.04 INF2340/ V04 / Dag 1 11
#include <vtk.h>
main(){ vtkRenderer* rdr = vtkRenderer::New(); vtkRenderWindow* rdrWin = vtkRenderWindow::New();
rdrWin->AddRenderer(rdr);
vtkCubeSource* sCube = vtkCubeSource::New(); vtkPolyDataMapper* mCube = vtkPolyDataMapper::New(); vtkActor* aCube = vtkActor::New();
mCube->SetInput(sCube->GetOutput()); aCube->SetMapper(mCube); rdr->AddActor(aCube);
rdrWin->Render();}
vtkRenderWindow
vtkRenderer
vtkActor
vtkPolyDataMapper
vtkCubeSource
16.01.04 INF2340/ V04 / Dag 1 12
Del 2: Del 2: Grafisk databehandling
Numeriskdatasett
1.23E-082.59E-103.04E-083.87E-09
...
7.33E-061.56E-084.49E-085.28E-07
...
"Visualization Pipeline"
Grafiskeprimitiver
"Rendering Pipeline"
Bilde
• Hvordan lage bilder på datamaskin
16.01.04 INF2340/ V04 / Dag 1 13
16.01.04 INF2340/ V04 / Dag 1 14
16.01.04 INF2340/ V04 / Dag 1 15
16.01.04 INF2340/ V04 / Dag 1 16
Del 3: Del 3: "Visualization Pipeline"
Numeriskdatasett
1.23E-082.59E-103.04E-083.87E-09
...
7.33E-061.56E-084.49E-085.28E-07
...
"Visualization Pipeline"
Grafiskeprimitiver
"Rendering Pipeline"
Bilde
• Hvordan transformere datasett til grafiske primitiver og bilder
• Generell arkitektur
16.01.04 INF2340/ V04 / Dag 1 17
mappersource1.23E-082.59E-103.04E-083.87E-09
...
7.33E-061.56E-084.49E-085.28E-07
...
mappersource filter
mappersource filter filter
mappersource filter filter
source
filter
osv ...
16.01.04 INF2340/ V04 / Dag 1 18
Del 4: Del 4: Datarepresentasjon
Numeriskdatasett
1.23E-082.59E-103.04E-083.87E-09
...
7.33E-061.56E-084.49E-085.28E-07
...
"Visualization Pipeline"
Grafiskeprimitiver
"Rendering Pipeline"
Bilde
• Hvordan tilrettelegge datasett for visualisering
Måling
Simulering
16.01.04 INF2340/ V04 / Dag 1 19
x1 y1 z1 v1
x2 y2 z2 v2
...
punkt med posisjon og verdi
Typisk problemstilling
v1 v2 ...filformat:
posisjonen erimplisitt!
16.01.04 INF2340/ V04 / Dag 1 20
Del 5: Del 5: Visualisering av skalarfelt
Numeriskdatasett
1.23E-082.59E-103.04E-083.87E-09
...
7.33E-061.56E-084.49E-085.28E-07
...
"Visualization Pipeline"
Grafiskeprimitiver
"Rendering Pipeline"
Bilde
• Datasettet representerer skalar-verdier
• Eksempel: Temperatur i et værelse p
16.01.04 INF2340/ V04 / Dag 1 21
Elektrontetthet i gullhydrid (AuH)
16.01.04 INF2340/ V04 / Dag 1 22
Del 6: Del 6: Visualisering av vektorfelt
Numeriskdatasett
1.23E-082.59E-103.04E-083.87E-09
...
7.33E-061.56E-084.49E-085.28E-07
...
"Visualization Pipeline"
Grafiskeprimitiver
"Rendering Pipeline"
Bilde
• Datasettet representerer vektor-verdier
• Eksempel: Strømning av luft i et værelse p
16.01.04 INF2340/ V04 / Dag 1 23
Luftstrømning i værelse
16.01.04 INF2340/ V04 / Dag 1 24
Boblestrømning i Guinness
Aaaaahhh!
16.01.04 INF2340/ V04 / Dag 1 25
Luftstrømning (og -trykk) rundt flyvinge
16.01.04 INF2340/ V04 / Dag 1 26
Del 7: Del 7: Direkte volumavbilding
Numeriskdatasett
1.23E-082.59E-103.04E-083.87E-09
...
7.33E-061.56E-084.49E-085.28E-07
...
"Visualization Pipeline"
Grafiskeprimitiver
"Rendering Pipeline"
Bilde
• En svært effektfull (men ressurskrevende!) teknikk for visualisering av skalar-verdier i et volum
16.01.04 INF2340/ V04 / Dag 1 27
Elektrontetthet i gullhydrid (AuH)
16.01.04 INF2340/ V04 / Dag 1 28
Elektrontetthet i gullhydrid (AuH)
H-atomet
Au-atomet
16.01.04 INF2340/ V04 / Dag 1 29
Del 8: Del 8: Diverse
Numeriskdatasett
1.23E-082.59E-103.04E-083.87E-09
...
7.33E-061.56E-084.49E-085.28E-07
...
"Visualization Pipeline"
Grafiskeprimitiver
"Rendering Pipeline"
Bilde
• Samtidig visualisering av flere felt• Animasjon (tidsserier, sanntids-simulering)
top related