PA081 Programování numerických výpočtů

Slides:



Advertisements
Podobné prezentace
Matematická analýza Lineární algebra Diferenciální rovnice
Advertisements

Komplexní čísla. Komplexní číslo je uspořádaná dvojice [x, y], kde číslo x představuje reálnou část a číslo y imaginární část. Pokud je reálná část nulová,
Dualita úloh lineárního programování a analýza citlivosti
Soustava lineárních rovnic o více neznámých I.
Lekce 7 Metoda molekulární dynamiky I Úvod KFY/PMFCHLekce 7 – Metoda molekulární dynamiky Osnova 1.Princip metody 2.Ingredience 3.Počáteční podmínky 4.Časová.
Rekonstrukce povrchu objektů z řezů Obhajoba rigorózní práce 25. června 2003 Radek Sviták
Mechanika s Inventorem
Úvod Klasifikace disciplín operačního výzkumu
Vzorová písemka Poznámka: Bonusové příklady jsou nepovinné, lze za ně ale získat body navíc. (2 body) Definujte pojem gradient. Vypočítejte gradient funkce.
Programování numerických výpočtů - návrh písemky.
PA081 Programování numerických výpočtů Přednáška 2.
PA081 Programování numerických výpočtů
Aplikační počítačové prostředky X15APP MATLAB - SIMULINK
Koncepce rozvoje a řízení vědy a výzkumu
ZPG -Základy Počítačové Grafiky cvičení
PA081 Programování numerických výpočtů Přednáška 4.
Lekce 1 Modelování a simulace
Úplné kvadratické rovnice
Fakulta životního prostředí Katedra informatiky a geoinformatiky
Fakulta životního prostředí Katedra informatiky a geoinformatiky Přednáška 04 Limity funkcí Matematika II. KIG / 1MAT2.
Přednáška 12 Diferenciální rovnice
STŘEDNÍ ODBORNÁ ŠKOLA A STŘEDNÍ ODBORNÉ UČILIŠTĚ NERATOVICE Školní 664, Neratovice, tel.: , IČO: , IZO: Ředitelství.
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í.
Ing. Robert Popela, Ph.D. Numerické výpočetní metody v aerodynamice.
Medians and Order Statistics Nechť A je množina obsahující n různých prvků: Definice: Statistika i-tého řádu je i-tý nejmenší prvek, tj., minimum = statistika.
Lineární programování Simplexový algoritmus
Algoritmizace a programování
VZTAHY MEZI KOŘENY A KOEFICIENTY KVADRATICKÉ ROVNICE
INVERZNÍ ANALÝZA V GEOTECHNICE. Podstata inverzní analýzy Součásti realizace inverzní analýzy Metody inverzní analýzy Funkce inverzní analýzy.
Příklad 1: Výpočet π podle Archiméda
Vypracovala Daniela Helusová Mt – Ov pro SŠ
Výpočet kořenů kvadratické rovnice
Řešení kubických rovnic
KVADRATICKÉ ROVNICE. Název projektuModerní škola Registrační číslo projektu CZ.107/1.500/ Název aktivity III/2 Inovace a zkvalitnění výuky prostřednictvím.
Výukový materiál vytvořený v rámci projektu „EU peníze školám“ Škola: Střední škola právní – Právní akademie, s.r.o. Typ šablony: III/2 Inovace a zkvalitnění.
Regrese Aproximace metodou nejmenších čtverců
Semestrální práce z předmětu MAB
Gymnázium Jiřího Ortena KUTNÁ HORA Předmět: Matematika Tématický celek: Výrazy, rovnice, nerovnice Cílová skupina: 1. ročník (kvinta) gymnázia Oblast podpory:
Neúplné kvadratické rovnice
Gymnázium Jiřího Ortena KUTNÁ HORA
Gymnázium, Broumov, Hradební 218 Vzdělávací oblast: Mnohočleny a rovnice Číslo materiálu: EU Název: Kvadratické rovnice diskriminant Autor: Mgr.
Algoritmizace a programování Algoritmizace – základní pojmy - 01
Diferenciální počet funkcí více proměnných
doc. RNDr. Zdeněk Botek, CSc.
CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Advanced.NET Programming I + II 1 st Lecture Pavel Ježek.
STŘEDNÍ ODBORNÁ ŠKOLA A STŘEDNÍ ODBORNÉ UČILIŠTĚ NERATOVICE Školní 664, Neratovice, tel.: , IČO: , IZO: Ředitelství.
KIV/PRJ Speciální předmět pro zvídavé a hravé.
Mgr. Radka Svobodová Vařeková
DIGITÁLNÍ UČEBNÍ MATERIÁL Číslo projektuCZ.1.07/1.5.00/ Název projektuEU peníze středním školám Masarykova OA Jičín Název školyMASARYKOVA OBCHODNÍ.
DIGITÁLNÍ UČEBNÍ MATERIÁL Číslo projektuCZ.1.07/1.5.00/ Název projektuEU peníze středním školám Masarykova OA Jičín Název školyMASARYKOVA OBCHODNÍ.
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í.
Teoretická informatika Základní informace k předmětu Literatura Závěrečná práce Zkouška.
Chyby při matematickém modelování aneb co se nepovedlo Petr Beremlijski Katedra aplikovaná matematiky Fakulta elektrotechniky a informatiky VŠB - Technická.
Soustavy dvou lineárních rovnic se dvěma neznámými
Úvodní informace Informatika pro ekonomy I LS 2012/2013.
Kvadratické nerovnice
1 5. jednání Národního kulatého stolu k maturitní zkoušce 14. ledna 2015 Ministerstvo školství, mládeže a tělovýchovy Karmelitská 7, Praha 1 tel.:
MATEMATIKA Kvadratická rovnice. Výukový materiál Číslo projektu: CZ.1.07/1.5.00/ Šablona: III/2 Inovace a zkvalitnění výuky prostřednictvím ICT.
MATEMATIKA PRO CHEMIKY II. SYLABUS PŘEDMĚTU Opakování a rozšíření znalostí Reálné funkce a vlastnosti funkcí jedné a dvou proměnných Spojitost a limita.
Teoretická informatika II
Základní pojmy v automatizační technice
Základní pojmy v automatizační technice
Advanced .NET Programming II 1st Lecture
ZAL – 3. cvičení 2016.
MATEMATIKA Obsah přednášky. Opakování, motivační příklady Funkce.
Soustava dvou lineárních rovnic o dvou neznámých I.
Lineární nerovnice o jedné neznámé
KVADRATICKÁ ROVNICE Jitka Mudruňková 2012.
Algoritmizace a datové struktury (14ASD)
MATEMATIKA Obsah přednášky. Opakování, motivační příklady Funkce.
Transkript prezentace:

