Numerické metody a programování. Lekce 1

Podobné dokumenty
Numerické metody a programování

Wolfram Alpha. v podobě html stránky, samotný výsledek je často doplněn o další informace (např. graf, jiné možné zobrazení výsledku a

TECHNICKÁ UNIVERZITA V LIBERCI Fakulta mechatroniky, informatiky a mezioborových studií

Extrémy funkcí na otevřené množině

Software Mathematica na střední škole. Jakub Šerých,

Robustní statistické metody

Robustní odhady statistických parametrů

Vlastnosti členů regulačních obvodů Osnova kurzu

Funkce a její vlastnosti

Maple. Petr Kundrát. Ústav matematiky, FSI VUT v Brně. Maple a základní znalosti z oblasti obyčejných diferenciálních rovnic.

VIDEOSBÍRKA DERIVACE

Numerická matematika Písemky

Základy matematiky pracovní listy

Praktické využití Mathematica CalcCenter. Ing. Petr Kubín, Ph.D. Katedra elektroenergetiky, ČVUT v Praze, FEL

Řešení diferenciálních rovnic v MATLABu

9. cvičení z Matematické analýzy 2

MATEMATIKA III. Olga Majlingová. Učební text pro prezenční studium. Předběžná verze

Nalezněte hladiny následujících funkcí. Pro které hodnoty C R jsou hladiny neprázdné

Diferenciální rovnice II

Grafy III. ContourPlot. Parametry funkce ContourPlot

VIDEOSBÍRKA DERIVACE

Teorie. Hinty. kunck6am

Předmluva 9 Obsah knihy 9 Typografické konvence 10 Informace o autorovi 10 Poděkování 10

APROXIMACE KŘIVEK V MATLABU TRIGONOMETRICKÉ POLYNOMY CURVE FITTING IN MATLAB TRIGONOMETRIC POLYNOMIAL

Projekty do předmětu MF

Matematická analýza ve Vesmíru. Jiří Bouchala

Wolfram Mathematica. Mgr. Jindřich Soukup

Goniometrie a trigonometrie

Teorie. Hinty. kunck6am

Grafy funkcí I - 2 D grafy

Cvičné texty ke státní maturitě z matematiky

Matematika 3. Úloha 1. Úloha 2. Úloha 3

Nula vyjde až po zjednodušení, které užívá pravidla pro práci s trigonometrickými funkcemi simplify(h1-h);

Úvod do programu MAPLE

. 1 x. Najděte rovnice tečen k hyperbole 7x 2 2y 2 = 14, které jsou kolmé k přímce 2x+4y 3 = 0. 2x y 1 = 0 nebo 2x y + 1 = 0.

9.5. Soustavy diferenciálních rovnic

VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY

Zpracování biologických signál

Typy příkladů na písemnou část zkoušky 2NU a vzorová řešení (doc. Martišek 2017)

Katedra aplikované matematiky FEI VŠB Technická univerzita Ostrava

arcsin x 2 dx. x dx 4 x 2 ln 2 x + 24 x ln 2 x + 9x dx.

Základy algoritmizace a programování

2 ab. ), (ii) (1, 2, 3), (iii) ( 3α+8,α+12,6α 16

NMAF063 Matematika pro fyziky III Zápočtová písemná práce B Termín pro odevzdání 4. ledna 2019

Co je obsahem numerických metod?

Matematika 1 Jiˇr ı Fiˇser 19. z aˇr ı 2016 Jiˇr ı Fiˇser (KMA, PˇrF UP Olomouc) KMA MAT1 19. z aˇr ı / 19

0 = 2e 1 (z 3 1)dz + 3z. z=0 z 3 4z 2 + 3z + rez. 4. Napište Fourierův rozvoj vzhledem k trigonometrickému systému periodickému

Obsah Obyčejné diferenciální rovnice

Zájezd do CERNu Obsah. Jakub Šerých,

Transformujte diferenciální výraz x f x + y f do polárních souřadnic r a ϕ, které jsou definovány vztahy x = r cos ϕ a y = r sin ϕ.

Nejdřív spočítáme jeden příklad na variaci konstant pro lineární diferenciální rovnici 2. řádu s kostantními koeficienty. y + y = 4 sin t.

6. Základy výpočetní geometrie

5. cvičení z Matematiky 2

Numerické metody a programování. Lekce 7

Teoretická Informatika

Vektory a matice. Matice a operace s nimi. Hodnost matice. Determinanty. . p.1/12

Matematika 1 sbírka příkladů

NUMERICKÉ METODY. Problematika num. řešení úloh, chyby, podmíněnost, stabilita algoritmů. Aproximace funkcí.

9.2. Zkrácená lineární rovnice s konstantními koeficienty

5.3. Implicitní funkce a její derivace

Rejstřík - A - - B - - E - - C - - F - - D - Rejst ík

KTE / PPEL Počítačová podpora v elektrotechnice

MKI Funkce f(z) má singularitu v bodě 0. a) Stanovte oblast, ve které konverguje hlavní část Laurentova rozvoje funkce f(z) v bodě 0.

