Metody i analiza danych

Podobne dokumenty
PODSTAWY INFORMATYKI 1 MATLAB CZ. 3

MATLAB ŚRODOWISKO MATLABA OPIS, PODSTAWY

dr Tomasz Ściężor Wydział Inżynierii Środowiska Politechnika Krakowska Podstawy programowania w języku MatLab

WPROWADZENIE ŚRODOWISKO OBLICZEŃ NUMERYCZNYCH MATLAB - SIMULINK

TWORZENIE WYKRESÓW (1)

Elementy Projektowania Inżynierskiego MATLAB Wprowadzenie.

Elementy okna MatLab-a

PODSTAWY PROGRAMOWANIA W JĘZYKU MATLAB

Grafika w Matlabie. Wykresy 2D

Operatory arytmetyczne

Podstawy MATLABA, cd.

Graficzna prezentacja wyników

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

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

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

1 Programowanie w matlabie - skrypty i funkcje

Podstawy programowania w języku MatLab

Wykresy i obiekty graficzne w Matlabie

Wizualizacja funkcji w programie MATLAB

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:

ŚRODOWISKO MATLAB cz.4 Tworzenie wykresów funkcji

zajęcia 2 Definiowanie wektorów:

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

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

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

MATLAB PROJEKTOWANIE GRAFICZNE. Maciej Ulman ETI 9.2. Funkcje graficzne moŝna podzielić na cztery podstawowe grupy:

Przetwarzanie sygnałów

Innymi ważnymi funkcjami wykorzystywanymi przy tworzeniu skryptów używających grafiki w MATLAB-ie są następujące:

Spis treści MATLAB CZ. 4 TWORZENIE WYKRESÓW FUNKCJI. Technologie Informacyjne. Instrukcja do pracowni specjalistycznej z przedmiotu

PRZYKŁADOWE SKRYPTY (PROGRAMY W MATLABIE Z ROZSZERZENIEM.m): 1) OBLICZANIE WYRAŻEŃ 1:

Matlab Składnia + podstawy programowania

Matlab Składnia + podstawy programowania

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

Pętle iteracyjne i decyzyjne

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

Wprowadzenie do Scilab: funkcje i wykresy

Matlab MATrix LABoratory Mathworks Inc.

Podstawowe operacje graficzne.

Graficzna prezentacja wyników w MATLABIE

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

Grafika dwu- i trójwymiarowa MATLABie

1 Wizualizacja danych - wykresy 2D

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

do MATLABa programowanie WYKŁAD Piotr Ciskowski

Laboratorium 3 Grafika 2D i 3D w Matlabie. Wprowadzenie do programowania

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

Matlab II skrypty, funkcje, wizualizacja danych. Piotr Wróbel Pok. B 4.22

Wstęp do Programowania Lista 1

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

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ć

Rozwiązywanie równań różniczkowych cząstkowych metodą elementów skończonych - wprowadzenie

PODSTAWY AUTOMATYKI. MATLAB - instrukcje i funkcje zewnętrzne. Grafika w Matlabie. Wprowadzenie do biblioteki Control System Toolbox.

Ćwiczenie 1. Wprowadzenie do programu Octave

Wprowadzenie do środowiska Matlab/GNU Octave

SCILAB. Wprowadzenie do Scilaba:

Ćwiczenie 3. Iteracja, proste metody obliczeniowe

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

AUTOCAD teoria i zadania z podstaw rysowania Rysowanie linii, prostej, półprostej, punktu, trasy, polilinii. Zadania geodezyjne.

Simba 3D LOGO. Cele zajęć: - Poznanie zasad i sposobów tworzenia procedur z parametrami. - Poznanie zasad wywoływania procedur z parametrami.

Laboratorium Cyfrowego Przetwarzania Obrazów

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

Wydział Inżynierii Mechanicznej i Mechatroniki. Mateusz Saków

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

Ćwiczenie 1. Wprowadzenie do programu Octave

Modelowanie rynków finansowych z wykorzystaniem pakietu R

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

Operacje logiczne i struktury sterujące.

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Gambit Centrum Oprogramowania i Szkoleń Sp. z o.o.

Metody i analiza danych

Spis rysunków Widok okien głównych Matlaba i Scilaba Edytory skryptów w Matlabie i Scilabie... 7

Pętla for. Matematyka dla ciekawych świata -19- Scilab. for i=1:10... end. for k=4:-1:1... end. k=3 k=4. k=1. k=2