PA081 Programování numerických výpočtů Mgr. Radka Svobodová Vařeková

Cíl přednášky Převést matematickou formulaci numerického výpočtu na program, který tento výpočet provede s dostatečnou přesností a co nejefektivněji.

Implementace numerických výpočtů Převést problém do formy, pro níž: Existuje standardní algoritmus (např. f(x) = 0) Tento algoritmus je numericky stabilní (pro všechny vstupy poskytuje výsledky, vyhovující zadání problému). Daný algoritmus lze implementovat tak, že vzniklý program bude: Efektivní Srozumitelný Rozšiřitelný

Implementace numerických výpočtů – numerická stabilita I matematicky korektní algoritmus může po implementaci poskytovat nepřesné případně chybné výsledky. Důvod: Konečná reprezentace reálných čísel v počítači.

Implementace numerických výpočtů – efektivita Každá úloha lze řešit více metodami. Dané metody se liší: Časovou složitostí Prostorovou složitostí Vhodností pro určitou platformu Je nutno vzít v úvahu všechny tyto faktory.

Implementace numerických výpočtů – programovací jazyky FORTRAN C, C++ Java Python …

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

Sylabus - nelineární úlohy Nelineární rovnice tvaru: f(x) = g(x) Konkrétní příklady: kvadratické rovnice (1 – cos x)/x pro malé x sin x = ax + b …

Sylabus - nelineární úlohy II Numerické integrace: Obecně o metodách: Lichoběžníkové pravidlo Rombergova integrac Konkrétní příklady: Odstranění singularity u ....

Sylabus - lineární úlohy Soustavy lineárních rovnic tvaru: Ax = b Konkrétní metody: x = A-1 . b Gaussova eliminační metoda a její varianty

Sylabus - lineární úlohy II Metoda nejmenších čtverců pro lineární úlohy: Máme množinu bodů: (parametry experimentu, naměřená hodnota) Těmito body proložíme lineární trend (přímku, která bude co nejblíže ke všem naměřeným bodům)

Vstupní požadavky Informatika - pojmy z oblasti: Návrhy algoritmů I Matematika - základní znalosti z oblastí: Lineární algebra Matematická analýza

Požadavky ke zkoušce a hodnocení znalosti v rozsahu přednášek :-) zkouška bude písemná (příklady + teorie) Hodnocení: A  90 % B  80 % C  70 % D  60 % E  50 % F < 50 %

Požadavky k zápočtu Požadavky: Hodnocení: Poznámka: Vypracovat zápočtový projekt (zadání projektu získá student po domluvě s učitelem). Hodnocení: z projekt splňuje požadavky, domluvené při zadávání n jinak Poznámka: Předmět PA081 nelze ukončit kolokviem.

Materiály ke studiu Slidy: http://ncbr.chemi.muni.cz/~n19n/vyuka/nv u Marečka

Literatura Acton, F. S. REAL Computing made real : preventing errors in scientific and engineering calculations. Princeton : Princeton University Press, 1996. Higham, N. J. Accuracy and stability of numerical algorithms. Philadelphia : Society for Industrial and Applied Mathematics. Stroustrup, B. The C++ programming language. 3rd ed. Reading : Addison-Wesley, 1997.

Konzultační hodiny Kdy: Dle domluvy Kde: Kancelář C503.

Domácí úkoly Budu zadávat na některých přednáškách. Jejich řešení budu prezentovat na následující přednášce a zveřejním na Internetu. Jsou dobrovolné :-). Jsou hodnoceny bonus body. Když si je vyřešíte, pochopíte problematiku lépe.

