Rozwiązywanie równań Podstawowa komenda do rozwiązywania układów równań Solve[eqns,vars] -równania i układy równań -nierówności Równania mogą być sformułowane poprzez przynależność do zbiorów (RegionIntersection) -Niekiedy rozwiązanie są podane w formie uwikłanej. Podobna komenda: Reduce
Podstawowe opcje Cubics,Quatrics- włączanie rozwiązań z pierwiastkami sześciennymi i czwartego stopnia InverseFunction-pozwolenie na użycie abstrakcyjnej funkcji odwrotnej (nie musi ona istnieć analitycznie) Modulus->N-rozwiązuje równania w pierścieniu liczb modulo N
Inne sposoby rozwiązywania Reduce-Działanie podobne do Solve NSolve[#,{x}]-rozwiązanie numeryczne Root[p,k]-znajduje k-ty pierwiastek równania wielomianowego p=0 (nawet jeśli ma on postaci analitycznej) FindInstance-znajduje jeden pierwiastek FindRoot-rozwiązanie w pobliżu danego punktu Eliminate[{…},x]-wyrugowuje zmienną z układu równań SolveAlways znajduje wartości parametrów swobodnych, dla których równania są zawsze spełnione RowReduce-buduje macierz trójkątną. LinearSolve-rozwiązuje układ równań linowych
Rozwiązywanie ciągów iteracyjnych Rsolve[{a[i]==f[a[i-1],a[i-2]],a[0]==…,a[1]==…},a[i],i] Również wiele funkcji od poprzednich wyrazów, różnego rzędu
Wykresy Plot[f[x],{x,xmin,xmax}] Ogólnie-reprezentacja graficzna przebiegu funkcji, wizualizacja jej przebiegu, głównie poprzez przypisywanie współrzędnych punktom. Plot[f[x],{x,xmin,xmax}]
Podstawowe opcje AspectRatio-> Określa proporcje wykresu Axes->True, False, {#,#}-pokazuje i ukrywa osie PlotRange->Automatic, All, {…,…} opisuje zakres, w którym pokazane są wartości funkcji ClippingStyle->… styl łączenia ze sobą punktów, w którym funkcja wychodzi poza zakres wykresu. Prolog->… Element grafiki będący tłem wykresu Epilog-> Element grafiki umieszczony na wierzchu grafiki Ticks-> znaczniki na osiach
Optymalizacja wykresów PlotPoints-liczba punktów, w których program zaczyna rysować Mesh-pokazuje punkty, w których Wykres był rysowany MaxRecursion-ile razy funkcja była wygładzana PerformaceGoal->”Quality”,”Speed”-wybiera strategię rysowania wykresu WorkingPrecision->Precyzja obliczeń EvaluationMonitor-> wskaźnik, że rysowana funkcja była obliczona
Estetyka Exlusions-usuwanie punktów (asymptot) z dziedziny Style-styl linii wykresu ExclusionStyle->… Styl Asymptot Filling-wypełnianie kolorem obszaru między krzywymi PlotLegends-legenda (nie jest częścią wykresu)
Inne rodzaje wykresów ListPlot-wykres listy danych DiscretePlot- Rysuje funkcję ciągłą w równo rozłożonych punktach ParametricPlot-wykres funkcji zadanych parametrycznie. {x[t],y[t]} ContourPlot-wykres funkcji uwikłanej (nie opisanej relacją y=f(x)) PolarPlot-wykres we współrzędnych biegunowych ArrayPlot/ReliefPlot-graficzna wizualizacja macierzy
Wykresy Funkcji dwóch i trzech zmiennych Plot3D-podstaswowy wykres 3D DiscretePlot3D –Wykres 3D dla dyskretnych wartości. ContourPlot-wykres poziomicowy ContourPlot3D-trójwymiarowy wykres poziomicowy (dla ustalonych wartości funkcji) ListPlot3D-wykres na podstawie tablicy ParametricPlot3D-wykres parametryczny, ListPointPlot3D[#]-Wyświetlenie punktów z listy DensityPlot-podobnie jak CountourPlot DestinyPlot3D-Półprzeźroczysty wykres warstwowy SphericalPlot3D-wykres we współrzędnych sferycznych
Który wykres jest najprzydatniejszy Funkcje (poszukiwanie miejsc zerowych, ekstremów, osbliwości, itp) Plot,Plot3D Badanie ogólnego przebiegu DiscretePlot, DiscretePlot3D Funkcje biegunowe, np. emisja światła, orbity PolarPlot Funkcje sferyczne, np. mapy pogody, kształt orbitali atomowych SphericalPlot 3D Znajdywanie rozwiązań skomplikowanych równań ContourPlot, ContourPlot3D DensityPlot n.p. Mapy Regionów Dane nieciągłe – finansowe, statystyczne ListPlot Analiza grafiki ArrayPlot Ruch ParametricPlot, ParametricPlot3D, ListPointPlot3D
Przydatne opcje PlotStyle gromadzi opcje wykresu (kolor, teksturę, przeźroczystość, itp.) ColorFunction->Function[{x,y,z},f[x,y,z]]-przypisuje kolor każdemu punktowi w przestrzeni wykresu (jednowymiarowa-szarości, trójwymiarowa->Kolory rgb) ColorFunctionScaling-skalowanie funkcji kolorów RegionFunction-> -określa region, w którym funkcja jest rysowana (poprzez funkcję logiczną) Texture -nakładanie tekstury na wykres TextureCoordinatesFunction… ViewPoint, ViewAngle, ViewCenter…->Ustawienia kamery
Składanie ze sobą wykresów Niektóre typy wykresów przyjmują jako argumenty listy, i rysują wiele funkcji naraz. Możemy zdefiniować wykresy jako obiekty Graphics, lub Graphics3D Obiekty graficzne możemy pokazywać komendą Show[#1,…] #1 może być listą Zakresy na wykresach są dopasowywane. Nie można łączyć ze sobą obiektów różnych typów Polecenie Show może zmieniać zakres argumentów funkcji na wykresie
Przekształcenia Funkcji Pokazać różniczkę Przekształcenia Funkcji Funkcje są ze sobą powiązane przez różne tożsamości (n.p. jedynka trygonometryczna) Do poszukiwania tych zależności służy Simplify[expr]. FullSimplify działa podobnie, ale przeszukuje bogatszą kolekcję przekształceń
Upraszcza funkcje: Sumy wielomianów do pewnego stopnia-wymierne wykładnicze funkcje trygonometryczne (opcjonalnie) Funkcje potęgowe, logarytmiczne, … Uwaga: program uprości funkcje „jak mu wygodnie”, a nie jak od niego tego oczekujemy. Np. priorytet przy upraszczaniu mają zmienne na o niskiej wartości leksykologicznej
Opcje ComplexityFunction->k: opcja szuka w wyrażeniu nagłówków i innych obiektów i wybiera kryterium, według którego funkcja jest wskazywana jako najprostsza: LeafCount, ByteCount, StringLength(ToString[…]) TimeConstrains->{tloc,ttot} ogranicza czas na uproszczenie pojedynczych elementów do tloc i całego uproszczenia do ttot Assumptions->…-założenia Trig-> …-przekształcenia trygonometryczne
Factor rozkłada wielomiany na wielomiany nieredukowalne (takie, które nie mają pierwiastków rzeczywistych) (Opcja modulus) Expand-rozwija funkcje (głównie wielomiany) Refine[expr,assm] wprowadza zmiany wynikające z założeń TrigReduce-zamienia funkcję okresową na sumę Fouriera* TrigExpand zamienia funkcję na sumę potęg funkcji trygonometrycznych TrigFactor faktoryzuje wyrażenia trygonometryczne
Grafika 2D Dwa źródła danych graficznych -generowane w programie -importowane Import[filename,type] Zaimportowana grafika może pełnić dwojaką funkcję: obrazu i tablicy wartości SetDirectory[„C:\\Users\\...”] Directory[]-aktualny katalog
Podstawowe obiekty Grafika składa się z kombinowanych ze sobą obiektów Składnia: Graphics[{Styl, Kolor},Obiekt[{współrzędne}, wymiary] Line[{{…},…,{…}]-linia Arrow[{{…},{…}]-strzałka Rectagle[{…},{…}] Polygon[{…}]-wielokąt rozpięty pomiędzy kolejnymi Circle[{x,y},r]-koło środku w punkcie x,y i promieniu r Circle[{x,y},{a,b}]-elipsa o środku w punkcie x,y i osiach a i b Circle[{x,y},{a,b},{e,f}], łuk elipsy rozpięty między kątami e i f Point[{…}] InfiniteLine[{…},{…}] Możliwe jest tworzenie grafiki ręcznie Disk[…] –podobnie jak Circle, ale z wypełnieniem RegularPolygon[n]-n-kąt foremny
Przekształcenia Rotate[…,a]-obrót obiektu (niekoniecznie graficznego) o kąt a Translate[b,{x,y}]-Przesunięcie obiektu graficznego (nie grafiki!) Scale-przeskalowanie obiektu graficznego Magnify[#,s]-powiększanie wyświetlanego obiektu. GeometricTransform[obj,{m,v}]. Przekształca objekt obj przy pomocy macierzy m, a następnie przesuwa go o wektor v Inset[s,{x,y}]-wstawianie obiektu (n.p. formuły) do grafiki Text[t,{x,y}]-wstawianie tekstu
Niektóre elementy aktywne Tooltip[#]-przypisuje do obiektu etykietę tymczasową Tooltip[#,”label”] TooltipDelay->t-opóźnienie Mouseover[#1,#2]-wyświetla obiekt #2 zamiast #1 po najechaniu myszką StatusArea[#1]-po najechaniu myszką na obiekt zmieni się status w dolnym lewym rogu