Mathematica bevezető Alapfogalmak è Kernel: kiértékel és tárolja a kiszámított értékeket è notebook - ok ( *.nb file): munkafzet è cellák (jobb oldalon zárójelezés): a notebook alapeleme; hierarcikus felépítés; csoportosítás è paletták Fontosabb men utasítások è File: Open, New, Close, Save (Save as),... è Edit: Copy, Paste, Find,... è Cell men è Kernel men è Format (Style) è Help (F): futtatható Mathematica alkalmazások Cella típusok è Title, Subtitle, Subsubtitle è Section, Subsection, Subsubsection è Text è Input (InputForm, StandardForm, TraditionalForm) è Output Képletek, parancsok beírása è Formátumok: InputForm: alfanumerikus, speciális karaktereket és grafikus matematikai szimbólumokat nem tartalmaz, speciális zárójelezés, Courier Bold betűtipus StandardForm: az InputForm alakját és logikáját követi, grafikus matematikai szimbólumokat tartalmaz TraditionalForm: a klasszikus matematikai jelölésrendszert követi (Times New Roman Bold) è Kis - és nagybetűk klönböznek è Zárójelezés: ( ) - algebrai csoportosítás f [ ] - fggvények {} - listák megadása a[[i]] - listák elemei Parancsok futtatása: Shift-Enter Alapvető műveletek és operátorok Algebrai műveletek è + : összeadás è - : kivonás
MMa-bevezeto.nb * vagy space : szorzás è / : osztás è ^ : hatványozás è! : faktoriális è () : csoportosítás + 8; + 8 0 H7 3L 8 Néhány beépített állandó è E; è Pi; π è Infinity; è I; E^ Infinity ^H L 0 E 0 Megjegyzések: è és. mást jelent! : szimbolikus (egész érték).: numerikus közelítés è Kifejezés numerikus közelítő értéke: N[kif]. N@PiD 3.59 N@Pi, 00D 3.5965358979338663383795088976939937505809795930786068608998680385 37068
MMa-bevezeto.nb 3 Fggvények és szimbolikus számolások Beépített elemi fggvények Input formában Ë a x + b Ë a x^ + b x + c Ë x^a Ë Sqrt@xD Ë Sin@xD, Cos@xD, Tan@xD, Cot@xD Ë Exp@xD, E^x Ë Log@xD, Log@a, xd Ë Abs@xD Ë Max@x, yd, Min@x, yd Sin@xD^ + Cos@xD^ Cos@xD + Sin@xD Sin@PiD^ + Cos@PiD^ Log@0, 00D Max@x^, D MaxA, x E Algebrai átalakítások è Expand[ ] : polinomiális alakra hoz è Factor[ ] : szorzattá alakít è Simplify[ ], FullSimplify[ ] : egyszerűsít Simplify@Sin@xD ^ + Cos@xD ^D Simplify@Max@x^, DD x Factor@x^ D H + xl H + xl I + x M Expand@Hx L^+ Hx + 3L^3D 3 + 9 x + 0 x + x 3 FullSimplify@Sin@xD + Cos@xD, Trig TrueD Cos@xD + Sin@xD
MMa-bevezeto.nb Változók és értékadások è azonnali értékadás: lhs = rhs è késleltetett értékadás: lhs := rhs expr = Sin@xD^ + Cos@xD^ Cos@xD + Sin@xD expr := Sin@xD^ + Cos@xD^ expr Cos@xD + Sin@xD Értékek törlése, visszahozása Ë Clear@D Ë Remove@D Használó által definiált fggvények Egyváltozós fggvények f@x_d = Sin@xD + Cos@xD Cos@xD + Sin@xD f@yd Cos@yD + Sin@yD f@0d g@xd = x x g@d g@d Többváltozós fggvények ff@x_, y_d := Sin@xD + Cos@yD ff@pi, PiD
MMa-bevezeto.nb 5 Fggvényábrázolás Egyváltozós fggvény ábrázolása: Plot Ábrázolás alapbeállításokkal Plot@Tan@xD, 8x, π, π<d 6-6 - - 6 - - -6 Több fggvény ábrázolása Plot@8Sin@xD, Cos@xD<, 8x, 0, Pi<D.0 0.5-0.5 3 5 6 -.0 Fontosabb speciális beállítások: más rajzolóműveleteknél is használhatók! A tengelyek arányának beállítása Az x tengely kétszer hosszabb mint az y tengely Plot@Tan@xD, 8x, π, π<, AspectRatio ê D 6-6 - - 6 - - -6 Az x tengely és az y tengely léptéke azonos Plot@Tan@xD, 8x, π, π<, AspectRatio AutomaticD
6 MMa-bevezeto.nb Az ábrázolási tartomány beállítása Plot@Tan@xD, 8x, π, π<, PlotRange 8 3, 3<D 3-6 - - 6 - - -3 Plot@Tan@xD, 8x, π, π<, PlotRange 88 Pi, Pi<, 8 3, 3<<D 3-3 - - 3 - - -3 Tengelyek címkézése Plot@Tan@xD, 8x, π, π<, AxesLabel 8x, y<, AspectRatio Automatic, PlotRange 8 5, 5<D y -6 - - 6 x - -
MMa-bevezeto.nb 7 Logaritmikus ábrázolások In[]:= LogPlot@E^x, 8x,, 3<, GridLines AutomaticD 0.0 0.0 5.0 Out[]=.0.0 0.5 0. - 0 3 3 In[5]:= LogLogPlotB x, 8x, 0.00, 5<, GridLines AutomaticF.50.00 0.70 Out[5]= 0.50 0.30 0.0 0.5 0.0 0. In[6]:= LogLinearPlot@Log@xD, 8x, 0.00, 3<, GridLines AutomaticD 0 - Out[6]= - -6 0.005 0.00 0.050 0.00 0.500.000 Kétváltozós fggvény ábrázolása Grafikon a 3D térben: Plot3D Alaputasítás In[]:= F@x_, y_d := x^ y^ x = y = ; x = y = ; dx = dy = 0.;
8 MMa-bevezeto.nb In[5]:= Plot3D@F@x, yd, 8x, x, x<, 8y, y, y<d Out[5]= In[6]:= Plot3D@F@x, yd, 8x, x, x<, 8y, y, y<, BoxRatios > AutomaticD Out[6]= ContourPlot ContourPlot@F@x, yd, 8x, x, x<, 8y, y, y<, Mesh True, FrameLabel 8x, y<d DensityPlot
MMa-bevezeto.nb 9 Adathalmazok és ábrázolásuk: ListPlot ListPlot@Table@Sin@xD, 8x, 0, Pi, Pi ê <DD.0 0.5 5 0 5 0 5-0.5 -.0 Egyenletek megoldása Egyenletek megadása : left-hand-side == right-hand-side è = érték megadás è == egyenlet è === az egyenlőség ellenőrzése Egyszerű egyenlet: Clear@a, b, c, xd; eqn = ax^ + bx + c == c + bx+ ax Egyenlet rendszer: eqnlist = 9 x + y ==, x + y== = 9 x + y, x + y = Vektoriális egyenlet rendszer: fvec = 9x + y, x y=; val = 8, <; fvec == val 9x + y, x y= 8, < Formális megoldás: Solve a = ; b = ; c = ; Solve@eqn, xd ::x 3 >, :x + 3 >>
0 MMa-bevezeto.nb Solve@eqnlist, 8x, y<d ::y 7 8,x >, 8y, x 0<> Solve@fvec == val, 8x, y<d ::y 9 6,x 5 >, 8y 0, x <> Polinomiális egyenletek numerikus megoldása: NSolve Clear@fD eqn = Ix 7 x 6 + x 3 3x x 0M; Solve@eqn, xd 99x RootA 3 + 3 6 + 7 &, E=, 9x RootA 3 + 3 6 + 7 &, E=, 9x RootA 3 + 3 6 + 7 &, 3E=, 9x RootA 3 + 3 6 + 7 &, E=, 9x RootA 3 + 3 6 + 7 &, 5E=, 9x RootA 3 + 3 6 + 7 &, 6E=, 9x RootA 3 + 3 6 + 7 &, 7E== NSolve@eqn, xd 88x 0.76366 0.7889 <, 8x 0.76366 + 0.7889 <, 8x 0.380 0.9588 <, 8x 0.380 + 0.9588 <, 8x 0.8070.7 <, 8x 0.8070 +.7 <, 8x.5889<< Egyenlet megoldásainak közelítése: FindRoot In[7]:= f@x_d := x ; f@x_d := Sin@xD; In[9]:= Solve@f@xD f@xd, xd Solve::tdep : The equations appear to involve the variables to be solved for in an essentially non-algebraic way. à Out[9]= Solve@ x Sin@xD, xd In[0]:= Plot@8f@xD, f@xd<, 8x, 0, π ê <D 3 Out[0]= 0.5.0.5 xinit = 80.37,.<; FindRoot@f@xD == f@xd, 8x, xinit@@dd<d FindRoot@f@xD == f@xd, 8x, xinit@@dd<d 8x 0.370558< 8x.3696< Table@FindRoot@f@xD == f@xd, 8x, xinit@@idd<d, 8i,, Length@xinitD<D 88x 0.370558<, 8x.3696<< Map@FindRoot@f@xD == f@xd, 8x, <D &, xinitd 88x 0.370558<, 8x.3696<<
MMa-bevezeto.nb Egyszerű interaktív vizsgálatok: Manipulate Manipulate@Plot@Sin@x H + a xld, 8x, 0, 6<D, 8a, 0, <D a.0 0.5-0.5 3 5 6 -.0 A kalkulus gyakran használt fggvényei Határérték: Limit Limit@H ê nl, n InfinityD 0 Limit@HTan@xDL, x Pi ê D Plot@Tan@xD, 8x, Pi ê, Pi<D 6-3 - - -6 Limit@Tan@xD, x Pi ê, Direction > D Limit@Tan@xD, x Pi ê, Direction > D Deriválás è f'; D[f] -- az f fggvény első deriváltja è f'[x]; Derivative[f][x] -- f első deriváltja x - ben è Derivative[n, n,...][f] -- f ni-szeres deriváltja az i-edik változójában è D[expr,x]; x expr -- az expr kifejezés első deriváltja x-ben
MMa-bevezeto.nb D[expr,{x,n}]; 8x,n< expr -- az expr n-edik deriváltja x-ben è D[expr,x,x,x3,...] -- az expr parciális deriváltja az x, x,...-ben è D[expr, {x, n}, {x, n},...]; 8x,n<,8x,n<.., expr -- az expr n, n,...-szeres parciális deriváltja az x, x,...-ben f@x_d := x^5 x^3+ 3x^ 5 f'@xd 6x x + 5x D@f@xD, xd 6x x + 5x f''@xd 6 x + 0 x 3 g@x_, y_d := x y 3 Sin@x yd; Derivative@, 0D@gD Cos@ D + 3 & Derivative@, 0D@gD@x, yd xy 3 y Cos@x yd Derivative@, D@gD@x, yd 6xy Cos@x yd + x y Sin@x yd Integrálás è Integrate[expr, x] -- expr x szerinti integrálja Ë f@xd x è Integrate[expr, {x, x, x}] -- expr határozott integrálja [x, x]-n x Ë f@xd x x0 Integrate@Sin@xD, xd Cos@xD Sin@xD x Cos@xD Integrate@Sin@xD, 8x, 0, Pi ê <D π 0 Sin@xD x