Zastosowanie pakietów algebry komputerowej do obliczeń
Transkrypt
Zastosowanie pakietów algebry komputerowej do obliczeń
Zastosowanie pakietów algebry komputerowej do obliczeń numerycznych i symbolicznych dr Marcin Ziółkowski Instytut Matematyki i Informatyki Akademia im. Jana Długosza w Częstochowie 14 czerwca 2013 r. dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery STEPHEN WOLFRAM - TWÓRCA PAKIETU MATHEMATICA dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery STEPHEN WOLFRAM - KRÓTKA BIOGRAFIA Stephen Wolfram – naukowiec brytyjski specjalizujący się w fizyce cząsteczek, automatach komórkowych i algebrze komputerowej, znany jako twórca programu komputerowego Mathematica oraz przeglądarki Wolfram Alpha, założyciel firmy Wolfram Research Data i miejsce urodzenia: 29 sierpnia 1959, Londyn Nagrody: MacArthur Fellowship Wykształcenie: Eton College, St John’s College w Oksfordzie, California Institute of Technology, pierwszy artykuł naukowy opublikował w wieku 15 lat, doktorat z fizyki cząsteczek uzyskał w wieku 20 lat dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery WSTĘP Pakiet Mathematica został opracowany pod koniec lat osiemdziesiątych. Jego twórcą jest z wykształcenia fizyk, brytyjczyk Stephen Wolfram. Pierwsze wersje programu pojawiły się na początku lat dziewięćdziesiątych, a sam Wolfram po początkowych niepowodzeniach związanych z pracami nad programem (były problemy finansowania projektu oraz problemy dotyczące uzyskania przez niego prawa własności) przeniósł prace z instytutów naukowych do własnej firmy, którą utworzył na potrzeby dystrybucji programu. Swój program opatentował i obecnie od wielu lat czerpie korzyści finansowe jako jedyny właściciel licencji. Program Mathematica jest obecnie dostępny w wersjach pod większość używanych systemów operacyjnych, obecna wersja programu to wersja 9. Piętnastodniowy trial programu można pobrać ze strony producenta po uprzednim zarejestrowaniu. Program Mathematica jest uznanym i bardzo cenionym na całym świecie programem pozwalającym na wykonywanie obliczeń, wykresów, tworzenie animacji oraz programów komputerowych. Używają go zarówno naukowcy jak i inżynierowie. dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery MATHEMATICA - ZALETY Niewątpliwą zaletą programu jest jego szybkość obliczeniowa, rozległość tematyczna oraz możliwość samodzielnego rozbudowywania. Program ten zyskał uznanie wśród matematyków, fizyków oraz innych ludzi zawodowo zajmujących się wykonywaniem skomplikowanych obliczeń. Wydaje się, że również nauczyciele matematyki i informatyki powinni zwrócić na niego uwagę, gdyż zawiera pewne elementy, które mogą być pomocne w wizualizacji i upoglądowieniu trudnych zagadnień matematyki omawianych na lekcjach jak również służyć jako kalkulator o bardzo dużej mocy obliczeniowej. Dodatkowo należy podkreślić jego możliwości związane z obliczeniami symbolicznymi, które powodują że jest on czołowym programem wspomagającym obliczenia z zakresu analizy matematycznej czy algebry. W zakresie symbolicznym przeważa on nad programami takimi jak MATLAB, których głównym zastosowaniem są obliczenia numeryczne. Dodatkowo należy podkreślić jego intuicyjność (komendy są bardzo proste i intuicyjne). Dalej krótko omówimy podstawowe funkcje programu. dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery MATHEMATICA – PODSTAWY – OBLICZENIA 1 2 3 4 5 W mathematice używamy następujących symboli działań arytmetycznych: +, −, ∗, /, ∧ Przy zapisywaniu skomplikowanych ułamków należy liczniki i mianowniki tych ułamków pisać w nawiasach Aby program wykonał żądaną operację wciskamy klawisze SHIFT + ENTER Pamiętamy również, że argumenty wszystkich funkcji i komend w programie (oraz ich fragmentów) piszemy w nawiasach kwadratowych, a same nazwy komend i funkcji piszemy z dużych liter Stałe matematyczne piszemy z dużej litery dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery UŻYTECZNE FUNKCJE OBLICZENIOWE 1 LCM[liczba1,liczba2,...] – obliczanie NWW liczb naturalnych 2 GCD[liczba1,liczba2,...] - obliczanie NWD liczb naturalnych 3 Divisors[liczba] - wypisywanie listy dzielników liczby 4 FactorInteger[liczba] - rozkład liczby na czynniki pierwsze 5 6 7 BaseForm[liczba,podstawa systemu] – zamiana liczby w systemie dziesiętnym na liczbę w innym systemie n ∧ ∧liczba - zamiana liczby zapisanej w systemie o podstawie n na liczbę w systemie dziesiętnym Postawienie kropki po liczbie zamienia tą liczbę na postać dziesiętną, tak można np. zamieniać ułamki zwykłe na dziesiętne dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery ROZWIĄZYWANIE RÓWNAŃ, OBLICZANIE SUM Do rozwiązywania równań, układów równań i przekształcania wzorów stosujemy polecenie Solve np. Solve[x ∧ 2 − 5 ∗ x + 6 == 0] - rozwiązywanie równania Solve[{x + y == 1, x − y == 2}, {x, y }] – rozwiązywanie układu równań Solve[S == x ∗ y , x] – wyliczenie x z podanego wzoru Uwaga: Zamiast = piszemy ==, zamiast * możemy postawić pauzę!!!! Sum[wyr , {n, nmin, nmax}] – obliczanie sumy skończonej Sum[wyr , {n, nmin, Infinity }] – obliczanie sumy nieskończonej dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery TWORZENIE WYKRESÓW Do tworzenia wykresów używamy instrukcji Plot np. Plot[f (x), {x, a, b}] –wykres dwuwymiarowy funkcji f(x) w przedziale [a,b] ParametricPlot[{f (t), g (t)}, {t, tmin, tmax}] – wykres parametrycznej krzywej na płaszczyźnie Plot3D[f (x, y ), {x, a, b}, {y , c, d}] –wykres trójwymiarowy funkcji f(x,y) w prostokącie [a,b]x[c,d] ParametricPlot3D[{f (t), g (t), h(t)}, {t, tmin, tmax}] – wykres parametrycznej krzywej w przestrzeni ParametricPlot3D[{f (t, u), g (t, u), h(t, u)}, {t, tmin, tmax}, {u, umin, umax}] – wykres parametrycznej powierzchni w przestrzeni Aby pozbyć się układu współrzędnych dodajemy Axes− >False oraz Boxed− >None . dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery ANIMACJE WYKRESÓW Do tworzenia animacji wykresów funkcji używamy polecenia Animate, animacja to sfotografowanie kilku wykresów funkcji i przedstawienie klatek w postaci filmu. np. Animate[Plot[x ∧ 2 + k, {x, −1, 1}],{k, −1, 1}] Później naciskamy pole po lewej stronie i wciskamy CTR+Y. Aby animacja działała przed wpisaniem polecenia Animate należy wpisać «Graphics‘Animation‘(jest to wywołanie biblioteki zawierającej funkcje animacji). dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery RACHUNEK RÓŻNICZKOWY D[f(x),x] – obliczenie pochodnej funkcji f D[f(x,y),x] – obliczenie pochodnej funkcji dwóch zmiennych po x Integrate[f(x),x] – obliczenie całki nieoznaczonej Integrate[f (x), {x, x1, x2}] – obliczenie całki oznaczonej z funkcji f w granicach od x1 do x2 dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery ZASTOSOWANIE W TEORII OBSŁUGI MASOWEJ W teorii obsługi masowej mamy często do czynienia z sytuacją, gdy nie jesteśmy w stanie uzyskać postaci jawnej dystrybuanty interesującej nas zmiennej losowej. Udaje się jednak często uzyskać funkcję tworzącą interesującego nas rozkładu zmiennej losowej lub przekształcenie Laplace’a-Stieltjesa dystrybuanty tej zmiennej. Jest jasne, że mając dane PLS dystrybuanty zmiennej losowej lub jej funkcję tworzącą możemy obliczyć charakterystyki badanej zmiennej losowej (momenty) obliczając pochodne tych funkcji w x=0 (gdy dane jest PLS) lub w x=1 (gdy dana jest FT). dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery ZASTOSOWANIE W TEORII OBSŁUGI MASOWEJ Niestety obliczenia te są często skomplikowane z uwagi na dwa pojawiające się problemy: 1 2 Postaci PLS lub FT w pewnych przypadkach są bardzo skomplikowane, są najczęściej ułamkami, w których występują funkcje złożone wielu zmiennych. Wtedy wyznaczenie nawet drugiej pochodnej staje się bardzo pracochłonne i skomplikowane Podstawienie x=0 (w przypadku PLS) lub x=1 (w przypadku FT) powoduje pojawienie się nieoznaczoności typu 0/0, konieczne jest zatem często wielokrotne stosowanie reguły d’ Hospitala, co jeszcze bardziej utrudnia obliczenia dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery ZASTOSOWANIE W TEORII OBSŁUGI MASOWEJ Sam pakiet nie wykona za nas całej pracy, ale można się nim wspomóc w celu znalezienia momentów interesującej nas ZL. Postępujemy w następujący sposób: 1) Wyznaczamy odpowiednią pochodną FT lub PLS 2) Otrzymany wynik dzielimy na licznik i mianownik 3) Osobno dla licznika i mianownika obliczamy pochodne odpowiedniego rzędu (stosujemy regułę d’ Hospitala) 4) Podstawiamy za argument x=0 lub x=1 5) Upraszczamy pojawiające się wyrażenia wykorzystując własności FT lub PLS (np. dla PLS a(q) , a(0)=1) 6) Dokonujemy szeregu podstawień w celu otrzymania żądanych wzorów (szczegółowo zostanie to omówione w przykładach). dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery ZAPROSZENIE ZAPRASZAMY DO PRZYKŁADÓW WYKORZYSTANIA PAKIETU MATHEMATICA dr Marcin Ziółkowski Zastosowanie pakietów algebry komputerowej do obliczeń numery