Scilab - wprowadzenie

Podobne dokumenty
Metody optymalizacji - wprowadzenie do SciLab a

Wykorzystanie programów komputerowych do obliczeń matematycznych

Wprowadzenie. SciLab Zmienne. Operatory. Macierze. Macierze. Tomasz Łukaszewski. Politechnika Poznańska Instytut Informatyki

WPROWADZENIE DO ŚRODOWISKA SCILAB

Instalacja

Wprowadzenie do Scilab: macierze

Matlab MATrix LABoratory Mathworks Inc.

Wprowadzenie do Scilab: macierze

Obliczenia w programie MATLAB

Funkcja kwadratowa. f(x) = ax 2 + bx + c,

Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje

Funkcja kwadratowa. f(x) = ax 2 + bx + c = a

Funkcje Andrzej Musielak 1. Funkcje

KLUCZ PUNKTOWANIA ODPOWIEDZI

1) Podstawowe obliczenia. PODSTAWY AUTOMATYKI I ROBOTYKI Laboratorium. Wykonał: Łukasz Konopacki Sala 125. Grupa: poniedziałek/p,

Ćwiczenie 3: Wprowadzenie do programu Matlab

Algebra macierzy

Drugi sposób definiowania funkcji polega na wykorzystaniu polecenia:

Podstawowe operacje na macierzach, operacje we/wy

gnuplot czyli jak zrobić wykres, żeby się nie narobić

Podstawowe operacje na macierzach

ROZKŁAD MATERIAŁU DO II KLASY LICEUM (ZAKRES ROZSZERZONY) A WYMAGANIA PODSTAWY PROGRAMOWEJ.

Ćwiczenie 3. MatLab: Algebra liniowa. Rozwiązywanie układów liniowych

Zakłócenia w układach elektroenergetycznych LABORATORIUM

Funkcje matematyczne w C. Programowanie w C Marek Pudełko

MATLAB ŚRODOWISKO MATLABA OPIS, PODSTAWY

Elementy metod numerycznych - zajęcia 9

Wartości x-ów : Wartości x ów można w Scilabie zdefiniować na kilka sposobów, wpisując odpowiednie polecenie na konsoli.

ANALIZA DANYCH I PROCESÓW. Mgr inż. Paweł Wojciech Herbin

Wprowadzenie do Scilab: macierze

, h(x) = sin(2x) w przedziale [ 2π, 2π].

MATLAB - laboratorium nr 1 wektory i macierze

GNU Octave (w skrócie Octave) to rozbudowany program do analizy numerycznej.

Laboratorium 1b Operacje na macierzach oraz obliczenia symboliczne

Podstawy Automatyki ćwiczenia Cz.1. Środowisko Matlab

Zajęcia nr 1 (1h) Dwumian Newtona. Indukcja. Zajęcia nr 2 i 3 (4h) Trygonometria

opracował: mgr inż. Piotr Marchel Instrukcja obsługi programu Struktura

Matlab Składnia + podstawy programowania

Wymagania na egzamin poprawkowy z matematyki w roku szkolnym 2018/2019 klasa 1 TLog

Matlab Składnia + podstawy programowania

Podstawy Informatyki 1. Laboratorium 1

SciLab Literatura. Tomasz Łukaszewski. Politechnika Poznańska Instytut Informatyki

Pętle iteracyjne i decyzyjne

Wykorzystanie programów komputerowych do obliczeń matematycznych, cz. 2/2

Obliczenia iteracyjne

WEKTORY I MACIERZE. Strona 1 z 11. Lekcja 7.

Programowanie: grafika w SciLab Slajd 1. Programowanie: grafika w SciLab

Programy wykorzystywane do obliczeń


Zadanie 3 Oblicz jeżeli wiadomo, że liczby 8 2,, 1, , tworzą ciąg arytmetyczny. Wyznacz różnicę ciągu. Rozwiązanie:

2) R stosuje w obliczeniach wzór na logarytm potęgi oraz wzór na zamianę podstawy logarytmu.