WOLFRAM MATHEMATICA ANEB MATEMATICKÉ FUNKCE

Drsná matematika III 6. přednáška Obyčejné diferenciální rovnice vyšších řádů, Eulerovo přibližné řešení a poznámky o odhadech chyb

Drsná matematika III 2. přednáška Funkce více proměnných: Aproximace vyšších rádů, Taylorova věta, inverzní zobrazení

Užití software Wolfram Alpha při výuce matematiky

Digitální učební materiál

Úlohy k přednášce NMAG 101 a 120: Lineární algebra a geometrie 1 a 2,

AVDAT Vektory a matice

ÚSTAV MATEMATIKY A DESKRIPTIVNÍ GEOMETRIE. Matematika I/1 BA06. Cvičení, zimní semestr

Vlastní čísla a vlastní vektory

Interpolace a aproximace dat.

Zimní semestr akademického roku 2014/ prosince 2014

Projekty - Vybrané kapitoly z matematické fyziky

Petr Hasil. Podpořeno projektem Průřezová inovace studijních programů Lesnické a dřevařské fakulty MENDELU v Brně (LDF)

ÚSTAV MATEMATIKY A DESKRIPTIVNÍ GEOMETRIE. Matematika AA01. Cvičení, zimní semestr DOMÁCÍ ÚLOHY. Jan Šafařík

Matematika I A ukázkový test 1 pro 2011/2012. x + y + 3z = 1 (2a 1)x + (a + 1)y + z = 1 a

8.4. Shrnutí ke kapitolám 7 a 8

Základy numerické matematiky. Interpolace a aproximace funkcí

expression = + I yl ^ 3D 3 ImAx 2 ye + ImAy 3 E + ReAx 3 3 x y 2 E ImAx 3 3 x y 2 E+3 ReAx 2 ye ReAy 3 E

Písemná zkouška z Matematiky II pro FSV vzor

Uzavřené a otevřené množiny

Numerické metody: aproximace funkcí

Drsná matematika III 2. přednáška Funkce více proměnných: Aproximace vyšších rádů, Taylorova věta, inverzní zobrazení

Nelineární optimalizace a numerické metody (MI NON)

Globální matice konstrukce

DERIVACE. ln 7. Urči, kdy funkce roste a klesá a dále kdy je konkávní a

Možnosti využití programu Wolfram Mathematica ve výuce matematiky

l, l 2, l 3, l 4, ω 21 = konst. Proved te kinematické řešení zadaného čtyřkloubového mechanismu, tj. analyticky

Matematika 2 LS 2012/13. Prezentace vznikla na základě učebního textu, jehož autorem je doc. RNDr. Mirko Rokyta, CSc. J. Stebel Matematika 2

Numerické metody a statistika

vysledek = ((1:1:50).*(100-(1:1:50))) *ones(50,1) vysledek = ((1:1:75)./2).*sqrt(1:1:75) *ones(75,1)

Zkouška ze Základů vyšší matematiky ZVMTA (LDF, ) 60 minut. Součet Koeficient Body

Pracovní text a úkoly ke cvičením MF002

České vysoké učení technické v Praze Fakulta jaderná a fyzikálně inženýrská OKRUHY. ke státním závěrečným zkouškám BAKALÁŘSKÉ STUDIUM

Kapitola 10: Dvojný a trojný integrál

> Limit((1-cos(x))/x^2, x=0)=limit((1-cos(x))/x^2, x=0); x 2 2. x 0. = undefined. x 0