PODSTAWY TWORZENIA WYKRESÓW ORAZ HANDLE GRAPHICS

PODSTAWY AUTOMATYKI. MATLAB - instrukcje i funkcje zewnętrzne. Grafika w Matlabie. Wprowadzenie do biblioteki Control System Toolbox.

Program na zaliczenie: Odejmowanie widm

Podstawy Automatyki ćwiczenia Cz.1. Środowisko Matlab

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

Laboratorium 3. Parametry, okna dialogowe, pętle, pętle warunkowe. Jakub Słowiński. 27 lutego Jakub Słowiński (IMMT PWr) 27 lutego / 9

Blockly Kodowanie pomoc.

1. Wybierz polecenie rysowania linii, np. poprzez kliknięcie ikony W wierszu poleceń pojawi się pytanie o punkt początkowy rysowanej linii:

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Metody numeryczne. Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski

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

Podstawy Programowania C++

Metody numeryczne. Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski

Pascal - grafika. Uruchomienie trybu graficznego. Moduł graph. Domyślny tryb graficzny

Algorytmika i programowanie

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

Tytuł: GRAPHER Podręcznik użytkownika ISBN: Autor: Zbigniew Galon Rok wydania: 2014 Stron: 500 Wydawca: Gambit COiS Sp. z o.o.

SCENARIUSZ ZAJĘĆ KOŁA NAUKOWEGO z MATEMATYKI prowadzonego w ramach projektu Uczeń OnLine

Matlab III Instrukcje, interpolacja, dopasowanie krzywych,

Opis implementacji: Poznanie zasad tworzenia programów komputerowych za pomocą instrukcji języka programowania.

Multimedia i interfejsy. Ćwiczenie 5 HTML5

Zadanie: Napisać program, który odgadnie liczbę naturalną z przedziału [1, 50] wylosowaną przez komputer. Można zastosować różne algorytmy.

Grażyna Koba. Grafika komputerowa. materiały dodatkowe do podręcznika. Informatyka dla gimnazjum

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

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

Przykład 1 -->s="hello World!" s = Hello World! -->disp(s) Hello World!

4. Rysowanie krzywych

Transkrypt:

2015/2016 Metody i analiza danych Funkcje, pętle i grafika Laboratorium komputerowe 3 Anna Kiełbus Zakres tematyczny 1. Funkcje i skrypty Pętle i instrukcje sterujące 2. Grafika dwuwymiarowa 3. Grafika trójwymiarowa 4. Zadanie.

1.Funkcje i skrypty Ćwiczenie 1 Napisz skrypt (otwierając z menu File z opcji New plik M-file), który kreśli wykres wybranej przez użytkownika funkcji jednej zmiennej w przedziale < 0,4π> % skrypt rysuje wykres wybranej funkcji x=[0:0.1:4*pi]; wzor=input( Podaj wzór funkcji jednej zmiennej f(x):, s ) y=eval(wzor); plot(x,y); % kreślenie wykresu funkcji y=f(x) Zapisz go pod nazwą wykres.m, a następnie uruchom wpisując w oknie komend jego nazwę:» wykres WSKAZÓWKA: Podaj na przykład funkcję: sin(x)+2*cos(2*x) a) operatory logiczne w języku MATLAB: = = równe ~ = różne < mniejsze > większe < = mniejsze równe > = większe równe & i lub b) instrukcje sterujące Pętla FOR ( dla ): for zmienna_iterowana = macierz_wartości ciąg_instrukcji end Działanie pętli polega na wykonaniu ciągu_instrukcji dla kolejnych wartości zmiennej_iterowanej. Wartościami tymi są kolejne wektory kolumnowe pobrane z macierzy_wartości (jeżeli jest to wektor, to kolejno zostaną wykonane instrukcje dla danych elementów tego wektora). Ćwiczenie 2 Napisz skrypt, który generuje wektor A o wymiarze 1x5, którego elementy spełniają zależność: = 1+ 1

