F8370 Moderní metody modelování ve fyzice jaro 2023 D. Hemzal cfd-online.com F1400 Programování F5330 Základní numerické metody F6150 Pokročilé numerické metody F7270 Matematické metody zpracování měření FX003 Plánování a vyhodnocování experimentu F6180 Úvod do nelineární dynamiky F7780 Nelineární vlny a solitony F8370 Moderní metody modelování ve fyzice F8380 Základy molekulového modelování a bioinformatiky F1170, C9926,… R. Vácha stránka předmětu: za http://www.physics.muni.cz/~hemzal/vyuka/vyuka.shtml F4500 Python pro fyziky moderní metody modelování ve fyzice metoda konečných diferencí (FD), 3 týdny diskretizace derivace, okrajové podmínky (Laplaceova rovnice) techniky ověřování řešení (r. vedení tepla) metoda konečných prvků (FEM), 6 týdnů problémy s vlastními hodnotami (Schrödingerova r.) 1D-3D formulace MKP: slabá formulace ODE, tvarové funkce, momentové integrály, okrajové podmínky (částice v potenciálové jámě) vyšší dívčí, FEM bricks inverzní úloha (Poissonova r.) přednáška: výklad jednotlivých metod s aplikací na typické úlohy, techniky kontroly výpočtu cvičení: používání (volně šiřitelných) programových balíků (gmsh, superLU, petsc, slepc, redsvd, xsvit/gsvit...) obsah – fixní část moderní metody modelování ve fyzice neuronové sítě, 2 týdny perceptron, učení zpětným šířením chyby (fitování spektrálních profilů) Hopfieldova síť, samoorganizující se mapy (Kohonen) genetické algoritmy, 2 týdny genotyp, selekce, křížení mutace, hvězdičková schemata konečné diference v časové oblasti (FDTD), 2 týdny difuze, Maxwellovy rovnice diskrétní transformace, 2 týdny DFT, vlnková transformace (vlnová rovnice) harmonická syntéza v časové oblasti (Helmholtzova rovnice) výpočetní architektura CUDA, 2 týdny RCWA pro výpočet Maxwellových rovnic softalgorithms obsah – volitelná část moderní metody modelování ve fyzice hands-ontutorials podmínky k uzavření předmětu: příprava simulačních dat pro publikaci dostupná témata: - ohřev vzorku při laserové excitaci (60%) - FDTD simulace STM hrotu (50%) - vysychání kapky (30%) - ? moderní metody modelování ve fyzice reprezentace reálného čísla v počítači IEEE 754 single precision - 4 bajty bity: 31 30 23 22 0 znaménko exponent mantisa přesnost zápisu: lepší než 7 decimálních cifer přesnost výpočtu: cca 3 cifry double precision - 8 bajtů bity: 63 62 52 51 0 znaménko exponent mantisa přesnost zápisu: téměř 16 decimálních cifer přesnost výpočtu: cca 7 cifer quadruple precision… spolehlivé řešení: multiple precission arithmetic moderní metody modelování ve fyzice rozdělit čísla na menší části (zapsané v bázi ) a násobit odděleně – obětuje se počet součinů za získání libovolné přesnosti (exponenty nehrají roli, mantisy lze vyjádřit jako celá čísla se zvoleným počtem míst) myšlenka Karatsubova postupu čísla jsou v tomto typu aritmetiky (multiple precission) celou dobu uloženy ve formě rozkladů a jsou definována pravidla pro operaci s těmito rozklady výhodou je možnost rekurze Karatsuba přidal ještě optimalizaci počtu součinů konečná optimalizace: algoritmus Tooma-Cooka (řádu m,n) násobení velkých čísel x=xk qk +xk−1qk−1 +…+x2 q2 +x1q+x0 y=yk q k +yk−1 q k−1 +…+y2 q 2 +y1 q+y0 xy=xk yk q 2k +(xk−1 yk +xk yk−1 )q 2k−1 +…+(x2 y0+x1 y1+x0 y2)q 2 +(x1 y0+x0 y1)q+x0 y0 příklad: 1234 * 5678 = (0*10000+12*100 +34)(0*10000+56*100+78) = (12*56)10000+(78*12+34*56)100+34*78 q moderní metody modelování ve fyzice nic nového pod Sluncem: ‘Differential engine’ Charlese Babbage, cca 1820 x p[n] p1=p[n+1]-p[n] p1[n+1]-p1[n] 0 2 -1 4 1 1 3 4 2 4 7 4 3 11 4 původní stroj: osm sloupců po jedenatřiceti cifrách složitý systém přenášení informací z nejvyšších bitů odečítání realizováno jako příčítání záporného čísla po konstrukci v 1991 podle původních plánů plně funkční přesnost výpočtu přesnost výpočtu: ULP – unit in a last place operace chyba [ULP] rozsah trvání FLOP x+y, x*y 0.5 celý 4 1 1/x 1 celý 36 9 sqrtf(x) 3 celý 32 8 errff(x) 4 celý ?? ?? sinf(x) 22 -48039 .. 48039 32 8 ∞∞ |x|>107 nVidia Common Runtime Component příklad: rozhraní CUDA pro výpočetní grafické karty NVIDIA náročnost výpočtu – pro jednoduchost bereme součin a součet jako jednotku trvání : 1 FLOP signálové procesory moderní metody modelování ve fyzice single/double precision!