Primitivní funkce a Riemann uv integrál Lineární algebra Taylor uv polynom Extrémy funkcí více prom ˇenných Matematika III Matematika III Program

Bonn, Rheinischen Friedrich-Wilhelms-Universität

Transkript:

Numerické metody a programování Lekce 1

Numerické metody a programování Obsah přednášky 1. Mathematica: základy programování, symbolické výpočty, vizualizace dat. 2. Programování v prostředích Matlab/Octave. 3. Úvod do numerických metod: přesnost, zaokrouhlovací chyby, stabilita. 4. Lineární algebra. 5. Interpolace a extrapolace. 6. Integrace funkcí a řešení obyčejných diferenciálních rovnic. 7. Řešení soustav nelineárních rovnic. 8. Optimalizace. 9. Diskrétní Fourierova transformace. 10. Aplikace I: Zpracování obrazu. 11. Aplikace II: Simulace šíření optického signálu. Doporučená literatura E. Vitásek, Numerické metody (SNTL, Praha, 1987). W.H. Press, S.A. Teukolsky, W.T. Vetterling, B.P. Flannery, Numerical Recipes in C, (Cambridge University Press, Cambridge, 1992); dostupné online na http://www.nr.com J.D. Schmidt, Numerical Simulation of Optical Wave Propagation (SPIE Press, 2010) Manuály Matlab/Octave (http://www.octave.cz), Mathematica, Oslo (http://www.lambdares.com) Mathematica (Wolfram Research) http://www.wolfram.com/mathematica/ symbolické výpočty numerické výpočty vizualizace dat a výsledků

(* prirazeni, relace *) In[1]:= a = 1 Out[1]= 1 In[2]:= a Out[2]= 1 In[3]:= a =. In[4]:= Out[4]= a a In[5]:= a = 1 Out[5]= 1 In[6]:= a = a + 1 Out[6]= 2 In[7]:= In[8]:= a++; a Out[8]= 3 In[9]:= a += 5 Out[9]= 8 In[10]:= b = 1 Out[10]= 1 In[11]:= Out[11]= a > b True In[12]:= Out[12]= a b False (* komplexni cisla *) In[13]:= Out[13]= x = 2 + I 2 + i In[14]:= Out[14]= x^2 3 + 4 i In[15]:= Re[x] Out[15]= 2 In[16]:= Im[x] Out[16]= 1

2 math_tisk.nb In[17]:= Out[17]= 5 Abs[x] In[18]:= Arg[x] Out[18]= ArcTan 1 2 In[19]:= Out[19]= Conjugate[x] 2 - i In[20]:= x =. In[21]:= f = x^2 - Abs[x]^2 Out[21]= x 2 - Abs[x] 2 In[22]:= Simplify f Out[22]= x 2 - Abs[x] 2 In[23]:= Simplify f, Im[x] == 0 Out[23]= 0 (* ridici struktury *) In[24]:= a = 2; b = 4; In[25]:= In[26]:= If a < b, mensi = a, mensi = b ; mensi Out[26]= 2 In[27]:= For i = 1, i 10, i++, Print i 1 2 3 4 5 6 7 8 9 10 In[28]:= suma = 0 Out[28]= 0 In[29]:= For i = 1, i 10, i++, suma += i Print[suma] 55

math_tisk.nb 3 In[31]:= suma = 0; i = 1; While i 10, suma += i; i += 2 Print[suma] 25 In[34]:= min a_, b_ := If a < b, a, b In[35]:= min[1, 2] Out[35]= 1 In[36]:= min[3, 4] Out[36]= 3 (* vektory, matice *) In[37]:= v = {1, 2, 3} Out[37]= {1, 2, 3} In[38]:= MatrixForm[v] Out[38]//MatrixForm= 1 2 3 In[39]:= Sqrt[v] Out[39]= 1, 2, 3 In[40]:= v.v Out[40]= 14 In[41]:= v = Table[Cos[x], {x, 0, 2 π, π / 2}] Out[41]= {1, 0, -1, 0, 1} In[42]:= v2 = Table[x, {x, 0, 2 π, π / 2}] Out[42]= In[43]:= 0, π 2, π, 3 π 2, 2 π Cos[v2] Out[43]= {1, 0, -1, 0, 1} In[44]:= m = RandomReal[{0, 1}, {3, 3}] Out[44]= {{0.711135, 0.246579, 0.197264}, {0.216202, 0.870612, 0.0599256}, {0.522712, 0.379262, 0.0271403}} In[45]:= MatrixForm[m] Out[45]//MatrixForm= 0.711135 0.246579 0.197264 0.216202 0.870612 0.0599256 0.522712 0.379262 0.0271403