PORÓWNANIE TREŚCI ZAWARTYCH W OBOWIĄZUJĄCYCH STANDARDACH EGZAMINACYJNYCH Z TREŚCIAMI NOWEJ PODSTAWY PROGRAMOWEJ

x a 1, podając założenia, przy jakich jest ono wykonywalne. x a 1 = x a 2 ( a 1) = x 1 = 1 x.

Egzamin ustny z matematyki semestr II Zakres wymaganych wiadomości i umiejętności

III. Funkcje rzeczywiste

Laboratorium metod numerycznych - SCILAB Laboratorium 2

Wprowadzenie do środowiska

do MATLABa podstawowe operacje na macierzach WYKŁAD Piotr Ciskowski

Microsoft Small Basic

Wykład 14. Elementy algebry macierzy

ARKUSZ KALKULACYJNY MICROSOFT EXCEL cz.2 Formuły i funkcje macierzowe, obliczenia na liczbach zespolonych, wykonywanie i formatowanie wykresów.

Przedmiotowy system oceniania wraz z określeniem wymagań edukacyjnych klasa druga zakres rozszerzony

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Wprowadzenie do programowania w SciLab: typy danych, wyrażenia, operatory, funkcje własne, skrypty.

WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY DRUGIEJ LICEUM OGÓLNOKSZTAŁCĄCEGO ZAKRES PODSTAWOWY

MATLAB - podstawy użytkowania

SCILAB. Wprowadzenie do Scilaba:

Laboratorium Komputerowego Wspomagania Analizy i Projektowania

. Funkcja ta maleje dla ( ) Zadanie 1 str. 180 b) i c) Zadanie 2 str. 180 a) i b)

Lekcja 2. Pojęcie równania kwadratowego. Str Teoria 1. Równaniem wielomianowym nazywamy równanie postaci: n

Wymagania na egzamin poprawkowy z matematyki w roku szkolnym 2018/2019 klasa 1 TŻiUG

WYMAGANIA EDUKACYJNE NA POSZCZEGÓLNE OCENY. (zakres podstawowy) klasa 2

MATEMATYKA WYKAZ UMIEJĘTNOŚCI WYMAGANYCH NA POSZCZEGÓLNE OCENY DLA KLASY DRUGIEJ

Teksty Liczby Formuły. Operatory. dr inż. Jarosław Forenc. Pasek narzędzi. Pasek narzędzi. (Atrybuty komórek)

dr inż. Jarosław Forenc

Indukcja matematyczna

1 Funkcje elementarne

Wykorzystanie programów komputerowych do obliczeń matematycznych, cz. 2/2

PODSTAWY INFORMATYKI 1 MATLAB CZ. 3

Scilab - podstawy. Wersje instalacyjne programu Scilab mogą zostać pobrane ze strony

V. WYMAGANIA EGZAMINACYJNE

(a b 1 2); : ( b a + b ab 2 + c ). : a2 2ab+b 2. Politechnika Białostocka KATEDRA MATEMATYKI. Zajęcia fakultatywne z matematyki 2008

Funkcje. Część pierwsza. Zbigniew Koza. Wydział Fizyki i Astronomii

Zagadnienia do małej matury z matematyki klasa II Poziom podstawowy i rozszerzony

Wymagania edukacyjne z matematyki klasa II technikum

Literatura podstawowa

WYMAGANIA EDUKACYJNE NIEZBĘDNE DO OTRZYMANIA PRZEZ UCZNIA POSZCZEGÓLNYCH ŚRÓDROCZNYCH I ROCZNYCH OCEN KLASYFIKACYJNYCH Z MATEMATYKI

WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA

1 Wyrażenia potęgowe i logarytmiczne.

Scilab skrypty (programowanie)

Standardy wymagań maturalnych z matematyki - matura

BAZA ZADAŃ KLASA 2 TECHNIKUM FUNKCJA KWADRATOWA

Wprowadzenie do środowiska MATLAB z zastosowaniami w modelowaniu i analizie danych

