ZASTOSOWANIE INTERFEJSU MATHEMATICA DO WIZUALIZACJI KRZYWYCH Koło Naukowe Matematyków Uniwersytetu Rzeszowskiego Wojciech Bester ZASTOSOWANIE INTERFEJSU MATHEMATICA DO WIZUALIZACJI KRZYWYCH http://delta.univ.rzeszow.pl/knm/
Cel prezentacji I. Wizualizacja krzywych zadanych w postaci algebraicznej i parametrycznej w programie mathematica 5. W szczególności krzywych III i IV stopnia. II. Przedstawienie opcji wykresów 2D i funkcji obróbki obszaru kreślenia. Zastosowanie tych funkcji do popularnych krzywych jak i nieznanych.
Cel prezentacji III. Przedstawienie metody badania krzywych III i IV stopnia. Wykorzystanie podmiotu matematycznego i elementów geometrii do charakteryzacji własności krzywych. IV. Poszukiwanie zastosowania krzywych w praktyce.
Najprostsze wykresy 2D 1. Definiowane funkcje przez użytkownika: y=2x z=2x^2 s=2^x Plot[y,{x,0,10}] Plot[z,{x,0,10}] Plot[s,{x,0,10}]
Najprostsze wykresy 2D 2. Cosinus, sinus, tangens, cotangens: Zadawana funkcje: Plot[Cos[x],{x,0,Pi}] Plot[Sin[x],{x,0,Pi}] Plot[Tan[x],{x,0,Pi}] Plot[Cot[x],{x,0,Pi}] 3. Dwie funkcje na wykresie: Zadawana funkcja: Plot[{Sin[x],Cos[x]},{x,0,Pi}]
Najprostsze wykresy 2D 4. Funkcja ekspotencjalna, arcus sinus: Zadawane funkcje: Plot[ArcSin[x],{x,-1,1}] Plot[Exp[x],{x,0,Pi}]
Najprostsze wykresy 2D 5. Pozostałe funkcje warte uwagi: Zadawana funkcje: a) Logarytmiczna o podst. e: Plot[Log[x],{x,0,Pi}] b) Logarytmiczna o podst. b: Plot[Log[b,x],{x,0,Pi}] c) Secans: Plot[Sec[x],{x,0,Pi}] d) Cosecans: Plot[Csc[x],{x,0,Pi}] e) Sinus hiperbloliczny Plot[Sinh[x],{x,0,Pi}] f) Arcus sinus hiperbloliczny Plot[ArcSinh[x],{x,0,Pi}]
Opcje Wykresów A. Umieszczenie skali na obramowaniu wykresu: Opcja Frame->True: Plot[Cos[x],{x,0,Pi},Frame->True] B. Wyróżnienie osi liczbowych: Opcja AxesLabel->{„…",„…"}: Plot[Cos[x],{x,-Pi,Pi},AxesLabel->{"wartości x","Cosinus[x]"}]
Opcje Wykresów Opcja GridLines->Automatic: C. Dodawanie lilnii siatki na wykresie: Opcja GridLines->Automatic: Plot[Cos[x],{x,-Pi,Pi},GridLines->Automatic] D. Kontrola szerokości i długości wykresu: Opcja AspectRatio->… : Plot[Cos[x],{x,-Pi,Pi},AspectRatio->0.4]
Opcje Wykresów Opcja PlotRange->{… , …}: E. Wyróżnianie określonych części wykresu: Opcja PlotRange->{… , …}: Plot[Cos[x],{x,-Pi,Pi},PlotRange->{0,1.2}] F. Tytuł wykresu, nazwa krzywej oraz jej charakter czcionki: Funkcja PlotLabel oraz StyleForm opcja FontSlant: Plot[Cos[x],{x,-Pi,Pi},PlotLabel->StyleForm[Cos[x],"Section",FontSlant->"Italic"]]
Opcje Wykresów Opcja RGBColor->[… , …]: G. Funkcja PlotStyle i kolor krzywej: Opcja RGBColor->[… , …]: Plot[Cos[x],{x,-Pi,Pi},PlotStyle->{RGBColor[1,0,0]}] H. Funkcja PlotStyle i grugość krzywej: Opcja Thickness[…] : Plot[Cos[x],{x,-Pi,Pi},PlotStyle->{Thickness[0.04]}]
Opcje Wykresów Opcja Dashing[{… , …}]: I. Funkcja PlotStyle i krzywa przerywana. Opcja Dashing[{… , …}]: Plot[Cos[x],{x,-Pi,Pi},PlotStyle->{Dashing[{0.05,0.05}]}] J. Kolor Tła: Opcja Background->RGBColor[… , … , …]: Plot[Cos[x],{x,-Pi,Pi},Background->RGBColor[0.3,0.4,0.6]]
Opcje Wykresów Bogactwo funkcji i opcji formatowania i przedstawiania wykresów w programie mathematica jest niemal, że nieskończone. Oto niektóre jeszcze dostępne opcje:
Implicitplot Jest to specjalna funkcja programu mathematica do wizualizacji krzywych zapisanych w postaci algebraicznej. Wykres prezentowany przez implicitplot jest rozwiązaniem równania albo nawet kilku równań. Przy czym możemy określić przedział wyświetlanych wartości jednej lub wielu zmiennych zawartych w równaniu. Więcej informacji możemy dostać posługując się indeksem mathematica wpisując w wyszukiwarkę Graphics`ImplicitPlot`. Przykład zastosowania: Aby zainicjować funkcję należy na początek aktywować procedurę: << Graphics`ImplicitPlot` Następnie: ImplicitPlot[{(x^2+y^2)^2==(x^2-y^2),(x^2+y^2)^2==2 x y},{x,-2,2}, PlotStyle->{{RGBColor[1,0,0],Dashing[{.03}]},{RGBColor[0,1,0]}}]
parametricplot Jest to funkcja programu mathematica do wizualizacji krzywych zapisanych w postaci parametrycznej. Polega to na zadaniu współrzędnych x i y, wszystkich punktów krzywej, jako funkcji w których zmienna jest np. t. Sposoby przedstawienia wykresu za pomocą parametricplot: fy fx ParametricPlot[{fx, fy }, {t, tmin, tmax}] ParametricPlot[{{fx, fy }, {gx, gy }}, {t, tmin, tmax}] Przykład zastosowania: ParametricPlot[{(3Sin[t])^3,(Cos[t])^2},{t,0,2Pi},PlotStyle->{GrayLevel[0.7]}]
Zasobnik matematyczny
Zasobnik matematyczny
Zasobnik matematyczny
podsumowanie Przedstawione definicje są bazą do badania krzywych. Z oczywistych powodów nie mogę dalej prowadzić tego wywodu bo prezentacja ta stałaby się wykładem z geometrii. Ale mam nadzieje, że zasygnalizowałem potrzebne narzędzia czy choćby półśrodki do zainteresowania się tą tematyką. W dalszej części prezentacji pokażę wyniki badania ciekawych krzywych III i IV stopnia oraz ich wizualizację w programie mathematica. Scharakteryzowane opcje i funkcje mathematica 5 będą narzędziem w kreśleniu i obróbki wykresów.
Wykorzystanie zasobnika
Cisoida Dioklesa
Cisoida Dioklesa a=3 a=0.08 ParametricPlot[{2a*t^2/(1+t^2),2a*t^3/(1+t^2)},{t,-8,8},PlotStyle->{Thickness[0.001],RGBColor[1,0.5,0.5]},Frame->True,AxesLabel->{"x","y"},PlotRange->{-10,10}]
Konchoida Sluse’a
Konchoida Sluse’a b=2.8, a=3 b=2, a=1 ImplicitPlot[a(x-a)*(x^2+y^2)+k^2*x^2==0,{x,-15,15},AxesLabel->{"x","y"},PlotStyle->{RGBColor[1,0,0]},Frame->True,AxesLabel->{"x","y"}]
Strofoida
Strofoida a=2 a=-2 ImplicitPlot[{x(y^2+x^2)-a(y^2-x^2)==0,x(y^2+x^2)-a(y^2+x^2)==0},{x,-15,15}, PlotStyle->{{RGBColor[1,0,0]},{RGBColor[0,1,0]}},Frame->True,AxesLabel->{"x","y"}]
Trójsieczna Maclaurina
Trójsieczna Maclaurina ImplicitPlot[{y^2==x^2(x+3a)(a-x),y^2==x^2(x-5a)(a-x)},{x,-17,22},AxesLabel->{"x","y"},Frame->True,PlotStyle->{{RGBColor[1,0,0]},{RGBColor[0,1,0]}},FrameLabel->{"","y^2=x^2(x+0.9)(0.3-x)","","y^2=x^2(x-1.5)(0.3-x)"}]
Panstrofoida
Panstrofoida a=1.5; b*b=0.2 a=1,b=1.5 a=7; b*b=0.25 ImplicitPlot[y^2==((x+a)(x^2+b^2))/(a-x),{x,-12,12},PlotStyle->{Thickness[0.005],RGBColor[1,0.5,0.5]}, Frame->True,AxesLabel->{"x","y"}]
Wersiera Agnesi
Wersiera Agnesi a=10 a=2 ImplicitPlot[y==a^3/(a^2+x^2),{x,-7,7},PlotStyle->{Thickness[0.001],RGBColor[1,0.5,0.5]},Frame->True,AxesLabel->{"x","y"}]
Liść Kartezjusza
Liść Kartezjusza a=8 ImplicitPlot[y^3+x^3==3a*x*y,{x,-15,15},PlotStyle->{Thickness[0.007],RGBColor[1,0.5,0.5]},Background->RGBColor[1,1,1],Frame->True,AxesLabel->{"x","y"}]
Ofiuryda (ogon węża)
Ofiuryda (ogon węża) a=3, b=3 a=13, b=3 ImplicitPlot[x(y^2+x^2)-y(a*x-b*y)==0,{x,-3,17},PlotStyle->{Thickness[0.001],RGBColor[1,0.5,0.5]},Background->RGBColor[1,1,1],Frame->True,AxesLabel->{"x","y"}]
Trójsieczna Tschirnhausa
Trójsieczna Tschirnhausa ImplicitPlot[2(2a+x)^3==27a(x^2+y^2),{x,-3,17},PlotStyle->{Thickness[0.001],RGBColor[1,0.5,0.5]},Frame->True,AxesLabel->{"x","y"}]
Konchoida Nikomedesa
Konchoida Nikomedesa a=2, l=3 niebieskie ImplicitPlot[{(x-a)^2(x^2+y^2)-l^2x^2==0,(x-a)^2(x^2+y^2)-2^2x^2==0},{x,-13,13},AxesLabel->{"x","y"},PlotStyle->{{RGBColor[0,0,1]},{RGBColor[1,1,0]}},Frame->True,AxesLabel->{"x","y"}] a=2, l=2 żółte
Ślimak Pascala
Ślimak Pascala a=2, l=4 a=2, l=2 a=2, l=1 ImplicitPlot[(y^2+x^2-a*x)^2==l^2(y^2+x^2),{x,-13,13},AxesLabel->{"x","y"},PlotStyle->{RGBColor[0,0,1]},AxesLabel->{"x","y"}]
Owale Bernoulliego a = 2 ImplicitPlot[y^4+2(2x^2-3a^2)y^2+a^4==0,{x,-16,16},AxesLabel->{"x","y"},PlotStyle->{RGBColor[0,0,1]},Frame->True,AxesLabel->{"x","y"}]
Owal Cassiniego
Owal Cassiniego a=1, c=1.5 a=2.5, c=1.5 a=1.7, c=1.5 ImplicitPlot[(x^2+y^2)^2-2c^2(x^2-y^2)==a^4-c^4,{x,-13,13},AxesLabel->{"x","y"},PlotStyle->{RGBColor[0,0,1]},Frame->True,AxesLabel->{"x","y"}]
Leminiskata Bernoulliego
Leminiskata Bernoulliego ImplicitPlot[(x^2+y^2)^2-2a^2(x^2-y^2)==0,{x,-33,33},AxesLabel->{"x","y"},PlotStyle->{RGBColor[0,0,1]},Frame->True,AxesLabel->{"x","y"}]
Literatura: Nowoczesne Kompendium Matematyki, I. N. Bronsztejn K. A Literatura: Nowoczesne Kompendium Matematyki, I.N. Bronsztejn K.A. Siemiendiajew G. Musiol H. Mühlig Dziękuję za uwagę