WYKRESY w MAXIMA Przygotowali Mateusz Jasiski Adam Kuliski

  • Slides: 30
Download presentation
WYKRESY w MAXIMA Przygotowali: Mateusz Jasiński, Adam Kuliński, Piotr Wojnarski i Rafał Zych

WYKRESY w MAXIMA Przygotowali: Mateusz Jasiński, Adam Kuliński, Piotr Wojnarski i Rafał Zych

Tworzenie wykresów Maxima wszystkie wykresy tworzy domyślnie za pośrednictwem gnuplota. Komunikacja między programami odbywa

Tworzenie wykresów Maxima wszystkie wykresy tworzy domyślnie za pośrednictwem gnuplota. Komunikacja między programami odbywa się na dwa sposoby, w zależności od metody rysowania za pośrednictwem potoków - lubi nie działać w systemach MS Windows za pośrednictwem plików tymczasowych - mniej elegancja ale skuteczniejsza forma. Omawiany pakiet draw. mac działa w oparciu o drugą metodę

Poruszanie się po oknie GNUPlota 2 D Scroll – przesunięcie wzdłuż osi Y Shift

Poruszanie się po oknie GNUPlota 2 D Scroll – przesunięcie wzdłuż osi Y Shift + Scroll – przesunięcie wzdłuż osi X Ctrl + Scroll – Skalowanie W wykresach 3 D za pomocą lewego przycisku myszy, możemy obracać widok wokół wykresu

Plot 2 d Wykresy jednej zmiennej Podstawowe wywołanie plot 2 d(f(x), xrange), gdzie f(x)