Metody i analiza danych

KLUCZ PUNKTOWANIA ODPOWIEDZI

Sin[Pi / 4] Log[2, 1024] Prime[10]

Ćwiczenie 1. Matlab podstawy (1) Matlab firmy MathWorks to uniwersalny pakiet do obliczeń naukowych i inżynierskich, analiz układów statycznych

WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY III

Baltie 3. Podręcznik do nauki programowania dla klas I III gimnazjum. Tadeusz Sołtys, Bohumír Soukup

WSTĘP DO ANALIZY I ALGEBRY, MAT1460

Transkrypt:

Strona 1 Scilab jest darmowym programem (freeware) przeznaczonym do badań matematycznych. Może pomóc w statystycznym opracowaniu wyników badań (pomiarów). Można przy jego pomocy rysować grafy, wykresy 2- i 3- wymiarowe, tworzyć animacje. Powstał we Francji we współpracy INRIA (narodowy instytut badań w dziedzinie komputerów) oraz ENPC (słynna francuska uczelnia techniczna). Najnowszą wersję programu (5.3.3) można pobrać stąd. W tej wersji interfejs użytkownika jest w dużej części po polsku. Tutoriale internetowe: Wprowadzenie do Scilaba. Materiały z Politechniki Łódzkiej, autor Andrzej Brozi. Manual, po angielsku.

Strona 2 Po uruchomieniu programu pojawi się okno: W tym oknie wpisujemy kolejne polecenia i odczytujemy odpowiedzi. Praca z programem Całe wpisane polecenie wykonywane jest po naciśnięciu klawisza Enter, niezależnie od aktualnego położenia kursora. Można wpisywać polecenie w kilku wierszach, kończymy wiersz wpisaniem dwóch kropek.. i naciskamy Enter.

Strona 3 Zakończenie polecenia średnikiem ; zapobiega pojawieniu się wyniku polecenia na ekranie. Polecenie diary('nazwapliku', ['new' 'append']) powoduje, że wszystkie polecenia i odpowiedzi zapisywane są do wskazanego pliku. Rejestrowanie kończymy poleceniem diary(0). Plik zostanie utworzony w katalogu bieżącym, polecenie pwd (print work directory) wyświetli nazwę tego katalogu. Drugi parametr polecenia diary nie jest obowiązkowy, domyślna wartość, to 'new'.istniejący plik o takiej samej nazwie zostanie, bez uprzedzenia, nadpisany. Najważniejsze funkcje matematyczne abs wartość bezwzględna, moduł exp funkcja wykładnicza exp x = e x log logarytm naturalny (o podstawie e ) log10 logarytm o podstawie 10 sin sinus (argument w radianach) cos cosinus (argument w radianach) tan tangens (argument w radianach) cotag kotangens (argument w radianach)

