Wykład 3 Dr Aneta Polewko-Klim

Slides:



Advertisements
Podobne prezentacje
Funkcje w PHP ABK.
Advertisements

Programowanie obiektowe
PROGRAMOWANIE STRUKTURALNE
Wspólne skoroszytów Wspólne użytkowanie skoroszytów Arkusze i skoroszyty Tworzenie nowego skoroszytu Obliczenia w skoroszytach Przeglądanie wzorów w skoroszytach.
MS Access 2003 Kwerendy Paweł Górczyński.
MS Access 2000 Tworzenie tabel Piotr Górczyński 2005.
Support.ebsco.com EBSCOhost Wyszukiwanie złożone (z wieloma frazami) Szkolenie.
Tworzenie prezentacji w programie PowerPoint
Czytanie numerów puktów i ich współrzędnych z mapy.
Programowanie w języku Visual Basic
„Zasady formatowania plików w formacie Microsoft Word”
Algorytmy.
WINDOWS 95.
Malowanie na ekranie- Paint (Paintbrush).
Opracowała: Iwona Kowalik
Podstawy programowania
ARKUSZ KALKULACYJNY JUŻ PROŚCIEJ SIĘ NIE DA Wersja OFFICE 2010
Menu Tabela program Microsoft Word
Podstawy programowania. Język C i C++– podstawy Temat: 1
Struktura programu w Turbo Pascalu.
Podstawy systemu operacyjnego
Poznaj bliżej program Microsoft Office Word 2007
Tworzenie nowych kont lokalnych i domenowych, oraz zarządzanie nimi
Wskazówki dotyczące pisania tekstów
Programowanie w języku Matlab
Temat: Operacje na plikach i folderach str.
ANNA BANIEWSKA SYLWIA FILUŚ
Opracowała Urszula Guzikowska
Wykonywanie kopii bezpieczeństwa danych
Programowanie obiektowe – zastosowanie języka Java SE
MAKRA 1.
Formatowanie tabel. Formatowanie warunkowe. Wstawianie funkcji.
Urzekające kwiatki w gimpie Samouczek
Przeglądanie zasobów komputera - uruchamianie programów
Przekazywanie parametrów do funkcji oraz zmienne globalne i lokalne
Platforma analizy wizualnej - VisNow Szkolenie Platforma analizy wizualnej - VisNow Szkolenie 15 maja 2013, Sesja sprawozdawcza KDM Krzysztof S. Nowiński.
Tworzenie komiksu MS PowerPoint Beata Sanakiewicz.
Partner Handlowy Konfiguracja sieci TCP/IP - Windows 2000, Xp, 2003.
Formatowanie tekstu w Microsoft Word
Projektowanie stron WWW
Program Logomocja.
Excel Wykresy – różne typy, wykresy funkcji.
PULPIT WINDOWS.
Visual Basic w Excelu - podstawy
prezentacja multimedialna
PWSW Mechatronika Wykład 7 Matlab cd.
Wzorce slajdów, animacje, różne orientacje slajdów
1. Logowanie z usługą Active Directory. a) logowanie do domeny Windows 2003 Server odbywa się znacznie szybciej niż w poprzednich wersjach. b) nie ma odwołania.
Beata Sanakiewicz. Spis treści  Pierwsze spotkanie Pierwsze spotkanie  Ustawienia witryny Ustawienia witryny  Tło strony Tło strony  Teksty na stronie.
SAMOUCZEK PRZYKŁAD ZASTOSOWANIA PROGRAMU DO MODELOWANIA TARCZ.
PRZYKŁAD OBLICZENIOWY PRĘT
Wykład 4 Dr Aneta Polewko-Klim Dr Aneta Polewko-Klim
Operacje na plikach i folderach
Wykład 9 Programowanie w Windows 1.Programowanie zdarzeniowe 2.Zdarzenia obsługiwane przez Windows 3.Aplikacja obsługująca klawisz myszki 4.AppWizard PO9-1.
Seminarium Dyplomowe: Metodyka i Techniki Programowania Autor: Bartłomiej Fornal.
Pakiety numeryczne Graphical User Interface Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania.
Instrukcja obsługi aplikacji „Wizualizacja produktów CRH Klinkier”
Tworzenie wykresów część I
Stworzenie projektu w cubemx i kontunuacja w sw4stm32
Pakiety numeryczne Skrypty, funkcje Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania.
Podstawowe zadania w programie Excel 2010 Klasa 2 TOR.
Dominik Benduski Michał Mandecki Podstawy Visual Basic w Excelu.
Do czego służy arkusz kalkulacyjny, jego budowa
Wykład 4 Dr Aneta Polewko-Klim Dr Aneta Polewko-Klim
Wykład 4 Dr Aneta Polewko-Klim
Przykładowe zadanie egzaminacyjne.
Wprowadzenie do edytorów tekstu.
Programowanie obiektowe – zastosowanie języka Java SE
Grupy danych.
Zapis prezentacji:

Wykład 3 Dr Aneta Polewko-Klim https://play.google.com

28. Funkcje. Występują dwa rodzaje funkcji: a) funkcje wbudowane jak np. sqrt b) funkcje przechowywane w m-plikach (właśnie te m-pliki funkcyjne możemy tworzyć samodzielnie. Jak to zrobić? - pierwszy wiersz m-pliku musi zawierać definicję nowej funkcji: słowo kluczowe function - nazwę funkcji – musi być taka sama jak nazwa pliku (bez rozszerzenia) listę argumentów wyjściowych

Definicja funkcji function [wart_fun1, wart_fun2, ...]=nazwa_funkcji(parametr1, parametr2, ...) % ewentualny opis funkcji w formie komentarza wart_fun1=wynik1; wart_fun2=wynik2; ... end function [y]=radst(x) %przelicza radiany na stopnie x – ilość radianów y=(x.*180)/pi; Ważne !!!: zmienne utworzone podczas działania funkcji są usuwane z chwilą zakończenia wykonywania funkcji i nie są widoczne poza nią, podobnie zmienne utworzone poza funkcją nie są widoczne w jej wnętrzu. Funkcja operuje więc na zmiennych lokalnych. Aby zmienna z przestrzeni roboczej Matlaba była widoczna w ciele funkcji należy zadeklarować ją jako globalną i deklarację tą powtórzyć w ciele funkcji global A B C

Szczegóły 1. Jeśli funkcja posiada kilka argumentów wyjściowych, oddzielamy je przecinkiem, a wszystkie umieszczamy w nawiasach kwadratowych np: function [a, b, c] = normest(w, n, p, r) 2. Jeśli funkcja ma tylko jeden argument wyjściowy, nawiasy możemy pominąć: function r = roots(c) 3. Jeżeli nie zwraca argumentów wyjściowych, może być zapisana w postaci: function nazwa_funkcji(arg_wej) 4. Nazwy funkcji muszą się rozpoczynać literą, a pozostała część może być kombinacją liter, cyfr i znaku podkreślenia. Jeżeli nazwa pliku różni się od nazwy funkcji, to zwycięża nazwa pliku, dlatego powinno się stosować identyczne nazwy funkcji i pliku. 5. Kolejne linie po słowie function zaczynające się od % stanowią help

Funkcja - definicja W przypadku gdy mamy małą ilość instrukcji i gdy chcemy umieścić funkcję w skrypcie możemy wykorzystać: nazwa funkcji=@(zmienna_1, …, zmienna_n) (instrukcja)

Przydatne funkcje - funkcje Matlab przydatne podczas budowania funkcji użytkownika. - nargin - ustala liczbę wywołanych argumentów wejściowych - nargout - ustala liczbę wywołanych argumentów wyjściowych

Przykład Napisać funkcję, która wywołana z jednym parametrem oblicza a^2 , natomiast przy dwóch argumentach a i b obliczy a^2+b^2. function W=licze(a,b) if nargin<1 error('Mała liczba argumentów') elseif nargin==1 W=a.^2; elseif nargin==2 W=a.^2+b.^2; else error('Za dużo argumentów') end

29. Funkcje ze zmienną liczbą parametrów wejściowych i wyjściowych - definicja function varargout =nazwa funkcji (varargin) function [ ] =nazwa funkcji (varargin) function varargout =nazwa funkcji ()

Test kompetencji: przedstaw możliwe rezultaty wykonania programu function []=ryswykres(varargin) x=1:10 switch nargin case 1 plot(x,varargin{1}.*x) case 2 plot(x,varargin{2}.*x.^2+varargin{1}.*x) otherwise error('Brak mozliwości') end

Funkcje ze zmienną liczbą parametrów wejściowych i wyjściowych Konwertowanie obrazu RGB na obraz binarny www.mathworks.com

30. Funkcje ze zmienną liczbą parametrów wejściowych i wyjściowych http://www.youtube.com/watch?v=Od-cgGRlvi4

31. Użyteczne funkcje - obsługa myszki. Funkcja Opis [x,y]=ginput(n) [x,y,przycisk]=ginput(n) [x,y]=ginput [x,y,przycisk]=ginput Funkcja pobiera współrzędne n punktów wskazanych przez użytkownika kursorem i zaznaczonych przez wciśnięcie klawisza lub przycisku myszki. Zwracane są współrzędne x i y punktu oraz kod klawisza lub przycisku myszki. Działanie funkcji kończymy klawiszem Enter. gtext(napis) Funkcja pozwala umieścić podany napis w wybranym przez użytkownika miejscu.

32. Dla zaawansowanych: pętle równoległe parfor, praca na kilku procesorach matlabpool Funkcja włączenia matlabpool open ilość procesorów np.matlabpool open 8

Dla zaawansowanych: pętle równoległe parfor, praca na kilku rdzeniach matlabpool http://www.youtube.com/watch?v=TXMhpKLi9hA

33. Kompilacja. Praktyczny program to taki który piszesz z wizją końca:

Kompilacja 1. Kompilator Matlab zamienia funkcję zapisaną w pliku typu M-file na wersję wykonywalną, bibliotekę MEX, plik lub kod programu w C czy C++. 2. Rodzaj generowanych plików: kod w języku C do budowania plików typu MEX, kod w języku C lub C++, biblioteki dynamiczne i statyczne oraz wykonywalną aplikację 3. Należy posiadać zainstalowany toolbox compiler. 4. Plik wykonywalny exe będzie działać na komputerze na którym jest zainstalowana taka sama wersja matlaba.

Uwagi dotyczące budowania programu 1. Nie można używać skryptów; 2. Program musi bazować/wykorzystywać wyłącznie funkcje; 3. Gui wykonane za pomocą guide; 4. Wszystkie m-pliki z funkcjami należy podać przy kompilacji; 5. Wymagane aby zmienne w funkcjach były globalne. 6. Kompilacji nie podlegają funkcje korzystające z poleceń input , eval jeśli te działają na zmiennych z workspace oraz operujące na zmiennych globalnych

Funkcja do kompilacji mcc [-opcja] funkcja [funkcja2 .] [mex1 . mexN] [mlib1 . mlibN] funkcja - nazwa funkcji poddawana kompilacji, mex - nazwa pliku typu MEX mlib - nazwa biblioteki opcje (wybrane): -c generuje kod C -p generuje kod C++ oraz działającą aplikację -x generuje plik typu MEX -m generuje wykonywalną aplikacją Dzięki wykorzystaniu kompilatora uzyskujemy przyspieszenie pracy aplikacji, ukrycie kodu przed innymi użytkownikami oraz możliwość budowy niezależnych aplikacji.

Przykłady opcji >> mcc -m funkcja % generuje wykonywalną aplikację na podstawie pliku funkcja.m >> mcc -m funkcja1 funkcja2 % generuje wykonywalne aplikacje na podstawie plików funkcja1.m oraz funkcja2.m >> mcc -T compile:exe funkcja % generuje wykonywalną aplikację Dzięki wykorzystaniu kompilatora uzyskujemy przyspieszenie pracy aplikacji, ukrycie kodu przed innymi użytkownikami oraz możliwość budowy niezależnych aplikacji.

Jeśli chcesz wiedzieć więcej zajrzyj na: http://www.mathworks.com/products/compiler/

34. GUI GUI (Graphical User Interface) system, który umożliwia użytkownikowi automatyczne wydawanie wielu poleceń (np. poprzez naciśnięcie określonego klawisza). Projektowanie GUI to pierwszym kroki do kreowania wolno stojących aplikacji. W Matlabie do projektowania GUI służy program GUIDE (Graphical User Interface Development Enviroment) – tworzymy interfejs dla użytkownika.

34. GUIDE - uruchomienie Wybieramy Wariant 1 Uruchamiamy wpisując w oknie „Command Window” komende >> guide 2. Wariant 2: z menu file Matlaba wybieramy opcję new GUI otworzy się okno graficznego projektowania obiektów GUI. Wybieramy

Menu obiektów używanych w GUI. - Push Button – przycisk (dzwonkowy) - Slider – suwak - Radio Button – wybór jednej z opcji w grupie - Checkbox - włącznik - Edit Text – tekst edytowalny (w trakcie działania GUI) - Static Text – tekst (nie zmieniany w trakcie działania GUI) - Popup Menu – lista rozwijana - Listbox - Toggle Button – przełącznik (posiada dwa stany: aktywny lub nie aktywny) - Axes – pole wykresu Panel – ramka Button Group - może sterować obiektami znajdującymi się w jego wnętrzu - ActiveX Control – inne funkcje. np. zegar Windows

Przykład – tworzymy wykres

UWAGA Każdy obiekt wprowadzony w GUIDE ma własnego „Property Inspector”, w którym można ustawić podstawowe informacje. W centrum (część zakratkowana) znajduje się obszar wyświetlany po uruchomienu aplikacji. Możliwości uruchomienia „Property Inspector”: 1. klikając dwukrotnie w dowolnym miejscu; 2. Kliknięcie prawym przyciskiem myszy i z rozwijanego menu wybranie opcji „Property Inspector” 3. Z menu „View” wybranie opcji „Property Inspector”

Najistotniejsze pola String wpisujemy „rysuj” dzięki temu po włączeniu GUI nasz przycisk będzie miał tą właśnie nazwę. Tag – wpisujemy „rysuj” w wygenerowanej funkcji pojawi się np. rysuj_Callback

Property inspector - wykresu. Opcję Units przestawiamy na centymetry, a następnie wielkość wykresu np. na 10x6 cm, pozycje x=1, y=3 Naciskamy „+” przy zakładce „Position” i wybieramy zmieniamy „width” na 15, a „height” na 10. (Zatwierdzamy przyciskiem „Enter”)

Start programu - 3 sposoby Wciskamy „ctrl+t” Z menu Tools->run Wciskamy zieloną strzałeczkę w prawym górnym rogu Czy chcemy zapisać zmiany? Bez zapisania zmian nie da się uruchomić GUI.

Po zapisaniu wygeneruje się nam automatycznie m-file, o tej samej nazwie co plik fig. Wspólnie tworzą one informacje dla Matlaba jak ma wyglądać GUI.

function rysuj_Callback(hObject, eventdata, handles) x1=0:0.2:6.2; y1=sin(x1); y2=cos(x1) plot(x1,y1,’r’,x1,y1,’rx’); plot(x1,y2,’b’,x1,y2,’bo’);

GUIDE - utrwalenie http://www.youtube.com/watch?v=D_hmws6dwgg