4 math_tisk.nb In[46]:= m All, 1 Out[46]= {0.711135, 0.216202, 0.522712} In[47]:= m 2, All Out[47]= {0.216202, 0.870612, 0.0599256} In[48]:= m[[1 ;; 2, 1 ;; 2]] // MatrixForm Out[48]//MatrixForm= 0.711135 0.246579 0.216202 0.870612 In[49]:= ConstantArray[0, {5, 5}] // MatrixForm Out[49]//MatrixForm= 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 In[50]:= Table 0, i, 1, 5, j, 1, 5 // MatrixForm Out[50]//MatrixForm= 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 In[51]:= m = {{2, 1}, {-1, 3}} Out[51]= {{2, 1}, {-1, 3}} In[52]:= MatrixForm[m] Out[52]//MatrixForm= 2 1-1 3 In[53]:= m m Out[53]= {{4, 1}, {1, 9}} In[54]:= {{4, 1}, {1, 9}} // MatrixForm Out[54]//MatrixForm= 4 1 1 9 In[55]:= m.m // MatrixForm Out[55]//MatrixForm= 3 5-5 8 In[56]:= v = {{1}, {1}} Out[56]= {{1}, {1}} In[57]:= MatrixForm[v] Out[57]//MatrixForm= 1 1

math_tisk.nb 5 In[58]:= Out[58]//MatrixForm= MatrixForm[m.v] 3 2 In[59]:= Out[59]= a = {{a11, a12}, {a21, a22}} {{a11, a12}, {a21, a22}} In[60]:= Out[60]= b = b11, b12, b21, b22 {{b11, b12}, {b21, b22}} In[61]:= c = a.b; c // MatrixForm Out[61]//MatrixForm= a11 b11 + a12 b21 a11 b12 + a12 b22 a21 b11 + a22 b21 a21 b12 + a22 b22 In[62]:= Out[62]= Det[a] -a12 a21 + a11 a22 In[63]:= Out[63]= Tr[a] a11 + a22 (* linearni algebra *) In[64]:= a = {{0, 1, 1}, {1, 1, 1}, {1, 1, 0}}; a // MatrixForm Out[64]//MatrixForm= 0 1 1 1 1 1 1 1 0 In[65]:= eig = Eigenvalues[a] Out[65]= 1 + 2, -1, 1-2 In[66]:= vec = Eigenvectors[a] Out[66]= 1, - -2-2 1 + 2, 1, {-1, 0, 1}, 1, - 2-2 -1 + 2, 1 In[67]:= a.vec[[1]] Out[67]= 1 - -2-2 1 + 2, 2 - -2-2 1 + 2, 1 - -2-2 1 + 2 In[68]:= eig[[1]] vec[[1]] Out[68]= 1 + 2, 2 + 2, 1 + 2 In[69]:= b = Inverse[a]; b // MatrixForm Out[69]//MatrixForm= -1 1 0 1-1 1 0 1-1

6 math_tisk.nb In[70]:= a.b // MatrixForm Out[70]//MatrixForm= 1 0 0 0 1 0 0 0 1 In[71]:= prava = {1, 2, 3} Out[71]= {1, 2, 3} In[72]:= x = b.prava Out[72]= {1, 2, -1} In[73]:= Out[73]= a.x prava True (* vyrazy *) In[74]:= a =.; b =.; c =.; x =.; In[75]:= Out[75]= f1 = x x In[76]:= Out[76]= e -x f2 = Exp[-x] In[77]:= Out[77]= f = f1 * f2 e -x x (* derivace *) In[78]:= Out[78]= D f, x e -x - e -x x In[79]:= Out[79]= D f, x, x -2 e -x + e -x x In[80]:= (* integrace *) integral = Integrate f, x Out[80]= e -x (-1 - x) In[81]:= tem = D integral, x Out[81]= -e -x - e -x (-1 - x) In[82]:= Out[82]= simp = Simplify[tem] e -x x