abs cosh sinh sqrt round floor ceil int rand wartość bezwzględna, moduł cosinus hiperboliczny cosh x = e x e x sinus hiperboliczny sinh x = ex e x pierwiastek kwadratowy (sqrt(-1)=i) przybliżenie całkowite (zaokrąglenie) round(.4999999999999999)=0 round(.49999999999999999)=1 przybliżenie całkowite z dołu (floor(2.3)=2) przybliżenie całkowite z góry (ceil(2.3)=3) obcięcie części ułamkowej (int(-3.4)=-3) liczba (macierz) losowa, losowane są liczby z przedziału [0,1 rand() liczba rand(5,4) macierz 5 4 ** operator potęgowania (2**5=32, 1.3**5.2=3.9129602) 2 2 Strona 4 Po wykonaniu polecenia: zm=wyrażenie (np. x=sqrt(17)+exp(0)+sin(%pi/2)) powstanie zmienna o nazwie zm, jej wartością będzie obliczone wyrażenie (jeżeli zmienna o nazwie zm już istniała, to zmieni swoją wartość). Po wykonaniu polecenia: wyrażenie

(np. sqrt(17)+exp(0)+sin(%pi/2)) wartość wyrażenia zostanie obliczona i przypisana do zawsze istniejącej zmiennej o nazwie ans. Operacje na wektorach i macierzach W programie Scilab działa się właściwie tylko na macierzach (tablicach liczb). Pojedyncza liczba jest macierzą 1 1, wektor jest macierzą n 1. Definiujemy macierze tak: A=[1 2 3;4 5 6;7 8 9] Strona 5 ; jest separatorem wierszy. Wszystkie wiersze muszą mieć taką samą długość. Jeśli macierz jest jednoelementowa, to możemy opuścić nawiasy: x=37. Definiując macierz, możemy się posłużyć istniejącymi już macierzami lub innymi poleceniami (funkcjami). Polecenia: A=1:10 B=11:20 D=[A;B]

Strona 6 utworzą macierz dwuwierszową D =[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20]. A=1:0.17:2 1 1.17 1.34 1.51 1.68 1.85 B=2:-0.22:0.6 2 1.78 1.56 1.34 1.12 0.9 0.68. Polecenie x=linspace(2,3,10) utworzy macierz jednowierszową mająca 10 wyrazów, pierwszym wyrazem macierzy jest liczba 2, ostatnim 3. Operator ' transponuje macierz, tzn. zamienia wiersze na kolumny i vice versa. [1 5] 2 A=[1:5]' 3 4 [ A=[[1:100]' [1:100]'] 1 1 2 2. 100 100] Jeżeli wpiszemy polecenie postaci: A=fun(matrix) (np. linspace(0,1,101) A=exp(ans)), to wartości

Strona 7 funkcji fun zostaną obliczone dla każdego elementu macierzy matrix. Jak otrzymać taką macierz (z obliczonymi wartościami)? [ 2 99 ] 0 100 100 100 sin 0 sin 2 99 sin sin sin 100 100 100 A=linspace(0,%pi,101) B=sin(A) C=[A;B]. W programie Scilab istnieją dwa operatory mnożenia macierzy. A=[1 2;3 4] [ 1 2 3 4] B=[1 2;3 4] [ 1 2 3 4] A*B [ 7 10 15 22], * oznacza operator mnożenia znany z algebry liniowej, A.*B [ 1 4 9 16],.* oznacza operator mnożenia wyraz po wyrazie.

Strona 8

Strona 9 Wykorzystanie macierzy Rozwiązywanie układów równań liniowych. Równanie postaci ax = b a,b R rozwiązujemy tak: x = b a. Układ równań a 11 x 1 a 12 x 2 a 1n x n b 1 = a n1 x 1 a n2 x 2 a nn x n b n możemy zapisać za pomocą macierzy A =[a 11 a 12 a 1n a n1 a n2 a nn] i wektorów x = [x 1 n] b x =[b1 n] w b postaci A x = b i rozwiązać analogicznie (przez dzielenie) x = A b. Nietypowy jest zapis: najpierw dzielnik, potem dzielna oraz odwrotna kreska ułamkowa (backslash). Istnieje tez operator dzielenia wyraz po wyrazie, [2 3 4].\[3 4 5]=[1.5 1.3333333 1.25] Przykład: { x y z = 3 x y z = 1 x y z = 3 A=[1 1 1;1-1 1;1-1 -1]

Strona 10 b=[3 1-3]' x=a\b 0 1 2. Wykresy dwuwymiarowe, podstawowym poleceniem jest plot2d. Można je wywoływać z argumentami różnych typów. plot2d(matrix). Matrix jest macierzą n 1, lub 1 n. Na osi Ox umieszczane zostaną numery współrzędnych wektora matrix, na osi Oy natomiast współrzędne tego wektora. Chcemy zbadać eksperymentalnie zachowanie ciągu a n = sin n 2. b=1:10000; b=b.*b; a=sin(b) W macierzy jednowierszowej a mamy 10000 początkowych wyrazów tego ciągu. Polecenie plot2d(a(801:1000)) rysuje wykres fragmentu tego ciągu. Niestety, skalowanie na osi X jest mylące.

Strona 11 Polecenie plot2d(801:1000,a(801:1000)) skaluje poprawnie oś X.

Strona 12 Rysowanie wykresu funkcji y = e x sin x. x=linspace(0,2*%pi,101) y=sin(x).*exp(x) plot2d(y)

Strona 13 Po kolejnych poleceniach z=exp(x) plot2d(z) okno graficzne wygląda tak:

Strona 14 Wykres został dorysowany w tym samym oknie graficznym, skalowanie osi Y zostało zmienione. Można takie zachowanie programu zmienić poleceniem xset. xset( window,numer_okna) xset( auto clear, on ) Po poleceniach:

Strona 15 y=linspace(0,1,11) plot2d(y) nie pasują oznaczenia na osi Ox, nic nie jest dorysowywane. plot2d(matrix), matrix jest macierzą n k n, k > 1. Na osi Ox umieszczane są numery wierszy macierzy, natomiast na osi Oy współrzędne (wyrazy) macierzy matrix. Powstaje tyle wykresów, ile macierz ma kolumn ( k ). Narysowanie jednym poleceniem wykresu dwóch funkcji. x=linspace(0,%pi,201) y=[sin(x)' cos(x)'] plot2d(y)

Strona 16 plot2d(wektorx,wektory), wektory wektorx oraz wektory muszą mieć taką samą długość. Na osiach Ox oraz Oy umieszczane są współrzędne tych wektorów. Polecenie to nadaje się do rysowania tradycyjnych

Strona 17 wykresów funkcji. x=linspace(-3,3,101) y=exp(-(x.*x)) plot2d(x,y) Polecenie plot2d(..) ma odmiany inaczej łączące punkty wykresu.

Strona 18 subplot(2,2,1) plot2d(x,y) normalny wykres subplot(2,2,2) plot2d2(x,y) wykres stały pomiędzy punktami subplot(2,2,3) plot2d3(x,y) wykres słupkowy subplot(2,2,4) plot2d4(x,y) wykres strzałkowy

Strona 19 x=[0 2 3.5] y=[2 2 3.5] plot2d4(x,y) x=[2 3.5] y=[2 0.5] plot2d4(x,y)

Strona 20 Wykresy trójwymiarowe, podstawowym poleceniem jest plot3d(wektorx,wektory,values), wektor wektorx ma długość n x, wektory ma długość n y (liczby n x, n y nie muszą być równe), values jest macierzą o rozmiarze n x n y. Jak sporządzić wykres funkcji f x, y = x 2 y 2 x, y [ 3,3]?

[ Scilab - wprowadzenie Strona 21 Inaczej, jak (w wygodny sposób) uzyskać macierz values? Skorzystamy z funkcji ones(...), która tworzy macierz złożoną z samych jedynek. Argumentem funkcji ones może być para liczb (ilość wierszy, ilość kolumn) lub macierz wzorcowa. Istnieje analogiczna funkcja zeros(...). x=linspace(-3,3,51) [ 3 2.88 2.88 3] y=linspace(-3,3,61) [ 3 2.9 2.9 3] xx=x'*ones(y) Otrzymamy macierz o rozmiarach 51 61 ze stałymi wierszami yy=ones(x)'*y 3 3 3 2.88 2.88 2.88. 3 3 3 ] Otrzymamy macierz o rozmiarach 51 61 ze stałymi kolumnami [ 3 2.9 3 3 2.9 3 3 2.9 3 ]. z=xx.*xx+yy.*yy

Strona 22 plot3d(x,y,z) Wykresy trajektorii (krzywych w R 3 ), podstawowe polecenie to, param3d(x,y,z), x, y, z są wektorami o takiej długości, opisującymi punkty w przestrzeni. Rysowanie linii śrubowej. t=linspace(0,4*%pi,101)

Strona 23 x=2*cos(t) y=2*sin(t) z=4*t xset( thickness,3) param3d(x,y,z) xset( thickness,1) param3d(x,y,zeros(z))

Strona 24