Sylabus
-
Upload
flavian-myles -
Category
Documents
-
view
34 -
download
0
description
Transcript of Sylabus
Sylabus
V rámci PNV budeme řešit konkrétní úlohy a to z následujících oblastí:
• Nelineární úlohy– Řešení nelineárních rovnic– Numerická integrace
• Lineární úlohy– Řešení soustav lineárních rovnic– Metoda nejmenších čtverců pro lineární úlohy– Sumace obecné a s korekcí
• Numerické výpočty v C a C++– Optimalizace výrazů, optimalizace při překladu
Numerické integrace
1. Výpočetní metody• Lichoběžníkové pravidlo
• Rombergova integrace
2. Příprava rovnice pro numerickou integraci
(odstranění singularit)
Lichoběžníkové pravidlo
Plocha pod funkcí f(x) v intervalu <a, b> lze vypočítat takto:
Integrál lze v rámci numerických metod aproximovat takto:
b
a
dx)x(f
a b
f(a)f(b) f(x)
y(x)
b
a
b
a
dx)x(ydx)x(f
)ax(ab
)a(f)b(f)a(f)x(y
Lichoběžníkové pravidlo II
Integrál lze v rámci numerických metod aproximovat takto:
b
a
b
a
dx)x(ydx)x(f
a b
f(a)f(b) f(x)
y(x)
)ax(ab
)a(f)b(f)a(f)x(y
2
)b(f
2
)a(f).ab()ab(
2
)b(f)a(fdx)x(f
b
a
=> Integrál lze aproximovat pomocí lichoběžníka
Složené lichoběžníkové pravidlo
Přesnější odhad plochy pod křivkou lze použít součet lichoběžníků:
Při vzrůstajícím čísle n se aproximace čím dál více přibližuje funkci f.
2
)b(fh)1n(a(f...)h2a(f)ha(f
2
)a(fhdx)x(f
b
a
a b
f(x)
y(x)
a+h a+2h a+(n-1)h
Složené lichoběžníkové pravidlo- půlení intervalů
Půlení intervalů - algoritmus, využívající lichoběžníkové pravidlo.
a b
f(x)
H
h
Složené lichoběžníkové pravidlo- půlení intervalů II
Tplné = H(suma funkčních hodnot v „plných“ bodech, krajní body děleny dvěma)
Tvšechny = h(suma funkčních hodnot v „čárkovaných“ bodech + suma funkčních hodnot v „plných“ bodech, krajních body děleny dvěma)
a b
f(x)
H
h
Složené lichoběžníkové pravidlo- půlení intervalů III
Algoritmus:
Iniciace: suma = (f(a)+f(b))/2, n = 1, n je počet intervalů
T0 = suma*(b - a)/n
Iterace:
(i) Rozděl všechny intervaly na poloviny
(ii) Aktualizuj sumu:
suma += (suma v nových bodech)
(iii) Aktualizuj n:
n = 2*n
(iv) Vypočti aproximaci Tn pro n intervalů:
Tn = suma*(b - a)/n
Složené lichoběžníkové pravidlo- půlení intervalů - příklad
Vypočtěte integrál:
Výpočet:
0
dxxsin
Iterace Výsledek
0 0
1 1,57079633
2 1,8911890
3 1,97423160
4 1,99357034
5 1,998339336
… …
Rombergova integrace
Při výpočtu vytváříme a využíváme T-tabulku:
T0,0
T1,0 T1,1
T2,0 T2,1 T2,2
... ... ... ...
Tm,0 Tm,1 ... ... Tm,m
Rombergova integrace II
Tj,0 jsou hodnoty z lichoběžníkového pravidla s 2j podintervaly.
Pro Tj,k platí:
Přehlednější vztah pro výpočet Tj,k:
k-1 k
j-1 b
j c d
14
TT.4T
k
1k,1j1k,jk
k,j
14
bc.4d
k
k
Rombergova integrace - příklad
Vypočtěte:
Výsledky:
0
dxxsin
j 0 1 2 3 4 5
0 0
1 1,570796 2,094395
2 1,891189 2,004559 1,998571
3 1,974232 2,000269 1,999983 2,000005
4 1,993570 2,000016 1,999999 2,000000 1,999999
5 1,998339 2,000001 2,000000 2,000000 2,000000 2,000000
…
Příprava rovnice pro numerickou integraci
1
0
dxx1
xsin
0
1
2
3
4
5
6
7
8
9
0 0,2 0,4 0,6 0,8 1
Příprava rovnice pro numerickou integraci (2)
Řešení: 1. Přesunutí singularity do 0.
x = 1 – u, dx = - du
1
0
dxx1
xsin
0
1
2
3
4
5
6
7
8
9
0 0,2 0,4 0,6 0,8 1
1
0
1
0
duu
)u1sin(
dxx1
xsin
Příprava rovnice pro numerickou integraci (3)
Řešení: 2. Zbavíme se dělení 0.
u = w2, du = 2w dw
1
0
dxx1
xsin
1
0
2
1
0
dw)w1sin(2
duu
)u1sin(
0
0,2
0,4
0,6
0,8
1
1,2
1,4
1,6
1,8
0 0,2 0,4 0,6 0,8 1
Příprava rovnice pro numerickou integraci
2
02
x
dxx4
e
0
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0 0,5 1 1,5 2
Příprava rovnice pro numerickou integraci (2)
Řešení: Zbavíme se dělení 0.
x = 2 cos u, dx = - 2 sin u du
2/
0
ucos2
2
02
x
due
dxx4
e
2
02
x
dxx4
e
0
0,5
1
1,5
2
2,5
0 0,5 1 1,5 2
Příprava rovnice pro numerickou integraci
1
0
dx)x1(x
xcos
0
2
4
6
8
10
12
0 0,2 0,4 0,6 0,8 1
Příprava rovnice pro numerickou integraci(2)
Řešení: Rozdělíme integrál na 2 části:
Každou část řešíme odděleně.
1
0
dx)x1(x
xcos
2/1
0
1
2/1
1
0
)x(f)x(f)x(f
Příprava rovnice pro numerickou integraci první polovina
Řešení: Zbavíme se dělení 0.
x = u2, dx = 2u du
2/1
0
dx)x1(x
xcos
2/1
02
2
2/1
0
duu1
ucos2
dx)x1(x
xcos
22,1
2,22,3
2,42,5
2,62,7
2,82,9
3
0 0,2 0,4 0,6 0,8
Příprava rovnice pro numerickou integraci druhá polovina
Řešení: Přesuneme problém do počátku.
x = 1 - u, dx = - du
1
2/1
dx)x1(x
xcos
2/1
0
1
2/1
duu)u1(
)u1cos(
dx)x1(x
xcos
0
1
2
3
4
5
6
0 0,1 0,2 0,3 0,4 0,5
Příprava rovnice pro numerickou integraci druhá polovina 2
Řešení: Odstraníme singularitu v 0.
u = w2, du = 2w dw
1
2/1
dx)x1(x
xcos
2/1
02
2
2/1
0
dw)w1(
)w1cos(.2
duu)u1(
)u1cos(
0
0,5
1
1,5
2
2,5
3
3,5
0 0,2 0,4 0,6 0,8