math_tisk.nb 7 In[83]:= Out[83]= simp == f True In[84]:= Out[84]= Integrate Exp[-x^2], x, -Infinity, Infinity π In[85]:= vysl = Integrate Exp[-a x^2], x, -Infinity, Infinity Out[85]= ConditionalExpression π a, Re[a] > 0 In[86]:= Out[86]= Simplify vysl, a > 0 π a In[87]:= Plot[Cos[x^2], {x, 0, 5}] 1.0 0.5 Out[87]= 1 2 3 4 5-0.5-1.0 In[88]:= res = Integrate[Cos[x ^ 2], {x, 0, α}] Out[88]= π 2 FresnelC 2 π α In[89]:= Plot res, {α, 0, 10}, PlotRange {0, 1}, PlotPoints 50 1.0 0.8 0.6 Out[89]= 0.4 0.2 0 2 4 6 8 10 In[90]:= Integrate[Cos[x^2], {x, 0, 1}] // N Out[90]= 0.904524

8 math_tisk.nb In[91]:= NIntegrate[Cos[x ^ 2], {x, 0, 1}] Out[91]= 0.904524 In[92]:= i1 = Integrate[Cos[x^2], {x, 0, 100}] // N Out[92]= 0.625129 In[93]:= NIntegrate[Cos[x ^ 2], {x, 0, 100}] NIntegrate::ncvb : NIntegrate failed to converge to prescribed accuracy after 9 recursive bisections in x near {x} = {0.}. NIntegrate obtained 0.4808197282114536` and 0.0116887984970139` for the integral and error estimates. B Out[93]= 0.48082 In[94]:= i2 = NIntegrate Cos[x^2], {x, 0, 100}, MaxRecursion 10 Out[94]= 0.625129 In[95]:= i1 - i2 Out[95]= 8.10463 10-15 (* soucty rad *) In[96]:= Sum[n^2, {n, 1, 3}] Out[96]= 14 In[97]:= Out[97]= In[98]:= Sum 1 / n^2, n, 1, Infinity π 2 6 Sum 1 / 2^n, n, 0, Infinity Out[98]= 2 In[99]:= Out[99]= Simplify[Sum[n, {n, 1, a}]] 1 a (1 + a) 2 (* rovnice *) In[100]:= Solve[2 x + 5 0, x] Out[100]= x - 5 2 In[101]:= Solve[{2 x + y 1, x - y == 2}, {x, y}] Out[101]= {{x 1, y -1}} In[102]:= Solve a x^2 + b x + c 0, x Out[102]= x -b - b2-4 a c 2 a, x -b + b2-4 a c 2 a

math_tisk.nb 9 In[103]:= f = Expand[(x - 2) (x - 1) (x + 2)] Out[103]= 4-4 x - x 2 + x 3 In[104]:= Solve f 0, x Out[104]= {{x -2}, {x 1}, {x 2}} In[105]:= Out[105]= f = Cos[x] - x -x + Cos[x] In[106]:= Solve f 0, x Solve::nsmet : This system cannot be solved with the methods available to Solve. B Out[106]= Solve[-x + Cos[x] 0, x] In[107]:= vysl = FindRoot f, {x, -1} Out[107]= {x 0.739085} In[108]:= Cos vysl[[1, 2]] Out[108]= 0.739085 (* diferencialni rovnice *) In[109]:= DSolve y'[x] + y[x] a Sin[x], y[x], x Out[109]= y[x] e -x C[1] + 1 2 a -Cos[x] + Sin[x] In[110]:= Out[110]= DSolve y''[x] + k^2 y[x] 0, y[x], x y[x] C[1] Cos[k x] + C[2] Sin[k x] In[111]:= Out[111]= DSolve y''[x] + k^2 y[x] 0, y[0] == 1, y[x], x y[x] Cos[k x] + C[2] Sin[k x] In[112]:= Out[112]= DSolve y''[x] + k^2 y[x] 0, y[0] == 1, y'[0] 0, y[x], x {{y[x] Cos[k x]}} (* trigonometricke funkce *) In[113]:= Cos[x + y] Out[113]= Cos[x + y] In[114]:= Out[114]= vysl = TrigExpand[Cos[x + y]] Cos[x] Cos[y] - Sin[x] Sin[y] In[115]:= TrigFactor vysl Out[115]= Cos[x + y]

