Podstawy MATLABA, cd.

Podobne dokumenty
Modelowanie Systemów Dynamicznych Studia zaoczne, Automatyka i Robotyka, rok II. Podstawy MATLABA, cz2.

MATLAB ŚRODOWISKO MATLABA OPIS, PODSTAWY

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

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

PODSTAWY INFORMATYKI 1 MATLAB CZ. 3

Metody i analiza danych

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

Laboratorium Cel ćwiczenia Ćwiczenie ma na celu praktyczne przedstawienie grafiki 3D.

Ćwiczenie 0 : Wprowadzenie do cyfrowego przetwarzania sygnałów. wyświetla listę tematów pomocy. wyświetla okno pomocy (Help / Product Help)

1 Programowanie w matlabie - skrypty i funkcje

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

Instrukcja korzystania ze skryptu kroswalidacja.py

MATLAB tworzenie własnych funkcji

Metody Numeryczne. Laboratorium 1. Wstęp do programu Matlab

Usługi Informatyczne "SZANSA" - Gabriela Ciszyńska-Matuszek ul. Świerkowa 25, Bielsko-Biała

do MATLABa programowanie WYKŁAD Piotr Ciskowski

Przykładowo, jeśli współrzędna x zmienia się od 0 do 8 co 1, a współrzędna y od 12 co 2 do 25, to punkty powinny wyglądać następująco:

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

Program na zaliczenie: Odejmowanie widm

Różniczkowanie numeryczne

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 6 AUTOMATYKA

Ćwiczenia nr 4. Arkusz kalkulacyjny i programy do obliczeń statystycznych

Ćwiczenie 4. Matlab - funkcje, wielomiany, obliczenia symboliczne

Podstawy Automatyki ćwiczenia Cz.1. Środowisko Matlab

Matlab (5) Matlab równania różniczkowe, aproksymacja

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

WPROWADZENIE DO ŚRODOWISKA SCILAB

MATLAB wprowadzenie śycie jest zbyt krótkie, aby tracić czas na pisanie pętli!

Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki

Pętle iteracyjne i decyzyjne

Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki

Wprowadzenie do Scilab: funkcje i wykresy

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

Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać

Ćwiczenia 11 (12) (4 godziny). Wizualizacja i manipulacja w Matlabie

SCENARIUSZ LEKCJI. Wielomiany komputerowe wykresy funkcji wielomianowych

Laboratorium Algorytmy Obliczeniowe. Lab. 9 Prezentacja wyników w Matlabie

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

Przetwarzanie sygnałów

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

Ćwiczenie 1. Wprowadzenie do programu Octave

3.7. Wykresy czyli popatrzmy na statystyki

Zapisywanie algorytmów w języku programowania

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

Maxima i Visual Basic w Excelu

Ćwiczenie 3. Iteracja, proste metody obliczeniowe

SKRYPTY. Zadanie: Wyznaczyć wartość wyrażenia arytmetycznego

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

Ćwiczenie 1. Wprowadzenie do programu Octave

Interpolacja i aproksymacja, pojęcie modelu regresji

Tworzenie nowego projektu w asemblerze dla mikroprocesora z rodziny 8051

Maple i wykresy. 1.1 Najpierw należy się zalogować. Jak to zrobić zostało opisane w moim poprzednim tutorialu.

Wstęp do Informatyki i Programowania Laboratorium: Lista 1 Środowisko programowania

BIBLIOGRAFIA W WORD 2007

zajęcia 2 Definiowanie wektorów:

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

Programowanie w języku Python. Grażyna Koba

Wprowadzenie do pakietów MATLAB/GNU Octave

Skrypt 12. Funkcja kwadratowa:

Elementy metod numerycznych - zajęcia 9

FUNKCJA KWADRATOWA. Wykresem funkcji kwadratowej jest parabola o wierzchołku w punkcie W = (p, q), gdzie

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

Zakład Systemów Rozproszonych

najlepszych trików Excelu

Matlab MATrix LABoratory Mathworks Inc.

Równania nieliniowe. LABORKA Piotr Ciskowski

METODA Wykorzystanie programu LICEALISTA 2.0 (a w nim podprogramu VIRTUAL MATH) zakupionego przez nauczyciela Karty Pracy dla każdego ucznia

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

Spis treści Szybki start... 4 Podstawowe informacje opis okien... 6 Tworzenie, zapisywanie oraz otwieranie pliku... 23

Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa. Diagnostyka i niezawodność robotów

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

AKADEMIA GÓRNICZO-HUTNICZA im. Stanisława Staszica w Krakowie

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

Drugi sposób definiowania funkcji polega na wykorzystaniu polecenia:

ZAGADNIENIA PROGRAMOWE I WYMAGANIA EDUKACYJNE DO TESTU PRZYROSTU KOMPETENCJI Z MATEMATYKI DLA UCZNIA KLASY II

ZADANIE 1. ZADANIE 2 Wyznacz wzór funkcji f (x) = 2x 2 + bx + c w postaci kanonicznej wiedzac, że jej miejsca zerowe sa niami równania x 3 = ZADANIE 3

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 1 AUTOMATYZACJA I ROBOTYZACJA PROCESÓW PRODUKCYJNYCH