% Próba realizacji pętli FOR for i=1:5 A(i)=sqrt(1+i); % pierwiastek kwadratowy end A Zapisz go w pliku petlafor.m i uruchom. Rozbuduj powyższy skrypt, aby generował macierz A o wymiarze 10x5, którego elementy spełniają zależność: = 1+ % Próba realizacji pętli FOR for i=1:10 for j=1:5 A(i,j)=sqrt(1+i/j); % pierwiastek kwadratowy end end A Pętla WHILE ( dopóki ): while wyrażenie_warunkowe ciąg_instrukcji end Działanie pętli polega na wykonaniu ciągu_instrukcji dopóki wyrażenie_warunkowe jest spełnione. Ćwiczenie 3 % Próba realizacji pętli WHILE i=0; while i<100 i=i+1 end Zapisz skrypt w pliku petlawhile.m i uruchom go. Instrukcja warunkowa IF ( jeżeli ): if wyrażenie_warunkowe1 ciąg_instrukcji1 elseif wyrażenie_warunkowe2 ciąg_instrukcji2 else ciąg_instrukcji3 end Działanie instrukcji jest następujące: Jeżeli wyrażenie_warunkowe1 jest spełnione, to wykonywany jest ciąg_instrukcji1, w przeciwnym razie sprawdzane jest 2

wyrażenie_warunkowe2, jeżeli jest ono spełnione wykonywany jest ciąg_instrukcji2, jeżeli nie, wykonywany jest ciąg_instrukcji3. Instrukcję warunkową IF można rozbudować dla większej liczby wyrażeń_warunkowych i odpowiadających im ciągów_instrukcji. 2.Grafika dwuwymiarowa Najczęściej spotykanym sposobem graficznej prezentacji danych w języku MATLAB jest wykres funkcji jednej zmiennej. Służy do tego funkcja plot(x,y), gdzie y=f(x); Okno graficzne można wyczyścić wywołując funkcję clf; Zamknięcie okna graficznego odbywa się poprzez wywołanie funkcji close; Dodatkowe okna można otworzyć przy pomocy funkcji figure; Otworzyć jak i zamknąć można dowolne okno podając jego numer jako argument; W celu uzyskania kilku wykresów w jednym oknie należy wykorzystać funkcję subplot(m,n,p), gdzie: m - liczba wykresów w pionie; n - liczba wykresów w poziomie; p - kolejny numer wykresu. Skala wykresu dobierana jest automatycznie. Chcąc ją zmienić, trzeba wywołać funkcję axis([xmin xmax ymin ymax]) i jako argument podać wektor określający nowe parametry osi. Wykres można opisać podając nazwy zmiennych, tytuł, itp. title( tekst ) - tytuł rysunku; xlabel( tekst ) - opis osi x; ylabel( tekst ) - opis osi y; text(x,y, tekst ) - umieszcza tekst w dowolnym punkcie o współrzędnych (x,y); grid - włącza lub wyłącza siatkę; Ćwiczenie 4 Narysuj wykres dla funkcji y=sin(x.^2), gdzie x zawarte jest w przedziale<0,5>, z krokiem 0.05. Oś x oznacz jako czas, oś y oznacz jako amplituda. >> x = 0:0.05:5; >> y = sin(x.^2); >> plot(x,y); >> xlabel('czas') >> ylabel('amplituda') 3

Ćwiczenie 5 Napisz skrypt kreślący przykładowy wykres wraz z opisem. Zapisz go pod nazwą wykresopis.m i uruchom. x=[0:pi/20:2*pi]; y=sin(x); plot(x,y) title( Wykres funkcji sin(x) ) xlabel( x ) ylabel( f(x) ) text(2.5,0.7, f(x)=sin(x) ) grid 4

Ćwiczenie 6 Narysuj wykres schodkowy dla funkcji sin(x). 5

>> x = 0:0.25:10; >> stairs(x,sin(x)); a) Rysowanie Istnieją funkcje pozwalające na tworzenie dowolnych rysunków z linii i wielokątów. line(x,y) - rysuje linię łamaną łącząc wierzchołki punktów wyznaczonych przez elementy wektorów x i y; fill(x,y, c ) - rysuje wielokąt o wierzchołkach w punktach wyznaczonych przez elementy wektorów x i y wypełniony kolorem określonym przez argument c według poniższego opisu kolorów: y - żółty m - fioletowy c - turkusowy r - czerwony g - zielony b - niebieski w - biały k - czarny Ćwiczenie 7 Narysuj trójkąt o wierzchołkach w punktach (0,1), (3,4), (4,2) używając funkcji line oraz fill z wypełnieniem w kolorze czerwonym. 6