10 math_tisk.nb In[116]:= Out[116]= f = (n1 Cos[α2] - n2 Cos[α1]) / (n1 Cos[α2] + n2 Cos[α1]) -n2 Cos[α1] + n1 Cos[α2] n2 Cos[α1] + n1 Cos[α2] In[117]:= Out[117]= n1 = n2 Sin[α2] Sin[α1] n2 Csc[α1] Sin[α2] In[118]:= Out[118]= f2 = Simplify f -Sin[2 α1] + Sin[2 α2] Sin[2 α1] + Sin[2 α2] In[119]:= TrigFactor f2 Out[119]= -Cot[α1 + α2] Tan[α1 - α2] In[120]:= Out[120]= In[121]:= Out[121]= TrigToExp Sin[x] 1 2 i e-i x - 1 2 i ei x ExpToTrig[Exp[I x]] Cos[x] + i Sin[x] (* rozvoj v radu *) In[122]:= Series[Exp[x], {x, 0, 3}] Out[122]= 1 + x + x2 2 + x3 6 + O[x]4 In[123]:= Series[Sqrt[1 + x], {x, 0, 3}] Out[123]= In[124]:= 1 + x 2 - x2 8 + x3 16 + O[x]4 Series (n + 2) / (n + 3), n, Infinity, 3 Out[124]= 1-1 n + 3 n 2-9 n 3 + O 1 n 4 In[125]:= Normal[%] Out[125]= 1-9 n 3 + 3 n 2-1 n (* grafy funkci *)

math_tisk.nb 11 In[126]:= plot1 = Plot Sin[x], {x, -5, 5} 1.0 0.5 Out[126]= -4-2 2 4-0.5-1.0 In[127]:= plot2 = Plot Sin[x + 1], {x, -5, 5} 1.0 0.5 Out[127]= -4-2 2 4-0.5-1.0 In[128]:= Show plot1, plot2, AxesLabel {x, y} y 1.0 0.5 Out[128]= -4-2 2 4 x -0.5-1.0 In[129]:= Out[129]= f = Sin[Sqrt[x^2 + y^2]] Sqrt[x^2 + y^2] Sin x 2 + y 2 x 2 + y 2

12 math_tisk.nb In[130]:= Plot3D f, {x, -30, 30}, {y, -30, 30} Out[130]= In[134]:= Plot3D f, {x, -30, 30}, {y, -30, 30}, PlotRange {-0.3, 1} Out[134]= In[138]:= Out[138]= Plot3D f, {x, -30, 30}, {y, -30, 30}, PlotRange {-0.22, 1}, PlotPoints 50

math_tisk.nb 13 In[139]:= DensityPlot f, {x, -20, 20}, {y, -20, 20}, PlotRange {-0.22, 0.7}, PlotPoints 100 Out[139]= (* vizualizace dat *) In[140]:= In[141]:= a = Table Sin[x], {x, -5, 5, 0.1} ; ListPlot[a] 1.0 0.5 Out[141]= 20 40 60 80 100-0.5-1.0 In[142]:= a = Table x, Sin[x], {x, -5, 5, 0.1} ;

14 math_tisk.nb In[143]:= ListPlot[a] 1.0 0.5 Out[143]= -4-2 2 4-0.5-1.0 In[144]:= Out[144]= f Sin x 2 + y 2 x 2 + y 2 In[145]:= In[146]:= a = Table Sin[x], {x, 0, 5, 0.5} ; BarChart[a] 1.0 0.5 Out[146]= 0.0-0.5-1.0 In[147]:= a = Table f, {x, -10.001, 10}, {y, -10.001, 10} ;

math_tisk.nb 15 In[148]:= ListPlot3D a, InterpolationOrder 0 Out[148]= In[149]:= ListPlot3D[a] Out[149]=

16 math_tisk.nb In[150]:= ListDensityPlot a, InterpolationOrder 0 Out[150]= In[151]:= ListDensityPlot a, InterpolationOrder 3 Out[151]= In[211]:= a = Table Exp - i + j, i, 1, 4, j, 1, 4 Out[211]= 1 e 2, 1 e 3, 1 e 4, 1 e 5, 1 e 3, 1 e 4, 1 e 5, 1 e 6, 1 e 4, 1 e 5, 1 e 6, 1 e 7, 1 e 5, 1 e 6, 1 e 7, 1 e 8