Plot 2 d Wykresy jednej zmiennej Podstawowe wywołanie plot 2 d(f(x), xrange), gdzie f(x) jest zadaną funkcją, a xrange przedziałem argumentów Funkcję możemy podać bezpośrednio, plot 2 d(x+1, [x, -10, 10] lub użyć wcześniej zdefiniowanej f(x): =x+1 plot 2 d(f(x), [x, -10, 10])

Plot 2 d Rysowanie wykresu ze zbioru punktów plot 2 d([discrete, punkty_x, punkty_y]) plot

Plot 2 d Rysowanie wykresu ze zbioru punktów plot 2 d([discrete, punkty_x, punkty_y]) plot 2 d([discrete, punkty]), gdzie: Lub Punkty definiujemy jako tablice tablic, tj. [[x 1, …, xn], [y 1, …, yn]] plot 2 d([discrete, [1, 2, 3], [1, 10, 5]]); Lub plot 2 d([discrete, [[1, 2, 3], [1, 10, 5]] ]);

Plot 2 d Wykresy parametryczne plot 2 d([parametric, x(t), y(t), trange]) Krzywa parametryczna dla

Plot 2 d Wykresy parametryczne plot 2 d([parametric, x(t), y(t), trange]) Krzywa parametryczna dla parametru t na przedziale trange plot 2 d([parametric, sin(t)*(%e^(cos(t))-2*cos(4*t)), cos(t)*(%e^(cos(t))-2*cos(4*t)), [t, -10, 10] ])$

Plot 2 d Kilka wykresów na jednym diagramie. Wystarczy zamiast pojedynczego wykresu, zdefiniować listę

Plot 2 d Kilka wykresów na jednym diagramie. Wystarczy zamiast pojedynczego wykresu, zdefiniować listę wykresów. xwerte: [0, 3, 6, 4, 6, 3, 0, 2, 0]; ywerte: [0, 2, 0, 3, 6, 4, 6, 3, 0]; plot 2 d([ sin(x), [discrete, xwerte, ywerte], [ parametric, 10+3*sin(2*t), 2+2*cos(3*t), [t, 0, 2*%pi] ] ], [x, 0, 15]);

Wykresy 2 D - przykłady f(x): =log(2*x); plot 2 d(f(x), [x, 0, 10]);

Wykresy 2 D - przykłady f(x): =log(2*x); plot 2 d(f(x), [x, 0, 10]);

Wykresy 2 D – przykłady g(x): =sin(x); g 2(x): =exp(x/10); plot 2 d([f(x), g

Wykresy 2 D – przykłady g(x): =sin(x); g 2(x): =exp(x/10); plot 2 d([f(x), g 2(x)], [x, 0, 10]);

Wykresy 3 D Wykres funkcji dwóch zmiennych Wykresy 3 D są analogiczne do 2

Wykresy 3 D Wykres funkcji dwóch zmiennych Wykresy 3 D są analogiczne do 2 D, z tym że wymagają funkcji dwuparametrowych i zdefiniowana przedziału także na osi Y plot 3 d(f(x, y), xrange, yrange) plot 3 d(1/(1+x^2+y^2), [x, -3, 3], [y, -3, 3])$

Wykresy 3 D - przykład Rysujemy wykres funkcji na kwadracie [-2, 2]x[-2, 2]: f(x,

Wykresy 3 D - przykład Rysujemy wykres funkcji na kwadracie [-2, 2]x[-2, 2]: f(x, y): =(x^2+y^2)/2; plot 3 d( f(x, y), [x, -2, 2], [y, -2, 2]);

Wykresy 3 D – inny przykład fc(x, y): =1/(x^2+y^2+1); plot 3 d( fc(x, y),

Wykresy 3 D – inny przykład fc(x, y): =1/(x^2+y^2+1); plot 3 d( fc(x, y), [x, -2, 2], [y, -2, 2]);

Wykresy 3 D – maksima lokalne A oto funkcja, która ma dwa maksima lokalne

Wykresy 3 D – maksima lokalne A oto funkcja, która ma dwa maksima lokalne i jeden punkt siodłowy, ale żadnych minimów: (%i 1) plot 3 d(-log(5*(x-1)^2+5*y^2+1)-log(5*(x+1)^2+5*y^2+1), [x, -2, 2], [y, -2, 2]);

Dodatkowe opcje dla wykresów plot Każdy wykres może przyjąć dodatkowe opcjonalne parametry określające jego

Dodatkowe opcje dla wykresów plot Każdy wykres może przyjąć dodatkowe opcjonalne parametry określające jego wygląd, format wyjścia, etc plot 2 d(f(x), xrange, opcje) Opcje podawane są jako list ([nazwa_opcji, wartość]). Identycznie jak paramter xrange (który jest wymaganym parametrem)

Dodatkowe opcje dla wykresów plot [nticks, n] – ilość punktów początkowych dla obliczenia krzywej

Dodatkowe opcje dla wykresów plot [nticks, n] – ilość punktów początkowych dla obliczenia krzywej (domyślnie: 10) [xlabel, "text"] nazwa osi x [ylabel, "text"] nazwa osi y [legend, "text 1", "text 2", . . . ] legenda dla wykresu [style, style 1, style 2, . . . ] styl wykresu, w formacie [style, [nazwa_stylu, grubość]], więcej na następnym slajdzie [gnuplot_term, terminal] Format wyjścia [gnuplot_out_file, "filename"] nazwa pliku wyjściowego [grid, nx, ny] gęstość siatki na wykresach 3 d

Dodatkowe opcje dla wykresów plot – style i kolory [style, [nazwa_stylu, grubość, kolor]] a

Dodatkowe opcje dla wykresów plot – style i kolory [style, [nazwa_stylu, grubość, kolor]] a także przy wykresach punktowych przyjmuje dodatkowy parametr mówiący o rodzaju punktu. Nazwy stylów: lines - ciągła linia Points – punktowy Linespoints – ciągła linia z punktami

Dodatkowe opcje dla wykresów plot – style i kolory Możemy wygenerować sobie tabele wszystkich

Dodatkowe opcje dla wykresów plot – style i kolory Możemy wygenerować sobie tabele wszystkich dostępnych kolorów i punktów punkty: apply(append, makelist(makelist ([discrete, [[nx, ny]]], nx, 1, 13), ny, 1, 7)); kolory: cons(style, apply(append, makelist([points, 4, ny, nx], nx, 1, 13), ny, 1, 7))); plot 2 d(punkty, kolory, [x, 0, 14], [y, 0, 8], [legend, ""], [xlabel, "Punkty"], [ylabel, "Kolory"]);

Dodatkowe opcje dla wykresów plot – style i kolory - przykład lx: [1, 2,

Dodatkowe opcje dla wykresów plot – style i kolory - przykład lx: [1, 2, 3, 4, 5, 6, 7, 8, 9]; ly: [1, 2, 2. 4, 1. 7, 1. 5, 1. 6, 2, 2. 7]; plot 2 d(makelist([discrete, lx, c+ly], c, 1, 4), [x, 0, 10], [y, 1, 8], [legend, ""], [style, [lines, 2, 1], [points, 2, 6, 1], [points, 4, 2, 7], [linespoints, 3, 4, 3]])$

Pakiet draw. mac Rozszerza możliwości rysowania w Maximie Wymaga Gnupota > 4. 2, Maxima

Pakiet draw. mac Rozszerza możliwości rysowania w Maximie Wymaga Gnupota > 4. 2, Maxima > 5. 14 Pakiet włączamy poleceniem load(draw) - trwa to chwile Możliwości Wykresy 2 D (R → R) Wykresy 3 D (R^2 → R) Wykresy parametryczne Wykresy funkcji uwikłanych

Draw 2 d Pozwala rysować wykresy 2 d draw 2 d(opcje , obiekt_graficzny, .

Draw 2 d Pozwala rysować wykresy 2 d draw 2 d(opcje , obiekt_graficzny, . . . ) – tworzy grafikę 2 d jako połączenie opcji z obiektem graficznym.

Obiekty graficzne 2 d explicit(f(x), x, x 1, x 2) funkcja jednej zmiennej na

Obiekty graficzne 2 d explicit(f(x), x, x 1, x 2) funkcja jednej zmiennej na przedziale x 1 - x 2 parametric(x(t), y(t), t, t 1, t 2) Krzywa parametryczna x(t), y(t) z parametrem t na przedziale t 1 - t 2 implicit(równanie, x, x 1, x 2, y, y 1, y 2) krzywa uwikłana, opisana przez równanie, ze zmiennymi x i y na przedziałach x 1 - x 2 i y 1 - y 2 polar(r(ϕ), ϕ, ϕ 1, ϕ 2) funkcja spolaryzowana z promieniem r i kątem ϕ w przedziale ϕ 1 ϕ 2 points(xvals, yvals) zbiór punktów polygon(xvals, yvals) – polygon o wierzchołkach w xvals i yvals

Draw 2 d - przykłady draw 2 d(explicit(6 x, x, 0, 1), color=red, key="Rownanie

Draw 2 d - przykłady draw 2 d(explicit(6 x, x, 0, 1), color=red, key="Rownanie parametryczne", parametric(cos(t), t, t, 0, 2*%pi), terminal=wxt);

Draw 2 d - przykłady draw 2 d( color=red, key="r=0. 100, nticks=29", parametric(0. 1*t*cos(t),

Draw 2 d - przykłady draw 2 d( color=red, key="r=0. 100, nticks=29", parametric(0. 1*t*cos(t), 0. 1*t*sin(t), t, 0, 4*%pi), color=blue, key="r=0. 105, nticks=150", nticks=150, parametric(0. 105*t*cos(t), 0. 105*t*sin(t), t, 0, 4*%pi), terminal=wxt);

Draw 2 d przykłady g 1: explicit(2*sin(x), x, -%pi, %pi); g 2: parametric(2*sin(phi), 2*cos(phi),

Draw 2 d przykłady g 1: explicit(2*sin(x), x, -%pi, %pi); g 2: parametric(2*sin(phi), 2*cos(phi), phi, 0, 2*%pi); g 3: implicit(x^2 -y^2=1, x, -4, 4, y, -4, 4); g 4: polar(1+0. 8*sin(13*t), t, 0, 2*%pi); draw 2 d(nticks=200, color=red, g 1, color=blue, g 2, color=green, g 3, color=orange, g 4)$

Obiekty graficzne 3 d Analogicznie jak w 2 d explicit(f(x, y), x, x 1,

Obiekty graficzne 3 d Analogicznie jak w 2 d explicit(f(x, y), x, x 1, x 2, y, y 1, y 2) implicit(equation, x, x 1, x 2, y, y 1, y 2, z, z 1, z 2) parametric(x(t), y(t), z(t), t, t 1, t 2) parametric_surface(x(u, v), y(u, v), z(u, v), u, u 1, u 2, v, v 1, v 2) powierzchnia parametryczna

Draw 3 d draw 3 d(surface_hide=true, parametric_surface(cos(a)*(3+b*cos(a/2)), sin(a)*(3+b*cos(a/2)), b*sin(a/2), a, -%pi, b, -1, 1),

Draw 3 d draw 3 d(surface_hide=true, parametric_surface(cos(a)*(3+b*cos(a/2)), sin(a)*(3+b*cos(a/2)), b*sin(a/2), a, -%pi, b, -1, 1), terminal=wxt)$

Draw 3 d draw 3 d(enhanced 3 d = sin(u)+cos(v), terminal = wxt, colorbox=false,

Draw 3 d draw 3 d(enhanced 3 d = sin(u)+cos(v), terminal = wxt, colorbox=false, palette = [8, 4, 1], parametric_surface(cos(u)+. 5*cos(u)*cos(v), sin(u)+. 5*sin(u)*cos(v), . 5*sin(v), u, -%pi, v, -%pi, %pi), parametric_surface(1+cos(u)+. 5*cos(u)*cos(v), . 5*sin(v), sin(u)+. 5*sin(u)*cos(v), u, -%pi, v, -%pi, %pi)) $

Draw 3 d f(a, b, x, y): =a*x^2+b*y^2; c 1: sqrt(26); draw 2 d(implicit(

Draw 3 d f(a, b, x, y): =a*x^2+b*y^2; c 1: sqrt(26); draw 2 d(implicit( f(1/36, 1/9, x, y) +max(0, 2 -f(1. 5, 1, x+3, y+2. 7)) +max(0, 2 -f(1. 5, 1, x-3, y+2. 7)) +max(0, 2 -f(1. 9, 1/1. 7, (5*(x+1)+(y+3. 5))/c 1, (-(x+1)+5*(y+3. 5))/c 1)) +max(0, 2 -f(1. 9, 1/1. 7, (5*(x-1)-(y+3. 5))/c 1, ((x-1)+5*(y+3. 5))/c 1)) +max(0, 2 -((1. 1*(x-2))^4 -(y-2. 1))) +max(0, 2 -((1. 1*(x+2))^4 -(y-2. 1))) +max(0, 2 -((1. 5*x)^8 -(y-3. 5))) -1, x, -6, 6, y, -4, 4));

Draw 3 d draw 3 d(x_voxel = 20, y_voxel = 20, z_voxel = 20,

Draw 3 d draw 3 d(x_voxel = 20, y_voxel = 20, z_voxel = 20, enhanced 3 d = true, palette = gray, surface_hide = true, user_preamble="set hidden 3 d", implicit(2=(cos(x+%phi*y)+cos(x-%phi*y) +cos(y+%phi*z)+cos(y-%phi*z) +cos(z-%phi*x)+cos(z+%phi*x)), x, -4, 4, y, -4, 4, z, -4, 4))$

Draw 3 d Kolejne przybliżenia funkcji f(x) na przedziale [a, b] szeregiem Maclaurina draw

Draw 3 d Kolejne przybliżenia funkcji f(x) na przedziale [a, b] szeregiem Maclaurina draw 2 d(user_preamble="set size ratio 1", implicit(sin(2*x)*cos(y)=0. 2, x, -3, 3, y, -3, 3))