UFW3601 Programování pro fyziky

Filozoficko-přírodovědecká fakulta v Opavě
zima 2010
Rozsah
0/2/0. 3 kr. Ukončení: z.
Vyučující
RNDr. Pavel Bakala, Ph.D. (cvičící)
doc. RNDr. Stanislav Hledík, Ph.D. (cvičící)
Garance
doc. RNDr. Stanislav Hledík, Ph.D.
Centrum interdisciplinárních studií – Filozoficko-přírodovědecká fakulta v Opavě
Předpoklady
UFAF508 Programování v jazyce C || UFBL124 Programování v jazyce C
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
Cíle předmětu
Seznamuje se ze základními numerickými metodami používanými ve fyzice. Programovacím jazykem je C, Fortran 77 nebo 90. Sylabus: Seznámení s vývojovým prostředím I. Základy OS Unixového typu (Linux), shell (bash), práce s příkazovou řádkou. Volba editoru. Překladač gcc, g77, jeho základní volby, oddělený překlad. Nástroj pro management překladu make, nástroj pro udržování verzí RCS. Reprezentace čísel v počítači a počítačová aritmetika. Dekadická, binární, oktalová a hexadecimální reprezentace. Paměť počítače. Reprezentace znaménkových a bezznaménkových celých čísel. Reprezentace čísel s plovoucí desetinnou čárkou (floating-point numbers). IEEE standard. Zaokrouhlování, aritmetické operace, výjimky. Chyba a přesnost. Stabilita výpočtu. Konstrukce jazyka C a Fortran důležité pro numeriku. Organizace programu a řídicí struktury. Práce s knihou Press W.H. et al. Řešení lineárních algebraických rovnic. Gaussova-Jordanova eliminace. Gaussova eliminace se zpětnou substitucí. LU dekompozice. Řešení pro některé speciální tvary matice. Interpolace a extrapolace. Polynomiální interpolace a extrapolace. Racionální interpolace a extrapolace. Numerická integrace. Klasické formule (otevřené, uzavřené, polootevřené) a algoritmy (lichoběžníkové, Simpsonovo pravidlo). Nevlastní integrály. Vícerozměrné integrály. Integrace jako speciální případ řešení obyčejných diferenciálních rovnic. Řešení nelineárních algebraických rovnic, hledání extrémů. Bracketing a bisekce. Metoda sečen. Newtonova-Raphsonova metoda. Kořeny polynomů. Obyčejné diferenciální rovnice. Problém počátečních hodnot vs. Two-point boundary problem. Metoda Runge-Kutta. Metody s fixním a adaptivním krokem. Metoda Bulirschova-Stoerova. Two-point Boundary Value Problem. Metoda nástřelu (shooting method). Relaxační metoda. Rychlá Fourierova transformace (FFT) a její aplikace. Fourierova transformace diskrétně vzorkovaných dat. Nyquistova kritická frekvence, vzorkovací teorém, aliasing. Komplexní FFT, FFT reálných funkcí, sinová a kosinová transformace. Vícerozměrná FFT. Konvoluce a dekonvoluce. Korelace a autokorelace. Filtrování. Wavelety. Parciální diferenciální rovnice. Cauchyův problém (pro hyperbolické a parabolické rovnice), hraniční problém (pro eliptické rovnice). Cauchyův problém se zachováním toku. Von Neumannova analýza stability. Difúzní rovnice, Schrödingerova rovnice. Metoda Fourierova a metoda cyklické redukce pro hraniční problém. Vývojové prostředí II. Nástroj lint. Ladění pomocí debuggeru gdb. Profiling. Testování.
Další komentáře
Předmět je dovoleno ukončit i mimo zkouškové období.
Předmět je zařazen také v obdobích zima 1993, zima 1994, zima 1995, zima 1996, zima 1997, zima 1998, zima 1999, zima 2000, zima 2001, zima 2002, zima 2003, zima 2004, zima 2005, zima 2006, zima 2007, zima 2008, zima 2009, zima 2011, zima 2012, zima 2013, zima 2014, zima 2015, zima 2016, zima 2017, zima 2018, zima 2019, zima 2020, zima 2021, zima 2022, zima 2023.