math_tisk.nb 17 In[286]:= interp = ListInterpolation[a, {{1, 4}, {1, 4}}]; DiscretePlot3D interp i, j, i, 1, 4, j, 1, 4, ExtentSize Scaled[.75], ViewPoint {4, -5, 3}, BoxRatios {1, 1, 0.7}, FillingStyle Opacity[0.8] Out[287]= (* cteni dat ze souboru *) In[156]:= Out[156]= SetDirectory "/home/rehacek/vyuka/nmp/l01" /home/rehacek/vyuka/nmp/l01 In[157]:= In[158]:= data = ReadList "data.txt", Number, RecordLists True ; Max data Out[158]= 232. In[159]:= Min data Out[159]= 35.

18 math_tisk.nb In[160]:= obr1 = ListDensityPlot data, PlotRange All, Frame False, InterpolationOrder 0 Out[160]= In[161]:= obr2 = ListPlot3D data, Mesh False, Ticks False Out[161]= (* export grafiky do souboru *) In[162]:= Out[162]= Export "obrazek1.jpg", obr1 obrazek1.jpg In[163]:= Out[163]= Export "obrazek2.jpg", obr2 obrazek2.jpg (* cviceni *)

math_tisk.nb 19 (* prvocisla *) In[164]:= In[165]:= prvocisla[max_] := Print[2]; For i = 3, i max, i += 2, prvoc = True; For del = 3, del Sqrt i, del += 2, If Divisible i, del, prvoc = False If prvoc, Print i prvocisla[100] 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

20 math_tisk.nb In[166]:= prvocisla[max_] := list = {2}; For i = 3, i max, i += 2, prvoc = True; For del = 3, del Sqrt i, del += 2, ; If Divisible i, del, prvoc = False If prvoc, list = Append list, i list In[167]:= prvocisla[100] Out[167]= {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97} In[168]:= (* statistika *) d = ReadList "statistika.txt", Number ; In[169]:= pocet = Length d Out[169]= 10 000 In[170]:= Mean d // N Out[170]= 3.9678 In[171]:= Variance d // N Out[171]= 3.94736 In[172]:= plot1 = Histogram d 2000 1500 Out[172]= 1000 500 0 0 5 10 15 In[173]:= p = Table pocet PDF PoissonDistribution[4], i, i, 0, 15 ;

math_tisk.nb 21 In[174]:= plot2 = ListPlot[p] 2000 1500 Out[174]= 1000 500 5 10 15 In[175]:= Show plot1, plot2 2000 1500 Out[175]= 1000 500 0 0 5 10 15 In[176]:= In[177]:= p2 = Table i + 0.5, pocet PDF PoissonDistribution[4], i, i, 0, 15 ; plot3 = ListPlot[p2] 2000 1500 Out[177]= 1000 500 5 10 15

22 math_tisk.nb In[178]:= Show plot1, plot3 2000 1500 Out[178]= 1000 500 0 0 5 10 15 In[179]:= z =. (* difrakce *) In[180]:= Out[180]= u = Integrate[Exp[-I (x - ξ)^2 / z], {ξ, -1, 1}] / z (-1) 1/4 π Erfi (-1)3/4 (-1+x) z 2 z - Erfi (-1)3/4 (1+x) z In[181]:= z = 0.01 Out[181]= 0.01 In[182]:= Plot Abs[u], {x, -2, 2}, AxesOrigin {0, 0}, PlotRange All 20 15 Out[182]= 10 5-2 -1 1 2 In[183]:= z = 0.3 Out[183]= 0.3

math_tisk.nb 23 In[184]:= Plot Abs[u], {x, -10 z, 10 z}, AxesOrigin {0, 0}, PlotRange All 4 3 Out[184]= 2 1-3 -2-1 1 2 3 In[185]:= z = 100 Out[185]= 100 In[186]:= Plot Abs[u], {x, -10 z, 10 z}, AxesOrigin {0, 0}, PlotRange All 0.020 0.015 Out[186]= 0.010 0.005-1000 -500 500 1000 In[187]:= z =. In[188]:= Out[188]= u (-1) 1/4 π Erfi (-1)3/4 (-1+x) z 2 z - Erfi (-1)3/4 (1+x) z In[189]:= fresnel[x_, z_] := 1 2 - i 2 π Erf (-1)1 4 (-1+x) 2 z z - Erf (-1)1 4 (1+x) z