>> line([0 3 4 0],[1 4 2 1]) >> fill([0 3 4],[1 4 2],'r') 3.Grafika trójwymiarowa Większość funkcji języka MATLAB generujących rysunki trójwymiarowe służy do kreślenia powierzchni. W praktyce definiując powierzchnię trzeba się ograniczyć do skończonego zbioru punktów należących do obszaru. [x,y]=meshgrid(x,y) - tworzy macierze x i y opisujące położenie węzłów prostokątnej siatki pobierając wartości z wektorów X i Y. mesh(x,y,z) - rysuje siatkę powierzchni opisanej przez macierze x, y i z. surf(x,y,z) - rysuje kolorową powierzchnię opisaną przez macierze x, y i z. surfl(x,y,z) - rysuje kolorową powierzchnię opisaną przez macierze x, y i z uwzględniając na niej odbicie światła. plot3(x,y,z) - rysuje krzywą w przestrzeni opisaną przez wektory x, y i z. 7

Ćwiczenie 8 Napisz skrypt kreślący siatkę wartości funkcji,=sin sin exp ^2w przedziale <-π,π>. clf [x,y]=meshgrid(-pi:0.2:pi,-pi:0.2:pi) z=sin(x).*sin(y).*exp(-x.^2-y.^2) mesh(x,y,z) Zapisz go pod nazwą wykres3d.m i uruchom. Rozbuduj powyższy skrypt o rysowanie kolorowej powierzchni poprzez dodanie na końcu polecenia: surf(x,y,z) lub: surfl(x,y,z) 8

Ćwiczenie 9 Napisz skrypt kreślący krzywą w przestrzeni trójwymiarowej. % Skrypt kreśli krzywą w przestrzeni trójwymiarowej x=[0:0.1:10]; 9

y=2*cos(x); z=sin(2*y); plot3(x,y,z) grid title('wykres krzywej w przestrzeni trójwymiarowej') xlabel('x') ylabel('y') zlabel('z') Zapisz go pod nazwą krzywa3d.m i uruchom. Wykreślone powierzchnie można poddać cieniowaniu używając funkcji: shading flat shading interp shading faceted Ćwiczenie 10 Napisz skrypt: % Skrypt rysuje powierzchnie poddane cieniowaniu clf [x,y]=meshgrid(-3.5:0.7:3.5); z=sin(x).*sin(y)+4*exp(-(x-0.5).^2-(y-0.5).^2); %Wykres w trybie flat subplot(1,3,1) surf(x,y,z) shading flat title( flat ) %Wykres w trybie interp 10

subplot(1,3,2) surf(x,y,z) shading interp title( interp ) %Wykres w trybie faceted subplot(1,3,3) surf(x,y,z) shading faceted title('faceted') Zapisz go pod nazwą powierzchnie.m i uruchom. Inne elementy rysunków, takie jak: opisy, etykiety, linie pomocnicze wykonuje się podobnie, jak w grafice dwuwymiarowej. Dodatkowo jednak należy zdefiniować elementy dotyczące trzeciego wymiaru, np.: text(x,y,z, tekst ); 5.Zadanie Zadanie 1.Przykład programowania w języku MATLAB %Zad 1 clear all close all clc global a k c d a=1; k=2; c=3; 11

d=4; wart_posz={'a','k','c','d'}; tytul='dane poszukiwane'; ilosc_lini=1; wartosc={'1','2','3','4'}; rezultat=inputdlg(wart_posz,tytul,ilosc_lini,wartosc); a=eval(rezultat{1}) k=eval(rezultat{2}) c=eval(rezultat{3}) d=eval(rezultat{4}) x=[0:10]; y1=sin(x)+a; y2=cos(x)+c; y3=tan(x)+d; y4=exp(x)+k; disp('rysowanie charakterystyk') disp('naciśnij Enter aby narysować charakterystykę y1') 12

pause figure(1) plot(x,y1) disp('naciśnij Enter aby narysować charakterystykę y2') 13

pause figure(2) plot(x,y2) disp('naciśnij Enter aby narysować charakterystykę y3') 14

pause figure(3) plot(x,y3) disp('naciśnij Enter aby narysować charakterystykę y4') pause figure(4) plot(x,y4) disp('naciśnij Enter aby kontynuować') pause close all 15

m1=menu('wybierz 1 charakterystykę do wyświetlenia:','y1','y2','y3','y4'); m2=menu('wybierz 2 charakterystykę do wyświetlenia:','y1','y2','y3','y4'); plot(x,wyswyk(m1),'r',x,wyswyk(m2),'b') legend('wykres 1','Wykres 2') 16