MATLAB Podstawowe polecenia

Uruchom polecenie z menu Wstaw Wykres lub ikonę Kreator wykresów na Standardowym pasku narzędzi.

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

Skrypt 7. Funkcje. Opracowanie: L1

Podstawy programowania Laboratorium. Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji

Pojęcia, wymagania i przykładowe zadania na egzamin poprawkowy dla klas II w roku szkolnym 2016/2017 w Zespole Szkół Ekonomicznych w Zielonej Górze

========================= Zapisujemy naszą funkcję kwadratową w postaci kanonicznej: 2

Tematy lekcji informatyki klasa 4a luty/marzec 2013

SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD

Qtiplot. dr Magdalena Posiadała-Zezula

Być może jesteś doświadczonym programistą, biegle programujesz w Javie,

Elementy projektowania inzynierskiego Przypomnienie systemu Mathcad

Rozwiązywanie równań różniczkowych z niezerowymi warunkami początkowymi

Przedmiot: Informatyka w inżynierii produkcji Forma: Laboratorium Temat: Zadanie 4. Instrukcja warunkowa.

FUNKCJA KWADRATOWA. 1. Definicje i przydatne wzory. lub trójmianem kwadratowym nazywamy funkcję postaci: f(x) = ax 2 + bx + c

Trochę o plikach wsadowych (Windows)

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

Niezawodność diagnostyka systemów laboratorium. Ćwiczenie 2

Zakładka Obmiar jest dostępna dla pozycji kosztorysowej w dolnym panelu. Służy do obliczania ilości robót (patrz też p ).

INSTRUKCJA LABORATORIUM ELEKTROTECHNIKI

Cyfrowe Przetwarzanie Obrazów i Sygnałów

Katedra Elektrotechniki Teoretycznej i Informatyki

Makropolecenia w Excelu

Transkrypt:

Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki Przetwarzanie Sygnałów Studia Podyplomowe, Automatyka i Robotyka Podstawy MATLABA, cd. 1. Wielomiany 1.1. Definiowanie wielomianów Zapiszmy przykładowy wielomian II rzędu: y = x 2 + 10 można go zapisać w postaci ogólnej: y = 1x 2 + 0x +10 W Matlabie wpisujemy jedynie współczynniki wielomianu poczynając od najwyższej potęgi, czyli: y = [1 0 10] 1.2. Obliczanie wartości wielomianów Wartości wielomianu obliczamy za pomocą funkcji polyval. Wcześniej jednak należy zdefiniować zakres, dla którego chcemy obliczyć te wartości, np: t = -10:0.1:10; wektor od 10 do 10 z krokiem 0.1 p = polyval(y,t); wektor p zawiera wartości wielomianu w zakresie t plot(t,p) rysowanie wielomianu Narysuj wielomian: x 6-2x 5 + 4x 3-16x 2 + 15 w zakresie -2 x 2 1.3. Miejsca zerowe wielomianów Do obliczania miejsc zerowych (pierwiastków) wielomianów służy funkcja roots, np. dla wielomianu: y = x 3 3x 2 20x + 10 należy wpisać: y = [1-3 -20 10] z = roots(y) W wyniku otrzymamy informację: z = 6.0380-3.5099 0.4719 czyli wartości pierwiastków. Sprawdźmy na wykresie czy są to poprawne wartości. W tym celu należy narysować ten wielomian (patrz punkt 1.2) i ustawić zakres osi na: -4 x 7, -60 y 40 za pomocą funkcji axis: axis([-4 7-60 40]) pierwsze dwie liczby oznaczają zakres osi x, a następne dwie zakres osi y. Dla wygody można włączyć siatkę na wykresie: grid

Po wpisaniu w linii poleceń ginput (kursor przybierze postać krzyża) należy wskazać myszą po kolei miejsca zerowe (wszystkie trzy) na wykresie i nacisnąć Enter: W wyniku otrzymamy informację podobną do poniższej (zależy od dokładności trafienia w punkty): ans = -3.5311 0.0877 0.4482-0.2047 6.0495 0.0877 Pierwsza kolumna oznacza współrzędne x a druga współrzędne y wskazanych punktów. Sprawdź czy są zbliżone do wyników funkcji roots. 1.4. Obliczanie współczynników wielomianu na podstawie miejsc zerowych Z drugiej strony, można znaleźć współczynniki wielomianu na podstawie miejsc zerowych za pomocą funkcji poly: y1 = poly(z) y1 = 1.0000-3.0000-20.0000 10.0000 1.5. Dopasowywanie wielomianu do punktów W jaki sposób znaleźć wielomian, który przechodzi przez zadane punkty? Załóżmy, że chcemy przeprowadzić wielomian przez punkty o współrzędnych: (1,1), (2,2), (3,1), (4,2) widoczne na poniższym rysunku. 3 2.5 2 1.5 1 0.5 0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 Można w tym celu wykorzystać funkcję polyfit o następującej składni: p=polyfit([1 2 3 4],[1 2 1 2],3); Funkcja ta przyjmuje 3 argumenty (dwa wektory i skalar): - wektor współrzędnych x-owych zadanych punktów - wektor współrzędnych y-owych zadanych punktów - stopień wielomianu Funkcja zwraca współczynniki znalezionego wielomianu (zobacz jakie). Następnie na podstawie współczynników trzeba obliczyć wartości wielomianu aby go narysować. W tym celu tworzymy wektor zakresu: oraz obliczamy wartości:

i rysujemy wielomian na tle punktów: plot([1 2 3 4],[1 2 1 2],'o',t,y, m ) współrzędne punktów punkty w kształcie kółek kolor wielomianu (magenta) wielomian w zakresie t Można też nadać wykresowi tytuł: i zakres: 2. M-pliki i m-funkcje 2.1. Skrypty Dotychczas wpisywaliśmy wszystkie komendy w linii poleceń. W przypadku prostych obliczeń to wystarczy, ale dla bardziej skomplikowanych programów (wielu linii kodu) nie jest to wygodne. Zamiast mozolnego wpisywania linijki po linijce kodu można utworzyć tzw. m-plik czyli skrypt (program) Matlaba. Wybierz z menu file new m-file. Otworzy się okno edytora. Wpisz tam wszystkie komendy z punktu 1.5: p=polyfit([1 2 3 4],[1 2 1 2],3); plot([1 2 3 4],[1 2 1 2],'o',t,y,'m') Ustaw ścieżkę na swój katalog roboczy, np. cd f:\praca. Zapisz powyższy program do pliku o nazwie np. wielomian.m (plik musi mieć koniecznie rozszerzenie m). Teraz możesz uruchomić ten program wpisując po prostu jego nazwę (bez rozszerzenia) w linii poleceń: wielomian 2.2. Funkcje Funkcje różnią się od skryptów tym, że mogą przyjmować argumenty, działają trochę szybciej i zmienne nie są widoczne w przestrzeni roboczej. Przerobimy teraz skrypt z punktu 2.1. na funkcję. Przede wszystkim funkcja musi posiadać słowo kluczowe function zapisane w pierwszej linii kodu, po którym następuje nazwa funkcji (taka sama jak nazwa pliku, w którym jest ta funkcja zapisana). Wybierz z menu file new m-file. Wpisz w oknie edytora zmodyfikowany skrypt: Zapisz powyższą funkcję do pliku o nazwie wielomian2.m. Jak widać trzeci argument funkcji polyfit (stopień wielomianu) nie jest jawnie podany tylko jest przekazywany poprzez argument funkcji wielomian2. Taką funkcję można wywoływać z linii poleceń z dowolnym argumentem, np.: wielomian2(3) function wielomian2(n) p=polyfit([1 2 3 4],[1 2 1 2],n); plot([1 2 3 4],[1 2 1 2],'o',t,y,'m')

lub wielomian2(5) 3. Zapis macierzowy czy pętla for? Poniższy kod pokazuje na przykładzie generowania sinusa, że wiele operacji można wykonać na różne sposoby. W szczególności operacje macierzowe zawsze można zastąpić pętlą for. Utwórz i wykonaj poniższy kod: dt=0.1 %okres próbkowania %macierzowo: t1=0:dt:2*pi; subplot(2,1,1) %umieszcza kilka wykresów w jednym oknie plot(t1,sin(t1)), title('sinus generowany macierzowo') %pętla: for i=0:2*pi/dt y(i+1)=sin(i*dt); t2(i+1)=i*dt; end subplot(2,1,2) plot(t2,y), title('sinus generowany w petli') Zwróć uwagę na składnię pętli for i argumenty funkcji plot. Matlab jest zoptymalizowany pod względem wykonywania operacji macierzowych, więc zapis macierzowy wykonuje się dużo szybciej. Pętle są z kolei bardziej uniwersalne nie wszystkie obliczenia można wykonać w zapisie macierzowym. Uwaga: znak % oznacza komentarz taki wiersz jest ignorowany przez program. 4. Wykresy funkcji algebraicznych Wykonaj kilka wykresów funkcji algebraicznych za pomocą funkcji fplot: y = x 3 fplot('x^3',[-10 10]) y = x 3 (x 1)(x 2) 2 fplot('x^3*(x-1)*(x-2)^2',[-0.5 2.5]) y = x e x + x e -x fplot('x*exp(x)+x*exp(-x)',[-10 10]) 5. Wykresy trójwymiarowe Jak wykonać wykres trójwymiarowy poniższej funkcji? (-x^2 y^2) z = x e w zakresie: -2 x 2-2 y 2 z krokiem 0.1 Najpierw należy przygotować tzw. siatkę o podanym zakresie za pomocą funkcji meshgrid: [x,y]=meshgrid(-2:0.1:2,-2:0.1:2); Następnie trzeba zapisać samą funkcję: z=x.*exp(-x.^2-y.^2); i użyć którejś z poniższych funkcji: mesh(x,y,z) meshc(x,y,z)

meshz(x,y,z) surf(x,y,z) surfl(x,y,z),shading interp,colormap(gray) Oglądnij wykresy i zobacz czym się różnią.