24 math_tisk.nb In[190]:= Animate Plot Abs fresnel[x, z], {x, -10 z, 10 z}, AxesOrigin {0, 0}, PlotRange All, {z, 0.1, 1}, AnimationRunning False z 7 6 5 Out[190]= 4 3 2 1-1.0-0.5 0.5 1.0

(* Wienuv posunovaci zakon *) (* f=2πhc^2 λ^5 Exp hc λkt -1 *) In[1]:= b =.; x =. In[2]:= Out[2]= f = 1 / λ^5 Exp b λ - 1 1-1 + e b/λ λ 5 In[3]:= b = 1; Plot f, {λ, 0, 1}, PlotRange All 20 15 Out[3]= 10 5 0.2 0.4 0.6 0.8 1.0 In[4]:= b =. In[5]:= eq = Simplify D f, λ 0 Out[5]= b e b/λ + 5 λ - 5 e b/λ λ λ - e b/λ λ 0 In[6]:= eq[[1, 1]] Out[6]= b e b/λ + 5 λ - 5 e b/λ λ In[7]:= lhs = Expand[eq[[1, 1]] / λ] Out[7]= In[8]:= Out[8]= 5-5 e b/λ + b eb/λ λ b = λ x x λ In[9]:= lhs2 = Simplify lhs Out[9]= 5 + e x (-5 + x)

2 priklady.nb In[10]:= Plot lhs2, {x, -3, 7} 150 100 Out[10]= 50-2 2 4 6-50 In[11]:= koren = FindRoot lhs2 0, {x, 1} Out[11]= x 3.08169 10-16 In[12]:= koren = FindRoot lhs2 0, {x, 7} Out[12]= {x 4.96511} In[13]:= Out[13]= hc k koren[[1, 2]] λ T hc k 4.96511 T λ (* MTF kruhova apertura *) In[14]:= prekryv = Integrate[Integrate[1, {y, 0, Sqrt[1 - x^2]}], {x, a / 2, 1}] Out[14]= ConditionalExpression 1 8 -a 4 - a2 + 4 ArcCos a 2, Re 2 + a 2 - a 2 + a 2 + a Reals Re 2 - a 2 - a 2 + a 2 + a 0 Re 1 Re -2 + a -2 + a 0 && In[15]:= prekryv2 = Simplify prekryv, {0 < a < 1} Out[15]= 1 8 -a 4 - a2 + 4 ArcCos a 2 < -1 Re 2 + a -2 + a < 0 2 + a -2 + a Reals In[16]:= Out[16]= norma = Simplify prekryv2, a 0 π 4

priklady.nb 3 In[17]:= Plot prekryv2 norma, {a, 0, 2} 1.0 0.8 Out[17]= 0.6 0.4 0.2 0.5 1.0 1.5 2.0 (* rektangularni apertura + defokus *) In[18]:= a =.; e =. In[19]:= aber = Re[Integrate[Exp[-I e (x - a / 2)^2] Exp[I e (x + a / 2)^2], {x, 0, (1 - a) / 2}]] Out[19]= 1 2 Im -1 + e-i (-1+a) a e a e In[20]:= e = 0.001; pl1 = Plot aber, {a, 0.001, 1}, PlotRange All 0.5 0.4 Out[21]= 0.3 0.2 0.1 0.2 0.4 0.6 0.8 1.0

4 priklady.nb In[22]:= e = 10; pl2 = Plot aber, {a, 0.001, 1}, PlotRange All, PlotStyle Green 0.5 0.4 Out[23]= 0.3 0.2 0.1 0.2 0.4 0.6 0.8 1.0 In[24]:= e = 30 pl3 = Plot aber, {a, 0.001, 1}, PlotRange All, PlotStyle Red Out[24]= 30 0.5 0.4 0.3 Out[25]= 0.2 0.1 0.2 0.4 0.6 0.8 1.0-0.1 In[26]:= Show pl1, pl2, pl3, PlotRange All 0.5 0.4 0.3 Out[26]= 0.2 0.1 0.2 0.4 0.6 0.8 1.0-0.1