Nelineární úlohy – demonstrační příklady řešení kvadratických rovnic Rovnice tvaru: x2 + 2bx +c = 0

Nelineární úlohy – demonstrační příklady řešení kvadratických rovnic Rovnice tvaru: x2 + 2bx +c = 0 Školní algoritmus: (pokud D >= 0) Problém školního algoritmu: b >> c Pak totiž: Rozdíl 2 skoro stejně velkých čísel Ztráta přesnosti

Nelineární úlohy – demonstrační příklady řešení kvadratických rovnic II Příklad výpočtu pomocí školního algoritmu: b = 1000, c = 1

Nelineární úlohy – demonstrační příklady řešení kvadratických rovnic II Příklad výpočtu pomocí školního algoritmu: b = 1000, c = 1 b2 – c = 999 999 Po zaokrouhlení na 10 cifer (float v C): x+ = -1000 + 999,9995 = -5 . 10-4 x- = -1000 - 999,9995 = -1999,9995000

Nelineární úlohy – demonstrační příklady řešení kvadratických rovnic III Porovnání přesného výpočtu a výpočtu pomocí školního algoritmu: Výsledky školního algoritmu (10 cifer): x+ = -5 . 10-4 x- = -1999,9995000 Přesné výsledky: x+ = -5,000001250000625 . 10-4 x- = -1999,999499999874

Nelineární úlohy – demonstrační příklady řešení kvadratických rovnic IV Numericky stabilní algoritmus: x- vypočítáme stejně jako předtím: Vztah pro x+ odvodíme z rovnice: x2 + 2bx + c = (x – x-).(x – x+) Platí tedy: c = x-.x+ => x+ = c/x-

Nelineární úlohy – demonstrační příklady řešení kvadratických rovnic V Porovnání přesného výpočtu, výpočtu pomocí numericky stabilního algoritmu a výpočtu pomocí školního algoritmu: Výsledky numericky stabilního algoritmu (10 cifer): x- = -1999,9995000 x+ = 1 / -1999,9995000 = 5,000001250 . 10-4 Výsledky školního algoritmu (10 cifer): x+ = -5 . 10-4 Přesné výsledky: x- = -1999,999499999874 x+ = -5,000001250000625 . 10-4

Domácí úkol Vytvořte co možná nejlepší program pro výpočet kořenů kvadratické rovnice. Ošetřete všechny problémové situace, které mohou nastat. Program otestujte na rovnici: x2 + 20000x +1 = 0 Programujte ve svém oblíbeném programovacím jazyce. Odevzdejte program a hodnoty kořenů testovací rovnice Datum odevzdání: do 7.3.2005 Hodnocení: 3%

Nelineární úlohy – demonstrační příklady (1 - cos x)/x2 Rovnice tvaru: (1 - cos x)/x2 Řešení dle definice - problém pro malá x: x = 1,2 . 10-5 (radiány) cos x (zaokrouhleno na 10 cifer): cos (1,2 . 10-5) = 0,9999999999 1-cos x (zaokrouhleno na 10 cifer): 1 - 0,9999999999 = 1.10-10 x2 : (1,2 . 10-5)2 = 1,44.10-10 (1 - cos x)/x2 (zaokrouhleno na 10 cifer): 1.10-10 / 1,44.10-10 = 0,6944444444

Nelineární úlohy – demonstrační příklady (1 - cos x)/x2 II Rovnice tvaru: (1 - cos x)/x2 Porovnání přesného řešení a řešení dle definice: Přesné řešení: cos (1,2 . 10-5) = 0,999999999928000000000864 1-cos (1,2 . 10-5) = 7,19999999991360000... .10-11 (1,2 . 10-5)2 = 1,44.10-10 (1 - cos x)/x2 = 0,49999999999400... Řešení dle definice: (1 - cos x)/x2 = 0,6944444444

Nelineární úlohy – demonstrační příklady (1 - cos x)/x2 III Rovnice tvaru: (1 - cos x)/x2 Numericky stabilní algoritmus: Nahradíme cos x pomocí Taylorova rozvoje: cos x = 1 – x2/2! + x4/4! – x6/6! + … Výpočet (zaokrouhleno na 10 cifer):

Nelineární úlohy – demonstrační příklady (1 - cos x)/x2 IV Porovnání přesného výpočtu, výpočtu pomocí numericky stabilního algoritmu a výpočtu dle definice: Výsledky numericky stabilního algoritmu (10 cifer): (1 - cos x)/x2 = 0,5 Výsledky výpočtu dle definice (10 cifer): (1 - cos x)/x2 = 0,6944444444 Přesné výsledky: (1 - cos x)/x2 = 0,49999999999400...

Domácí úkol Navrhněte jinou (numericky stabilní) metodu pro výpočet hodnoty výrazu: (1 - cos x)/x2 Navrženou metodu otestujte pro x = 1,2 . 10-5 Datum odevzdání: do 7.3.2005 Hodnocení: 3% (za první metodu) + 1,5% za další originální metodu (nejvýše 6% na osobu)