ROMAN SALAMON MATLAB PODSTAWY I ZASTOSOWANIA
|
|
- Maja Matysiak
- 9 lat temu
- Przeglądów:
Transkrypt
1 1 ROMAN SALAMON MATLAB PODSTAWY I ZASTOSOWANIA SKRYPT DLA STUDENTÓW I ROKU KIERUNKU ELEKTRONIKA I TELEKOMUNIKACJA POLITECHNIKI GDAŃSKIEJ DO PRZEDMIOTU TECHNIKA OBLICZENIOWA I SYMULACYJNA POLITECHNIKA GDAŃSKA WYDZIAŁ ELEKTRONIKI, TELEKOMUNIKACJI I INFORMATYKI KATEDRA ELEKTRONIKI MORSKIEJ GDAŃSK 2008
2 2 Copyright Roman Salamon 2008 Katedra Systemów Elektroniki Morskiej Politechniki Gdańskiej Skrypt objęty jest prawem autorskim. Prawa autorskiego nie narusza korzystanie z jego wersji elektronicznej oraz jednokrotny wydruk części lub całości skryptu do użytku prywatnego przez studentów Wydziału Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej. Pozostałe formy wykorzystania skryptu wymagają pisemnej zgody autora. Autor będzie zobowiązany za przekazanie uwag dotyczących treści skryptu i dostrzeżonych błędów na adres: roman.salamon@eti.pg.gda.pl
3 3 SPIS TREŚCI 1. WPROWADZENIE...5 CZĘŚĆ I. PODSTAWY UŻYTKOWANIA PROGRAMU MATLAB INFORMACJE WSTĘPNE PRZYGOTOWANIE PROGRAMU MATLAB DO PRACY CZĘSTO STOSOWANE POLECENIA PODSTAWOWY OBLICZEŃ NUMERYCZNYCH W PROGRAMIE MATLAB WARTOŚCI LICZBOWE Liczby rzeczywiste Liczby zespolone Zaokrąglenia liczb MACIERZE I WEKTORY Definiowanie macierzy i wektorów Podstawowe operacje macierzowe Macierze kwadratowe TABLICE Tablice numeryczne Łańcuchy FUNKCJE Funkcje standardowe Funkcje macierzowe Relacje i operacje logiczne Instrukcje warunkowe Definiowanie funkcji Pętle GRAFIKA GRAFIKA DWUWYMIAROWA Podstawowe funkcje graficzne Funkcje formatujące rysunek Tworzenie wielu rysunków Dobór parametrów rysunku bez użycia instrukcji graficznych GRAFIKA TRÓJWYMIAROWA Linie w przestrzeni trójwymiarowej Tworzenie obrazów funkcji dwóch zmiennych Dobór kolorów Ustawianie położenia układu współrzędnych Efekty oświetlania rysunków trójwymiarowych Inne metody formatowania rysunku Obrazy figur trójwymiarowych GRAFICZNY INTERFEJS UŻYTKOWNIKA Ogólna charakterystyka Projektowanie planszy GUI Podstawy programowania graficznego interfejsu użytkownika GUI Użycie przełącznika Toggle Button i okna edycyjnego Edit Text Użycie przełącznika Radio Button i okna edycyjnego Edit Text Użycie Popup Menu... 77
4 Użycie Listbox i Axes Zastosowanie suwaka Slider IMPORT I EKSPORT DANYCH WPROWADZENIE EKSPORT I IMPORT DANYCH W FORMACIE BINARNYM ZAPISYWANIE I CZYTANIE DANYCH W FORMACIE TEKSTOWYM EKSPORT I IMPORT PLIKÓW DŹWIĘKOWYCH CZĘŚĆ II. ZASTOSOWANIA PROGRAMU MATLAB METODY NUMERYCZNE W ZASTOSOWANIU DO FUNKCJI CIĄGŁYCH WIELOMIANY FUNKCJE WYMIERNE ZMIENNEJ ZESPOLONEJ MIEJSCA ZEROWE, MINIMA I MAKSIMA FUNKCJI CAŁKOWANIE NUMERYCZNE RÓWNANIA RÓŻNICZKOWE GENERACJA, ANALIZA I PRZETWARZANIE SYGNAŁÓW SYGNAŁY ANALOGOWE I DYSKRETNE GENERACJA SYGNAŁÓW IMPULSOWYCH DYSKRETNA REPREZENTACJA SYGNAŁÓW CIĄGŁYCH Sygnały deterministyczne Sygnały losowe DYSKRETNA TRANSFORMACJA FOURIERA Definicja i podstawowe własności Widmo dyskretne a widmo ciągłe Widma sygnałów o nieograniczonym czasie trwania FILTRACJA SYGNAŁÓW DYSKRETNYCH Filtracja w dziedzinie częstotliwości Filtracja w dziedzinie czasu SPLOT ANALIZA NUMERYCZNA OBWODÓW I UKŁADÓW ELEKTRYCZNYCH OBWODY PRĄDU STAŁEGO ANALIZA OBWODÓW RLC PRZY POBUDZENIU SINUSOIDALNYM Obwód RL Szeregowy obwód rezonansowy Sprzężone równoległe obwody rezonansowe ANALIZA OBWODÓW RLC PRZY DOWOLNYM POBUDZENIU Analiza numeryczna w dziedzinie częstotliwości Analiza numeryczna w dziedzinie czasu PROJEKTOWANIE FILTRÓW ANALOGOWYCH Podstawy teoretyczne Wybór rozwiązania konstrukcyjnego Wyznaczanie wartości elementów obwodów INDEKS INSTRUKCJI I FUNKCJI
5 5 1. WPROWADZENIE Program MATLAB, zwany również często środowiskiem MATLAB, przeznaczony jest do obliczeń inżynierskich i naukowych oraz do wizualizacji ich wyników. W środowisku MATLAB obowiązuje język, w którym komunikujemy się z programem polecając mu wykonywanie określonych zadań. Jest to język wysokiego poziomu, co w praktyce oznacza, że w formie prostej instrukcji można wyrazić polecenie wykonania bardzo złożonego zadania. Cechą charakterystyczną języka MATLAB jest to, że podstawową formą danych jest w nim macierz rzeczywista bądź zespolona. Dane i wyniki obliczeń są przechowywane w przestrzeni roboczej i istnieją w niej dopóki nie zostaną usunięte przez użytkownika, bądź przez zamknięcie programu. Zmienne nie są deklarowane. Środowisko MATLAB jest otwarte w tym sensie, że użytkownik ma dostęp do jego funkcji, poleceń i bibliotek oraz może tworzyć własne pliki i funkcje. Program daje także możliwość współpracy z innymi programami, np. Excel, C, Fortran. Program MATLAB może być instalowany na praktycznie dowolnym komputerze. Zmiana platformy sprzętowej nie wiąże się z utratą własnego oprogramowania. Oprócz podstawowego programu MATLAB istnieją tzw. Toolboxy, które są zawierają specjalistyczne oprogramowanie z kilkunastu dziedzin nauki i techniki. Podstawowy pakiet MATLAB można także uzupełnić interaktywnym programem SIMULINK, który służy do modelowania i symulacji systemów dynamicznych, a w tym systemów elektronicznych, telekomunikacyjnych i systemów automatyki. Niniejszy skrypt został pomyślany jako pomoc dydaktyczna do przedmiotu Technika Obliczeniowa i Symulacyjna, prowadzonego na Wydziale Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej dla studentów drugiego semestru kierunku Elektronika i Telekomunikacja. Składa się on z dwóch części; w pierwszej omówione są podstawy użytkowania programu MATLAB, zaś w drugiej praktyczne przykłady zastosowania programu w elektronice i telekomunikacji. Pisząc ten skrypt autor zakładał, że Czytelnik po raz pierwszy spotyka się z programem MATLAB oraz że Jego wiedza i umiejętności odpowiadają programowi pierwszego semestru studiów. Jedynie w drugiej części skryptu występują przykłady dotyczące treści przekazywanych na drugim lub wyższych latach studiów. Materiał zawarty w skrypcie wystarcza do wykonania projektu i ćwiczeń laboratoryjnych z przedmiotu Technika Obliczeniowa i Symulacyjna w zakresie związanym z użytkowaniem programu MATLAB. Dążąc do zmniejszenia objętości skryptu ograniczono przede wszystkim liczbę omówionych funkcji i instrukcji, rezygnując z rzadziej używanych i bardziej skomplikowanych. Dużą część praktycznych zadań można wykonać bez używania tych pominiętych funkcji i instrukcji, aczkolwiek ich stosowanie ułatwia niewątpliwie programowanie. Ponadto opis omawianych instrukcji i funkcji często nie jest kompletny. Pominięto z zasady te możliwości zawarte w instrukcjach i funkcjach, które znajdują względnie rzadko praktyczne zastosowanie. Funkcjonowanie prawie każdej instrukcji zilustrowano przykładem, co powinno ułatwić jej pełne zrozumienie, zapamiętanie i dalsze stosowanie we własnych programach. Autor wyraża nadzieję, że skrypt ułatwi opanowanie przedmiotu i zachęci do głębszego poznania programu MATLAB, a w przyszłości do jego stosowania w czasie studiów i pracy zawodowej.
6 CZĘŚĆ I. PODSTAWY UŻYTKOWANIA PROGRAMU MATLAB 6
7 7 2. INFORMACJE WSTĘPNE 2.1. Przygotowanie programu MATLAB do pracy Na pulpicie monitora znajduje się ikona programu MATLAB, której przyciśnięcie lewym klawiszem myszy powoduje uruchomienie programu. Pojawia się najpierw na krótką chwilę logo programu MATLAB, a następnie okno programu. Okno to może zawierać różne wewnętrzne okna, w zależności od wcześniejszego ustawienia przez poprzedniego użytkownika. W naszej pracy z programem MATLAB używać będziemy dwóch okien, a mianowicie okna podstawowego okna Command Window oraz okna Workspace. W celu uaktywnienia tych okien wybieramy na górnym pasku View i na rozwiniętej liście zaznaczamy wyżej wymienione nazwy okien. Pożądany widok oka programu MATLAB zawiera po lewej stronie okna Workspace, a po prawej stronie okno Command Window. Przeciągając myszą prawe obramowanie pionowe lewego okna można mu nadać pożądaną szerokość około 1/3 szerokości prawego okna. Okno Command Window wykorzystujemy do wprowadzania wszystkich instrukcji, komend, danych itp. W oknie Workspace pojawiają się natomiast sukcesywnie informacje o wszystkich stałych i zmiennych używanych w pisanym przez nas programie. W kolumnie Name widoczne są użyte symbole stałych i zmiennych, a obok ich wymiar. Obserwując to okno unikamy niezamierzonego używania tych samych symboli w odniesieniu do innych zmiennych. Użyteczna jest również informacja o wymiarach zmiennych, która pozwala unikać błędów związanych z niezachowaniem reguł matematycznych obowiązujących w programie MATLAB. Widok obu okien pokazano na rys Rys Widok okien programu MATLAB przygotowanego do pracy.
8 8 Program MATLAB umożliwia dobranie kroju i wysokości czcionek do upodobań użytkownika. W razie takiej potrzeby wybieramy w pasku okna MATLAB etykietę File, a po rozwinięciu menu etykietę Preferences. W widocznym menu wybieramy najpierw General. Pokazuje się wtedy oddzielne okno, w którym można wybrać krój czcionki i jej wysokość, a także kolory czcionek, którymi będą pisane charakterystyczne elementy programu. Należy wybierać takie style czcionek, które zawierają polskie litery, co jest ważne w zapisie komentarzy (np. Ariel lub SansSerif 1 ). W oknach Command Window i Editor/Debugger najlepiej ustawić Use desktop font. Pozostałe ustawienia mają mniejsze znaczenie i nie należy ich zmieniać bez wyraźnej potrzeby. Wykorzystując okno Command Window można wykonywać proste obliczenia i wprowadzań komendy. Okno to jest jednak mało użyteczne do pisania większych programów. Do tego celu służą specjalne skrypty. Otwieranie takiego skryptu odbywa się przez przyciśnięcie ikony z białą, pustą kartką, umieszczone w lewym skraju paska w oknie programu MAT- LAB. Widok okna przedstawia rys.2.2. Rys Okno do pisania programu Po przyciśnięciu tej ikony pojawia się nowe okno o nazwie Untitled. W oknie tym będziemy wpisywać nasz program. Program ten po nadaniu mu nazwy będzie przechowywany w katalogu Work. W celach porządkowych, każdy użytkownik powinien utworzyć własny fol- 1 Popularny styl Times New Roman ma trudną do odróżnienia literę l i cyfrę 1, co może być przyczyną błędów w programie.
9 9 der w katalogu Work i w tym folderze umieszczać swoje skryptu. W tym celu należy wykonać kolejno następujące czynności: w pasku okna Untitled wybrać File z menu File wybrać Save As pojawia się okno, w którym na górnym pasku wybieramy ikonę Utwórz nowy folder w oknie pojawia się ramka, w której wpisujemy nazwę użytkownika i wciskamy Enter przyciskamy ikonę nowego folderu i wpisujemy w dolnej ramce nazwę naszego programu, która nie zawiera polskich liter w oknie nazwanym dotąd Untitled pojawia się tytuł C:\MATLAB\work\nazwa użytkownika\nazwa skryptu.m Sprawdzamy, czy ścieżka dostępu do naszego skryptu jest prawidłowa i dokonujemy ewentualnych poprawek opisaną wyżej metodą. Nazwa skryptu ma nadane automatycznie rozszerzenie.m. Nazwy skryptów z takim rozszerzeniem są traktowane w programie MA- TLAB jako zbiory instrukcji przeznaczonych do wykonania. W otwartym oknie o podanej wyżej nazwie tworzymy nasz program. Pracę rozpoczynamy od wpisania nagłówka, którym powinna być (dla porządku) nazwa naszego skryptu. Wpisujemy ją następująco: nazwa (bez kropki). Każdy tekst zwarty między apostrofami napisany jest kolorem czerwonym i jest widoczny po uruchomieniu naszego programu w oknie Command Window. Następnie wpisujemy kolejne instrukcje według zasad podanych w dalszej części skryptu. Po zakończeniu każdego etapu pracy można postępować w dwojaki sposób. Jeżeli chcemy zapisać skrypt bez sprawdzania jego poprawności wówczas, po ciśnięciu File, wybieramy w menu polecenie Save lub wciskamy ikonę Save. Jeżeli chcemy jednocześnie sprawdzić działanie naszego programu, wówczas wciskamy na pasku etykietę Debug i w widocznym menu wybieramy komendę Save and Run. Analogiczny efekt daje wciśnięcie klawisza F5. Nasz program zostanie zapisany i jednocześnie uruchomiony. Skutki uruchomienia programu i jego działanie omówimy w dalszej części skryptu. Po zapisaniu programu można zakończyć jego użytkowanie przez zamknięcie jego okna lub kontynuować pracę nad programem. Usilnie zaleca się okresowe zapisywanie programu, w celu uniknięcia jego utraty w wyniku niewłaściwych działań lub zawieszenia się wykonywania programu MATLAB. Zapisany i zamknięty skrypt można otworzyć w celu dalszej pracy nad nim lub w celu uruchomianie zawartego w nim programu. Należy w tym celu na pasku okna programu MA- TLAB przycisnąć ikonę Open File i z wybrać z katalogu Work folder z nazwą użytkownika, a w nim nazwę skryptu. Inny sposób otwarcia skryptu polega na wpisaniu w oknie Command Window polecenia 2 : >> open <nazwa skryptu> Jeżeli, przykładowo, nasz skrypt ma nazwę wykres, to odpowiednia komanda ma następujący zapis: >> open wykres Polecenie jest wykonywane tylko wtedy, gdy w Current Directory wpisana jest właściwa ścieżka dostępu do naszego skryptu. Zwykle wpisany jest jedynie katalog Work i wtedy należy 2 Symbole < > oznaczają tu i w dalszym tekście miejsce, w którym programista wpisuje ciągi znaków, których znaczenie wpisano między symbolami.
10 10 uzupełnić ścieżkę wciskając sąsiednią ikonę Browse for Folder i wybierając z niej nazwę folderu użytkownika. Po wykonaniu czynności opisanych w powyższej instrukcji można przystąpić do pisania programu. Aby jednak nasz program funkcjonował zgodnie z naszymi intencjami, konieczne jest poznanie podstawowych zasad obowiązujących w programie MATLAB. Przedstawimy je w następnym rozdziale Często stosowane polecenia Obsługa programu MATLAB wymaga znajomości pewnych podstawowych poleceń. Podamy i omówimy niżej najważniejsze z nich. Część poleceń będzie szerzej opisana w dalszej części skryptu. Tutaj sygnalizujemy ich istnienie i znaczenie w celu uniknięcia możliwych pomyłek np. w związku z poleceniami występującymi w poprzednim podrozdziale Polecenia dotyczące plików i rysunków open <nazwa pliku> Poleceni otwiera plik lub rysunek o wpisanej nazwie, jeżeli właściwa ścieżka dostępu podana jest w okienku CurrentDirectory. Jeżeli ścieżka dostępu do poszukiwanego pliku jest niewłaściwa, to można ją zamienić w okienku Current Directory lub podać w poleceniu open: open <work\student\wykres.m> Jeżeli plik o nazwie wykres.m znajduje się w podkatalogu student, to zostanie otwarty. Dotyczy to również rysunków o nazwach z rozszerzeniem.fig. W analogiczny sposób można otwierać pliki o innych rozszerzeniach. W zależności od rodzaju rozszerzenia otwierane są zmienne, rysunki itp. i umieszczane w odpowiednich oknach. save <nazwa pliku> Polecenie zapisuje na dysku wszystkie zmienne występujące w przestrzeni roboczej (widoczne w oknie Workspace) na dysku w pliku o podanej nazwie i rozszerzeniu.mat (szczegóły w rozdziale Eksport i import danych). saveas(h, nazwa ) To polecenie zapisuje rysunek o uchwycie h w pliku o podanej nazwie. Polecenie używane jest programach dotyczących grafiki. dir <nazwa katalogu> W oknie Command Window pojawia się lista plików znajdujących się w podanym katalogu lub nazwy podkatalogów. Jeżeli potrzebny plik znajduje się w pewnym podkatalogu to należy podać ścieżkę dostępu, np. dir <work\student> Do znalezienie ścieżki dostępu do poszukiwanej funkcji lub pliku z rozszerzeniem.m służy polecenie lub which <nazwa funkcji> which <nazwa pliku.m>
11 11 Program zwraca ścieżkę dostępu do danej funkcji, którą można wykorzystać do jej otwarcia. Niestety, w wypadku plików umieszczonych w podkatalogach katalogu Work, trzeba podać ścieżkę dostępu w Current Directory. what Powyższe polecenie powoduje pojawienie się wszystkich plików znajdujących się w bieżącym katalogu, do którego ścieżka podana jest w Current Directory. Niepotrzebne pliki i obiekty graficzne usuwamy poleceniem delete <nazwa pliku> Usunąć można pliki, do których dostęp podany jest w Current Directory. close Powyższe polecenie zamyka okno otwartego rysunku. Jeżeli chcemy zamknąć wszystkie rysunku, to dajemy polecenie close all Polecenia dotyczące przestrzeni roboczej clear Polecenie to usuwa z przestrzeni roboczej wszystkie zmienne. Polecenie uzupełnione o: clear x,y,z,... usuwa wymienione zmienne clear global usuwa zmienne globalne clear functions usuwa funkcje clear all usuwa zmienne lokalne, globalne i funkcje. Listę bieżących zmiennych występujący w przestrzeni roboczej otrzymujemy pisząc who Pełną informację o tych zmiennych daje polecenie whos Przypominamy, że lista zmiennych znajduje się również w oknie Workspace.
12 12 3. PODSTAWOWY OBLICZEŃ NUMERYCZNYCH W PROGRAMIE MATLAB 3.1. Wartości liczbowe 3.1. Liczby rzeczywiste Program MATLAB wykonuje obliczenia na liczbach 64-bitowych, skąd wynika, że minimalna liczba dodatnia ma wartość , zaś maksymalna liczba ma wartość Przekroczenie w trakcie obliczeń maksymalnej wartości jest sygnalizowane jako Inf. Chociaż obliczenia wykonywane są z bardzo dużą dokładnością, to ich wyniki liczbowe pokazywane są w oknie Command Window za pomocą mniejszej liczby cyfr. I tak w podstawowym formacie short (domyślnym) liczby są zapisywane często przy użyciu pięciu cyfr i wykładnika potęgi 10. Oto charakterystyczne przykłady reprezentacji liczb w oknie Command Window. >> a=123 a = 123 >> a= a = >> a= a = e+003 Format ostatnio zapisanej liczba zawiera zaokrąglenie do pięciu cyfr znaczących wpisanej liczby oraz wykładnik potęgi 10. Liczba w tym zapisie jest równoważna: a= Należy podkreślić, że zaokrąglenie użyte jest wyłącznie przy prezentacji liczby w oknie Command Window, natomiast obliczenia, w których występuje ta liczba, są wykonywane z pełną dokładnością. Jeżeli krótki format liczby nie jest wystarczająco dokładny (co zdarza się bardzo rzad ko), to można zmienić go na długi: >> format long >> a= a = e+003 Podane wyżej instrukcje nadały zmiennej a określone wartości liczbowe. Wartości te są przechowywane w pamięci do czasu zamknięcia okna Command Window, lub usunięcia z pamięci wszystkich danych. Usuwamy je z pamięci komendą clear. Po wpisaniu tej komendy program reaguje następująco: >> clear >> a??? Undefined function or variable 'a'. Zauważmy, że po wpisaniu powyższych instrukcji, w oknie Workspace pojawia się litera a i obok jej wymiar 1x1. Wszystkie liczby mają taki wymiar, który oznacza w programie MATLAB macierz jednoelementową liczbę. Liczby mogą być zapisywane bezpośrednio w sposób pokazany wyżej, lub jako wynik operacji matematycznych. Oto kilka przykładów: >> a=1+2 a = 3
13 13 >> a=2*3 a = 6 >> a=2/3 a = >> a=2^3 a = 8 Liczby mogą być również wyrażone jako wartość funkcji: >> a=sin(2) a = >> a=log10(2) a = Zauważmy, że po wpisaniu wartości liczby, program MATLAB zwraca jej wartość w stosownym formacie. Bardzo często jest to niewygodne, zwłaszcza, gdy wyniki pośrednich obliczeń są liczne i nie interesują użytkownika. W celu uniknięcia tej niedogodności, instrukcję kończymy znakiem ;. Mamy wtedy: >> a=2^3; lecz wartość zmiennej a pozostaje w pamięci, co sprawdzamy pisząc >> a a = Liczby zespolone Program MATLAB wykonuje obliczenia na liczbach rzeczywistych i zespolonych. Liczby zespolone zapisujemy w następujący sposób: >> a=2+i*3 a = i Podane wyżej sposoby zapisu liczb rzeczywistych odnoszą się w całości do liczb zespolonych. I tak przykładowo mamy: >> a=sin(2)+i*sin(3) i Liczbą zespolona może być zapisana w formie wykładniczej. Wyżej podaną liczbę a można mianowicie zapisać jako: >> a=abs(a)*exp(i*angle(a)) a = i Funkcja abs(a) zwraca wartość bezwzględną liczby zespolonej a, zaś funkcja angle wartość jej argumentu w radianach. Funkcja exp jest funkcją wykładniczą o podstawie e. Do zagadnienia funkcji w programie MATLAB powrócimy w dalszej części skryptu. Tutaj podamy jeszcze trzy funkcje związane z liczbami zespolonymi. Są to: funkcja real, zwracająca część rzeczywistą liczby zespolonej i funkcja imag, wyznaczająca część urojoną takiej liczby. oraz conj, która zmienia liczbę na sprzężoną. >> real(a)
14 14 ans = >> imag(a) ans = >> conj(a) i W wypadku, kiedy próbujemy wykonać operację, której wynikiem nie jest określona liczba, program MATLAB daje ostrzeżenie lub sygnalizuje błąd. Przykładem jest dzielenie liczby przez zero: >> 1/0 Warning: Divide by zero. (Type "warning off MATLAB:divideByZero" to suppress this warning.) ans = Inf Wynikiem operacji jest nieskończoność zapisywana tu jako Inf. Inny przykład to dzielenie 0/0: >> 0/0 Warning: Divide by zero. (Type "warning off MATLAB:divideByZero" to suppress this warning.) ans = NaN Skrót NaN (od ang. Not a Number) oznacza, że wynik nie ma formy liczbowej. Problemów takich można uniknąć wykorzystując w instrukcjach liczbę oznaczoną jako eps. Jest to bardzo mała liczba o wartości równej przedziałowi kwantyzacji liczb obwiązującemu w obliczeniach. Zastosowanie tej liczby ilustruje przykład wyznaczania wartości funkcji sinx/x w punkcie x=0. W punkcie tym występuje dzielenie 0/0, lecz funkcja jest ciągła i ma wartość 1. Zapiszmy zatem >> x=0; >> sin(x)/x Warning: Divide by zero. (Type "warning off MATLAB:divideByZero" to suppress this warning.) ans = NaN >> x=0+eps; >> sin(x)/x ans = 1 W drugiej instrukcji do argumentu dodaliśmy eps, w wyniku czego otrzymaliśmy prawidłowy wynik. Wartość eps wynosi w tym wypadku >> eps ans = e Zaokrąglenia liczb Często w obliczeniach numerycznych pojawia się potrzeba zaokrąglenia wartości liczb do liczb całkowitych. Program MATLAB ma cztery funkcje, które dokonują zaokrągleń na cztery różne sposoby. I tak funkcja round zaokrągla liczbę do najbliższej liczby całkowitej: >> round(2.7) ans = 3
15 15 Funkcja floor zaokrągla liczbę do najbliższej liczby całkowitej, najbliższej minus nieskończoności. Funkcja ceil zaokrągla liczbę do najbliższej liczby całkowitej, najbliższej nieskończoności. >> floor(2.7) ans = 2 >> ceil (-2.7) ans = -2 Funkcja fix zaokrągla liczbę do najbliższej liczby całkowitej, najbliższej zeru. >> fix(2.7) ans = 2 Jakkolwiek wyniki zaokrąglenia przy użyciu różnych funkcji bywają jednakowe, to każda z nich może być przydatna. Każda z wymienionych funkcji może mieć argument zespolony, a wówczas sposób uśredniania odnosi się oddzielnie do części rzeczywistej i urojonej liczby. Przykładowo: >> floor(2.7-i*2.7) ans = i 3.2. Macierze i wektory Charakterystyczną cechą programu MATLAB jest traktowanie każdej zmiennej liczbowej jako macierzy lub wektora, który też jest szczególną formą macierzy. Zauważyliśmy to już, kiedy wymiar liczby zapisany został w oknie Workspace jako 1x1, czyli jako macierz jednoelementowa. Wynikają stąd w początkowym okresie posługiwania się programem pewne utrudnienia i ograniczenia, które związane są z rachunkiem macierzowym. MATLAB traktując każdą zamienną jako macierz akceptuje wyłącznie i konsekwentnie te operacje matematyczne, które odnoszą się do macierzy i spełniają odpowiednie kryteria. Omówimy te zagadnienia szczegółowo Definiowanie macierzy i wektorów Jak wiadomo, macierz składa się z elementów uszeregowanych w wierszach i kolumnach. Jeżeli chcemy wprowadzić do programu pewną macierz, to używamy do tego celu następującego zapisu: >> X=[ ; ; ] X = Zapisana w ten sposób macierz ma dwa wiersze i cztery kolumny, co znalazło odbicie w oknie Workspace, w kolumnie Space, jako 2x4. Zauważmy, że elementy macierzy oddzielone są spacjami, zaś wiersze średnikami. W ten sposób można definiować macierze o praktycznie dowolnej liczbie wierszy i kolumn. Elementami macierzy mogą być liczby rzeczywiste i zespolone.
16 16 Szczególnym rodzajem macierzy są wektory wierszowe i kolumnowe. Wektor wierszowy zapisujemy jako: >> x=[ ] x = zaś wektor kolumnowy jako: >> x=[1;2;3] x = Bardzo często zachodzi potrzeba zapisu wektora wierszowego, którego elementami są liczby tworzące ciąg rosnący lub malejący o stałej różnicy między sąsiednimi liczbami. Ciąg taki zapisujemy następująco: >> x=1:2:15 x = Jeżeli w zapisie pominiemy drugą liczbę to domyślnie przyjmowana jest jej wartość jako 1, a mianowicie: >> x=0:9 x = Ciąg malejący tworzy się następująco: >> x=2:-0.5:-3 x = Columns 1 through Columns 7 through Prostym zapisem można dokonać w macierzy zamiany wierzy na kolumny (utworzyć macierz transponowaną). W przypadku zamiany macierzy wierszowej na macierz kolumnową mamy przykładowo: >> x=(1:4)' x = Zapis w nawiasach daje macierz wierszową, zaś apostrof zamienia wiersz na kolumnę. W przypadku transpozycji macierzy mamy: >> X=[1 2 3; 4 5 6] X = >> Y=X Y =
17 17 Jeżeli elementami macierzy są liczby zespolone, to przy zamianie wierszy w kolumny (lub na odwrót) liczby zamieniają się na sprzężone: >> X=[1+i*2 2-i*3 3+i*4; 4-i*5 5+i*6 6-i*7] X = i i i i i i >> Y=X' Y = i i i i i i Jeżeli chcemy dokonać transpozycji macierzy bez zmiany znaków części urojonych, wówczas stosujemy zapis Y=X. (apostrof poprzedzamy kropką). Każdy element macierzy jest opisany przez podanie numeru jego wiersza i kolumny. Przykładowo, jeżeli chcemy zapisać wartość elementu macierzy Y zaznaczonej wyżej pogrubioną czcionką, wówczas piszemy: >> y=y(3,2) y = i gdyż zaznaczony element leży w trzecim wierszu i drugiej kolumnie. Wykorzystując tę zasadę możemy zmienić wartość określonego elementu macierzy. Jeżeli w macierzy Y w miejsce y chcemy wstawić np. 5, to piszemy: >> Y(3,2)=5; >> Y Y = i i i i i W napisanym programie często chcemy wprowadzać pewne zmiany w przed kolejnym jego uruchomieniem. Jeżeli zmiana taka polega na zmianie wartości liczbowej wówczas posługujemy się instrukcją input. Sposób jej wykorzystania ilustrują dwa przykłady. Jeżeli chamy wprowadzić lub zmienić wartość stałej a, wtedy piszemy: >> a=input('nowa wartość=') nowa wartość=2 a = 2 Jeżeli w programie wystąpi instrukcja zapisana w pierwszym wierszu, wówczas w oknie Command Window pojawi się ciąg znaków ujętych w apostrofy (tu nowa wartość= ). Program czeka, aż użytkownik wpisze potrzebną wartość stałej a. Po wpisaniu tej wartość program zwraca jej wartość. W analogiczny sposób można zmienić wartość dowolnego elementu macierzy. Jeżeli w zdefiniowanej wyżej macierzy Y chcemy zmienić wartość elementu w drugim wierszu i pierwszej kolumnie, to piszemy: >> Y(2,1)=input( Y(2,1)= ) >> Y(2,1)= 0 Y = i i i i
18 18 Program MATLAB zwraca wybrany wektor z macierzy, gdy użyjemy dwukropka. Weźmy jako przykład następującą macierz: A = Zaznaczony grubą czcionką wektor otrzymujemy dzięki następującemu zapisowi: >> a=a(:,3) a = Jak widać dwukropek oznacza tu wszystkie wiersze Jeżeli chcemy utworzyć wektor tylko z dwóch wierszy w znajdujących się w trzeciej kolumnie, to piszemy: >> a=a(2:3,3) a = 7 11 W powyższym zapisie dwukropek oznacza do. Dzięki podanemu niżej zapisowi tworzymy macierz z pożądanych wierzy i kolumn. >> B=A(2:3,1:3) B= Program MATLAB generuje kilka prostych i użytecznych macierzy, a mianowicie macierz zerową, jedynkową i jednostkową: >> A=zeros(3,5) A = >> A=ones(4,3) A = >> A=eye(3,4) A = Ostatnia z podanych macierzy jest szczególnie użyteczna jako macierz kwadratowa. Ponadto program MATLAB generuje macierze zawierające wartości losowe o rozkładzie jednostajnym i normalnym, bardzo użyteczne w obliczeniach inżynierskich. Macierz o rozkładzie jednostajnym zawiera liczby z przedziału <0,1>, a jej przykładowa postać jest następująca: >> A=rand(2,5)
19 19 A = Liczby zawarte w macierzy o rozkładzie normalnym mają wartość średnią zmierzającą do zera i odchylenie standardowe zmierzające do jedności. >> A=randn(2,5) A = Szczegóły dotyczące praktycznego wykorzystania tych macierzy podamy w dalszej części skryptu. Na zakończenie omawiania sposobów definiowania macierzy pokażemy jeszcze jedną użyteczną metodę. Polega ona na sklejaniu macierzy o tej samie liczbie wierszy lub kolumn. Metodę te pokazują następujące przykłady: >> A=zeros(3,4) A = >> B=ones(3,3) B = >> C=[A B A] C = Ze zdefiniowanych macierzy A i B utworzona została macierz C o liczbie wierszy równej liczbie wierszy macierzy A i B i zwiększonej liczbie kolumn. Jeżeli macierze mają jednakową liczbę kolumn, to można z nich utworzyć macierz o zwiększonej liczbie wierszy: >> C=[A(:,1:3);B;A(:,1:3)] C = W macierzy A zmniejszyliśmy liczbę kolumn do trzech stosując wcześniej podany zapis. Należy zwrócić uwagę, że macierze w instrukcji zostały rozdzielone średnikiem. Dogodnym narzędziem wprowadzania zmian istniejącej macierzy jest Array Editor. Jest to okno, w którym edytowana jest macierz i w którym można zmieniać wartości elementów macierzy, liczbę wierszy i kolumn oraz wpisywać w nie nowe wartości. Okno to otwiera instrukcja openvar( A )
20 20 Można je także otworzyć zaznaczając w oknie Workspace odpowiednią macierz (wektor) i przyciskając ikonę Open. Obok ikony Open na pasku okna Workspace znajduje się ikona Delete, której przyciśnięcie usuwa zaznaczoną macierz (wektor) Podstawowe operacje macierzowe Konsekwencją traktowania zmiennych w programie MATLAB jako macierzy jest akceptowanie tylko takich operacji na zmiennych, które są zgodne z zasadami rachunku macierzowego. Przypomnimy dlatego pokrótce podstawowe operacje na macierzach i zilustrujemy je prostymi przykładami. Zdefiniujemy najpierw dwie macierze, którymi będziemy się posługiwali w przykładach: >> A=[1 4-2; 3-5 6] A = >> B=[2 4-4; 6 7-3] B = Suma macierzy A i B jest równa: >> C=A+B C = Sumować można wyłącznie macierze posiadające jednakowy wymiar, czyli tę samą liczbę wierszy i kolumn. Sumowanie polega na następujących operacjach: C(m,n)=A(m,n)+B(m,n) dla m=1:m, n=1:n gdzie M jest liczbą wierszy macierzy A i B, a N liczbą kolumn tych macierzy. Jeżeli macierze mają różny wymiar, wtedy program MATLAB nie wykonuje źle zapisanej operacji i podaje tego przyczynę. Przykładowo zapiszemy: >> C=B(:,1:2) C = >> D=A+C??? Error using ==> + Matrix dimensions must agree. Program wykrył błąd w zapisie sumy i wskazał na jego przyczynę: Wymiary macierzy muszą być zgodne. Macierz C ma bowiem tylko dwie kolumny, zaś macierz A trzy. Odejmowanie macierzy B od macierzy A o tych samych wymiarach daje macierz C, o następujących elementach: >> C=A-B C = Mnożenie macierzy A(m,n) o wymiarach MxN przez macierz B(n,k) o wymiarach NxK daje macierz C(m,k) o następujących elementach:
21 21 C(m,k) N n1 A(m,n)B(n,k) dla m=1:m i k=1:k; Zdefiniowane wyżej macierze A i B nie mogą być mnożone, bo liczba kolumn macierzy A nie jest równa liczbie wierszy macierzy B. Rzeczywiści mamy: B. >> C=A*B??? Error using ==> * Inner matrix dimensions must agree. Możliwe jest natomiast wykonanie mnożenia macierzy A przez macierz transponowaną >> B' ans = >> C=A*B' C = Użyteczną operacją w obliczeniach jest mnożenie wektora kolumnowego przez wektor wierszowy. Mamy bowiem wtedy: N C(m,k) n 1 A(m, 1)B( 1,k) A(m, 1)B( 1,k) dla m=1:m i k=1:k; Każdy element macierzy C jest iloczynem odpowiedniego elementu wektora kolumnowego i wierszowego. Przykładowo: >> a=[1 2 3]' a = >> b=[ ] b = >> C=a*b C = Wykorzystując wektory jednostkowe można generować macierze o jednakowych wierszach lub kolumnach. Czwartą operację na macierzach, a mianowicie ich dzielenie omówimy w następnym punkcie poświęconym macierzom kwadratowym. Przypomnijmy, że na ogół operacja mnożenia macierzy nie jest przestawna, czyli A B B A, nawet jeżeli w obu wypadkach mnożenie jest wykonywalne. Ilustruje to następujący prosty przykład: >> A=[1 2; 4 5] A = >> B=[3 4; 6 5]
22 22 B = >> C=A*B C = >> D=B*A D = Jak widać, przestawienie kolejności macierzy daje różna wyniki, gdyż C D Macierze kwadratowe Największe znaczenie w obliczeniach inżynierskich mają macierze kwadratowe, czyli macierze o tej samej liczbie wierszy i kolumn. Z macierzy kwadratowej można utworzyć macierz odwrotną, która wykorzystuje się do m.in. do rozwiązywania układów równań liniowych. Pomijając procedurę wyznaczania macierzy odwrotnej, którą stosuje program MA- TLAB, przedstawimy jej podstawowe właściwości i zastosowania w rachunku macierzowym. Macierz odwrotną do macierzy A oznaczmy jako A -1, a wtedy związek między oby macierzami można zapisać jako: A A -1 =1 lub A -1 A=1 gdzie 1 oznacza macierz jednostkową. Jeżeli mamy równanie macierzowe: A x=b, gdzie x jest wektorem niewiadomych, a b wektorem danych, to mnożąc obustronnie powyższe równanie przez A -1 otrzymujemy: A -1 A x=a -1 b Wykorzystując podaną wyżej zależność między macierzą i macierzą do niej odwrotną mamy: 1 x=a -1 b, a stąd ostatecznie: x=a -1 b. Program MATLAB wyznacza macierz odwrotną do macierzy A, gdy zapiszemy następującą instrukcję: lub >> inv(a) >> A^-1 Sposób wykorzystania macierzy odwrotnej pokażemy na przykładzie rozwiązania podanego niżej układu czterech równań liniowych. 2x 4x 3x 2x x 4x 3x 2x x 8x 4x 3x x 2x 2x 5x Układ ten zapisany w formie macierzowej ma następującą postać:
23 x 2 x 2 x 5 x Poniżej przedstawiono program służący do rozwiązania tego układu równań. >> A=[ ; ; ; ]; >> b=[ ]'; >> x=inv(a)*b >> x1=x(1) x1 = >> x2=x(2) x2 = >> x3=x(3) x3 = >> x4=x(4) x4 = Należy zwrócić uwagę na apostrof przy zapisie wektora b, który zamienia wektor wierszowy na kolumnowy. W przedstawionym programie nie jest potrzebna użytkownikowi jawna postać macierzy odwrotnej. Podamy ją jednak dla porządku w celu ewentualnego sprawdzenia poprawności obliczeń. >> inv(a) ans = Instrukcja x=inv(a)*b jest równoważna lewostronnemu dzieleniu macierzy, które zapisuje się jako: >> x=a\b x = co jest łatwiejsze do zapamiętania. Prawostronne dzielnie macierzy definiowane jest jako: >> B/A=B*inv(A) przy czym B musi mieć taką samą liczbę kolumn, jaką liczbę wierzy ma macierz inv(a). Operacja ta jest rzadko stosowana w praktyce. W niektórych obliczeniach potrzeby jest wyznacznik macierzy. Dla podanej wyżej macierzy A, program MATLAB wyznacza go następująco: >> det(a) ans = 1450
24 Tablice Program MATLAB operuje nie tylko na macierzach, lecz również na tablicach (ang. arrays). Tablicą (dwuwymiarową) jest uporządkowany w wiersze i kolumny zbiór liczb lub znaków. W tym sensie macierz jest specyficzną tablicą numeryczną, której dotyczą operacje macierzowe. Specyficzną formą tablic zawierających znaki (ang. charakter arrays) są również łańcuchy (ang. strings). W skrypcie zajmiemy się wyłącznie tablicami numerycznymi i łańcuchami, które mają duże znaczenie z punktu widzenia obliczeń inżynierskich Tablice numeryczne Jedno i dwuwymiarowe tablice numeryczne definiowane są identycznie jak wektory i macierze. Różnice pojawiają się wtedy, gdy chcemy wykonać na nich określone operacje. Charakterystyczną cechą tablic jest to, że operacje na nich wykonywane są na ich elementach metodą element po elemencie. Domyślnie każda tablica numeryczna traktowania jest w programie MATLAB jako macierz. Jeżeli chcemy wykonać na niej operacje odnoszące się do tablic, musimy to wyróżnić specjalnym operatorem. Potrzeba taka nie zachodzi tylko w przypadku dodawania i odejmowania, gdyż operacje te są jednakowe dla tablic i macierzy. Omówimy teraz pokrótce podstawowe operacje na tablicach. Mnożenie tablic A i B zapisujemy jako: >> C=A.*B Znak mnożenia został poprzedzony kropką, co sygnalizuje, że A i B są tablicami i mnożenie ma być wykonane w sposób dla nich właściwy. Mnożenie tablic polega na następujących operacjach: C(m,n)=A(m,n) B(m,n) dla m=1:m i n=1:n. Oto prosty przykład: >> A=[ 1 2 3; 3 2 1; 4 5 6] A = >> B=[2 3 4; 4 3 2; 1 2 3] B = >> C=A.*B C = W analogiczny sposób zapisujemy operację dzielenia tablic: C(m,n)=A(m,n)/B(m,n) dla m=1:m i n=1:m. W programie MATLAB odpowiednia instrukcja ma następującą postać: >> C=A./B C = Operację potęgowania tablicy zapisujemy jako:
25 25 >> C=A.^3 C = Ze względu na sposób wykonywania operacji na tablicach nie są wykonywane niektóre operacje odnoszące się do macierzy. Przykładowo porównajmy dwie operacje, w których występuje wcześniej zdefiniowana macierz A: >> B=[1 2 3]' B = >> C=A*B C = >> C=A.*B??? Error using ==>.* Matrix dimensions must agree. Pierwsza operacja odnosi się do macierzy i jest poprawna. Druga operacje dotyczy tablic i jest błędna, gdyż obie tablice muszą mieć jednakowy wymiar. Podane wyżej przykłady dotyczyły tablic kwadratowych. Obowiązują one również dla tablic prostokątnych, a w tym jednowymiarowych, odpowiadających wektorom. Pokazuje to następujący przykład: >> a=1:10 a = >> b=a.^2 b = Zauważmy, że operacja potęgowania jest równoważna mnożeniu. Jeżeli zapiszemy: >> b=a^2??? Error using ==> ^ Matrix must be square. program MATLAB zgłosi błąd i wskaże na jego przyczynę, która wynika z reguł mnożenia macierzy (przy mnożeniu a a=a 2 macierz a musi być prostokątna). W programie MATLAB można posługiwać się tablicami wielowymiarowymi (ang. multidimesional arrays). Sposób definiowania takich tablic i posługiwania się nimi pokażemy w dalszej części skryptu Łańcuchy Łańcuchy wykorzystywane są w prostych obliczeniach inżynierskich głównie do opisywania danych i rysunków. Łańcuch znaków tworzymy ujmując je w apostrofy. Program MATLAB sygnalizuje pojawienie się początku łańcucha standardowo kolorem niebieskim, a jego zakończenie zmianą koloru na czerwony. Łańcuchy wyróżniają się zatem wyraźnie w pisanym przez użytkownika programie. Każdy znak łańcucha traktowany jest jako element tablicy, co umożliwia wykonywanie na nich określonych operacji. Kilka prostych operacji ilustruje poniższy przykład.
26 26 >> a='dom' a = dom >> a(3) ans = m >> a(2)='y' a = dym W pierwszym wierszu poleceń zdefiniowany został łańcuch, w drugim wywołano trzecim element tego łańcuch, a w trzecim zmieniono znak o na znak y. Łańcuchy można rozszerzać analogicznie jak macierze. Ilustruje to poniższy przykład >> b='ek' b = ek >> c=[a b] c = dymek Rozdzielnie łańcuchów znakiem średnika powoduje utworzenie tablicy pod warunkiem, że oba łańcuch mają jednakową liczbę znaków: >> d='ogień' d = ogień >> e=[c;d] e = dymek ogień 3.4. Funkcje Program MATLAB dysponuje wielką liczbą funkcji, z których niewielka część jest znana z ogólnej matematyki, a pozostała została zdefiniowana w programie w celu rozwiązywania rozmaitych problemów numerycznych i tworzenia grafiki. Nawet pobieżna prezentacja funkcji występujących w programie MATLAB zdecydowanie przekracza ramy tego skryptu. Ograniczymy się zatem do podania ogólnych zasad posługiwania się funkcjami i omówimy najczęściej stosowane. Dla potrzeb tego skryptu wygodnie jest podzielić funkcje na kilka charakterystycznych typów i omówić je oddzielnie Funkcje standardowe Do tej klasy funkcji zaliczymy ogólnie znane funkcje matematyczne. Są to funkcje potęgowe, wykładnicze, logarytmiczne i trygonometryczne. Zapis tych funkcji nie różni się od stosowanego w matematyce. Program MATLAB wyznacza wartości tych funkcji dla dyskretnych wartości argumentu, którym jest wektor lub macierz. Ogólny zapis standardowych funkcji ma następującą postać: >> Y=f(X) gdzie X jest macierzą argumentów, Y macierzą wartości funkcji, a w miejsce symbolu f wpisuje się nazwę funkcji. Przykładowo wartości funkcji sinus wyznacza się następująca instrukcja:
27 27 >> y=sin(x) Praktyczny sposób wykorzystanie tej instrukcji pokazuje następujący przykład: >> x=2*pi*(0:0.1:1) x = Columns 1 through Columns 8 through >> y=sin(x) y = Columns 1 through Columns 8 through Powyższy program wyznacza wartości funkcji sinus w przedziale <0,2> w punktach stanowiących kolejne elementy wektora x. Wartości te podano w celach edukacyjnych; w praktyce należy po pierwszej instrukcji wstawić średnik, dzięki czemu unikniemy niepotrzebnego wypisywania wartości argumentu. Posługując się funkcjami standardowymi i operatorami można tworzyć własne funkcje. Pozostając przy zdefiniowanej wyżej funkcji sinusoidalnej można przykładowo utworzyć niestandardową funkcję sin 2 (x) i wyznaczyć jej wartości. W tym celu zapisujemy następujące instrukcje: >> x=2*pi*(0:0.1:1); >> y=sin(x).^2 y = Columns 1 through Columns 8 through Kropka przed znakiem potęgi jest niezbędna, gdyż powoduje, że potęgowanie dotyczy każdego elementu wektora sinx. Przy braku kropki program zgłasza błąd. W zmieszczonej niżej tablicy podano najczęściej używane funkcje standardowe. Symbol funkcji matematyczny MATLAB sin sin cos cos tg tan arcsin asin arccos acos artg atan log log10 ln log sqrt e(.) exp sinh sinh cosh cosh tgh tanh (.) a (.)^a
28 28 Argumenty funkcji w programie MATLAB mają szersze dziedziny niż podawane w matematyce elementarnej, gdyż program operuje na liczbach zespolonych. Przykładowo: lub >> log10(-2) ans = i >> sin(2+i*3) ans = i Jak już wspomniano, dziedziną funkcji standardowych są nie tylko wektory, lecz także macierze. Jeżeli w argumencie funkcji występuje macierz, wówczas program zwraca wartości funkcji dla każdego elementu macierzy i zapisuje je w formie macierzy. Położenie każdej wartości funkcji w tej nowej macierzy jest takie same jak argumentu w macierzy stanowiącej dziedzinę funkcji. Oto prosty przykład funkcji sinus, której argumentem jest macierz: >> X=[0 pi/2 pi 3*pi/2 2*pi; 0 pi/4 pi/2 3*pi/4 pi] X = >> Y=sin(X) Y = Funkcje macierzowe Programie MATLAB dysponuje bardzo dużą liczbą funkcji, których dziedziną są macierze i wektory. Omówimy tutaj część tych funkcji, które są najczęściej używane w obliczeniach inżynierskich. Niektóre z tych funkcji już poznaliśmy wcześniej i przypomnimy je w celu podkreślenia, że dotyczą one macierzy jako argumentów. det(a) inv(a) abs(a) real(a) zwraca wyznacznik macierzy prostokątnej wyznacza macierz odwrotną do macierzy prostokątnej zwraca macierz zawierającą wartości bezwzględne elementów macierzy A zwraca macierz zawierającą wartości rzeczywiste elementów macierzy A imag(a) zwraca macierz zawierającą wartości urojone elementów macierzy A angle(a) zwraca macierz zawierającą wartości argumentów elementów macierzy A conj(a) zwraca macierz, której elementy są sprzężone względem elementów macierzy A round(a), floor(a), ceil(a), fix(a) zwracają macierze, której elementami są liczby zaokrąglone według reguł opisanych dla liczb Omówione niżej funkcje wykorzystuje się m.in. do analizy przebiegu funkcji jedno i dwuwymiarowych zapisywanych numerycznie w formie wektorów lub macierzy. Funkcja sum dokonuje sumowania liczb oddzielnie w każdej kolumnie macierzy i tworzy wektor wierszowy, w którym elementami są wyniki sumowania w odpowiednich kolumnach. Ilustruje to następujący przykład: >> A=[ 1 2 3; ; ] A =
29 >> a=sum(a) a = Jeżeli argumentem funkcji sum jest wektor, to zwraca ona sumę elementów tego wektora. Tak więc sumę wszystkich elementów macierzy A wyznaczamy jako: >> as=sum(a) as = 8 lub bezpośrednio jako: >> as=sum(sum(a)) as = 8 Bardzo użyteczną funkcją jest cumsum, która jest w obliczeniach numerycznych odpowiednikiem całki t y (t) x( )d. 0 Funkcja ta wyznacza macierz, w której wierszach znajdują się bieżące sumy wyznaczane oddzielnie w każdej kolumnie według następującego wzoru: m B (m,n) A(m,n). n1 Dla rozpatrywanej macierzy A mamy więc: >> B=cumsum(A) B = Odpowiednikiem różniczkowania w obliczeniach numerycznych jest funkcja diff. Realizuje ona następującą operację: m C(m,n) n 1 A(m 1,n) A(m,n) Dla macierzy A funkcja diff buduje macierz: >> C=diff(A) C = Jak widać liczba wierszy w macierzy C jest o jeden mniejsza od liczby wierszy macierzy A. Funkcja max zwraca wektor wierszowy, w którym znajdują się maksymalne wartości występujące w odpowiednich kolumnach. Pokazuje to następujący przykład: >> a=max(a) a = 1 3 4
30 30 Jeżeli argument jest wektorem, to funkcja max wyznacza maksymalną wartość tego wektora: >> amax=max(a) amax = 4 Zauważmy, że w tym przykładzie liczba 4 jest wartością maksymalną występującą w macierzy A. W celu wyznaczenia wartości maksymalnej macierzy można użyć krótszej instrukcji: >> amax=max(max(a)) amax = 4 Funkcja min zwraca wektor wierszowy, w którym znajdują się minimalne wartości występujące w odpowiednich kolumnach. Oto przykład: >> a=min(a) a = >> amin=min(a) amin = -5 Funkcja mean zwraca wektor wierszowy, w którym znajdują się średnie wartości licz występujących w odpowiednich kolumnach. Dla rozpatrywanej to macierzy mamy: >> a=mean(a) a = >> amean=mean(a) amean = Ostatnia liczba jest średnią wartością elementów macierzy A. Funkcja std zwraca wektor wierszowy, w którym znajdują się odchylenia standardowe wartości w odpowiednich kolumnach. >> a=std(a) a = Funkcja var wyznacza wariancję według podanych wyżej reguł: >> a=var(a) a = Jak widać, wariancja jest równa kwadratowi odchylenia standardowego. W wypadku ostatnich funkcji nie podano odchylenia standardowego i wariancji wyznaczonego z wektorów, gdyż nie są te wielkości równe i odpowiednim wielkościom dla całej macierzy. Funkcji mean, std i var używa się głównie do analizy procesów stochastycznych. Bardzo użyteczną funkcją jest funkcja size, która zwraca liczbę wierszy i kolumn macierzy: >> [M,N]=size(A) M = 3 N = 3
31 31 Na pierwszy rzut oka wydaje się ona zbędna, jednakże w bardziej złożonych programach wykorzystuje się ją bardzo często. Wymiary macierzy bywają bowiem zmienne, gdyż mogą być uzależnione od podawanych przez użytkownika parametrów Relacje i operacje logiczne Operacje logiczne polegają w ogólności na sprawdzaniu, czy zapisana relacja między macierzami jest prawdziwa. Wynikiem sprawdzenia jest decyzja binarna: prawda oznaczona cyfrą 1 lub fałsz, oznaczony cyfrą 0. Najczęściej używanymi relacjami są równość i nierówności. Najprostszy przykład dotyczy macierzy jednoelementowych, czyli liczb. Zapiszmy następującą relację >> p=3>2 p = 1 >> p=2>3 p = 0 Pierwszą instrukcję należy rozumieć następująco: Sprawdź, czy prawdą jest, że 3 jest większe od 2. Jeżeli jest to prawda to wstaw p=1, w przeciwnym wypadku wstaw p=0. Ponieważ pierwsza nierówność jest prawdziwa, program zwrócił wartość p=1. Druga nierówność jest fałszywa i stąd p=0. Ogólny zapis operacji logicznych dla macierzy ma następującą postać: >> C=A==B lub >> C=eq(A,B) A równe B >>C=A~=B lub >> C=ne(A,B) A nie równe B >> C=A<B lub >> C=lt(A,B) A mniejsze od B >> C=A<=B lub >> C=le(A,B) A mniejsze lub równe B >> C=A>B lub >> C=gt(A,B) A większe od B >> C=A>=B lub >> C=ge(A,B) A większe lub równe B W powyższych relacjach A i B są macierzami o takich samych wymiarach. Sprawdzanie poprawności zapisanych relacji odnosi się do wszystkich elementów macierzy o tym samym numerze wiersza i kolumny. W miejscach elementów dla których relacja jest prawdziwa w macierzy C figurują cyfry 1, a w pozostałych cyfry 0. Ilustrują to następujące przykłady dotyczące wcześniej zdefiniowanych macierzy A i B. A = B = >> C1=A==B C1 = >> C2=A>B C2= 0 0 1
32 >> C3=A>=B C3 = Jeżeli chcemy znać wartości elementów macierzy A lub B, dla których zapisana relacja jest prawdziwa możemy użyć mnożenia tablicowego (wyraz po wyrazie). Przykładowo relację równości spełniają w obu macierzach następujące elementy: >> D=A.*C1 D = Opis rzadziej używanych operatorów logicznych (np. and lub or) można znaleźć w Help programu MATLAB. Wszystkie podane wyżej relacje dotyczą również wektorów o tej samej liczbie elementów. Można je wykorzystywać m.in. do analizy przebiegu funkcji, rozwiązywania równań nieliniowych itp. Przydatną funkcją, w której występują relacje jest funkcja find. Zwraca ona numery wierszy i kolumn w których dana relacja jest prawdziwa. Ilustruje to następujący przykład: >> [m,n]=find(d>1) m = 1 2 n = 2 2 Elementy macierzy D o wartościach większych od 1 to D(1,2) i D(2,2) Instrukcje warunkowe Instrukcje warunkowe służą do uzależnienia wykonania instrukcji od spełnienia określonych relacji logicznych. Najprostsza struktura instrukcji warunkowej jest następująca: if <relacja logiczna> <instrukcja> end Instrukcja jest wykonywana tylko wtedy, gdy zapisana wyżej relacja logiczna jest praw dziwa. W przeciwnym wypadku program przechodzi do instrukcji znajdującej się za end. Oto prosty przykład: >> w=2; >> if w==2 y=2*w end y = 4 Ponieważ w =2, to program wykonał instrukcję y=2w i podał jej wynik. Inny przykład: >> w=2;
ROMAN SALAMON MAREK S. MAKOWSKI MATLAB PODSTAWY I ZASTOSOWANIA
ROMAN SALAMON MAREK S. MAKOWSKI MATLAB PODSTAWY I ZASTOSOWANIA SKRYPT DLA STUDENTÓW I ROKU KIERUNKU ELEKTRONIKA I TELEKOMUNIKACJA POLITECHNIKI GDAŃSKIEJ DO PRZEDMIOTU TECHNIKA OBLICZENIOWA I SYMULACYJNA
Wprowadzenie do środowiska
Wprowadzenie do środowiska www.mathworks.com Piotr Wróbel piotr.wrobel@igf.fuw.edu.pl Pok. B 4.22 Metody numeryczne w optyce 2017 Czym jest Matlab Matlab (matrix laboratory) środowisko obliczeniowe oraz
AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 1 AUTOMATYZACJA I ROBOTYZACJA PROCESÓW PRODUKCYJNYCH
AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT Instrukcja do zajęc laboratoryjnych nr 1 AUTOMATYZACJA I ROBOTYZACJA PROCESÓW PRODUKCYJNYCH II rok Kierunek Logistyka Temat: Zajęcia wprowadzające. BHP stanowisk
Podstawowe operacje na macierzach
Podstawowe operacje na macierzach w pakiecie GNU octave. (wspomaganie obliczeń inżynierskich) Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z tworzeniem macierzy i wektorów w programie GNU octave.
Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki
Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki Przetwarzanie Sygnałów Studia Podyplomowe, Automatyka i Robotyka Podstawy MATLABA MATLAB jest zintegrowanym środowiskiem
LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab
LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI Wprowadzenie do środowiska Matlab 1. Podstawowe informacje Przedstawione poniżej informacje maja wprowadzić i zapoznać ze środowiskiem
do MATLABa podstawowe operacje na macierzach WYKŁAD Piotr Ciskowski
Wprowadzenie do MATLABa podstawowe operacje na macierzach WYKŁAD Piotr Ciskowski M A T L A B : Computation Visualization Programming easy to use environment MATLAB = matrix laboratory podstawowa jednostka
WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA
WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI I INFORMATYKI INSTYTUT AUTOMATYKI I INFORMATYKI KIERUNEK AUTOMATYKA I ROBOTYKA STUDIA STACJONARNE I STOPNIA PRZEDMIOT : : LABORATORIUM PODSTAW AUTOMATYKI 1. WSTĘP DO
Podstawy Automatyki ćwiczenia Cz.1. Środowisko Matlab
Podstawy Automatyki ćwiczenia Cz.1 Środowisko Matlab Podstawową jednostką obliczeniową w programie Matlab jest macierz. Wektory i skalary mogą być tutaj rozpatrywane jako specjalne typy macierzy. Elementy
PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.
WYDZIAŁ ELEKTROTECHNIKI I AUTOMATYKI Katedra Inżynierii Systemów Sterowania PODSTAWY AUTOMATYKI MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.
Metody i analiza danych
2015/2016 Metody i analiza danych Macierze Laboratorium komputerowe 2 Anna Kiełbus Zakres tematyczny 1. Funkcje wspomagające konstruowanie macierzy 2. Dostęp do elementów macierzy. 3. Działania na macierzach
Matlab Składnia + podstawy programowania
Matlab Składnia + podstawy programowania Matlab Matrix Laboratory środowisko stworzone z myślą o osobach rozwiązujących problemy matematyczne, w których operuje się na danych stanowiących wielowymiarowe
Obliczenia w programie MATLAB
Obliczenia w programie MATLAB Na zajęciach korzystamy z programu MATLAB, w którym wykonywać będziemy większość obliczeń. Po uruchomieniu programu w zależności od wersji i konfiguracji może pojawić się
Ćwiczenie 1. Matlab podstawy (1) Matlab firmy MathWorks to uniwersalny pakiet do obliczeń naukowych i inżynierskich, analiz układów statycznych
1. Matlab podstawy (1) Matlab firmy MathWorks to uniwersalny pakiet do obliczeń naukowych i inżynierskich, analiz układów statycznych i dynamicznych, symulacji procesów, przekształceń i obliczeń symbolicznych
MATrix LABoratory. A C21 delta tvx444 omega_zero. hxx J23 aaa g4534 Fx_38
MATLAB wprowadzenie MATrix LABoratory MATLAB operuje tylko na jednym typie zmiennych na macierzach. Liczby (skalary) są szczególnymi przypadkami macierzy o wymiarze 1 1, (zawierającymi jeden wiersz i jedną
Wykorzystanie programów komputerowych do obliczeń matematycznych
Temat wykładu: Wykorzystanie programów komputerowych do obliczeń matematycznych Kody kolorów: żółty nowe pojęcie pomarańczowy uwaga kursywa komentarz * materiał nadobowiązkowy Przykłady: Programy wykorzystywane
MATLAB - laboratorium nr 1 wektory i macierze
MATLAB - laboratorium nr 1 wektory i macierze 1. a. Małe i wielkie litery nie są równoważne (MATLAB rozróżnia wielkość liter). b. Wpisanie nazwy zmiennej spowoduje wyświetlenie jej aktualnej wartości na
Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje
Mathcad c.d. - Macierze, wykresy 3D, rozwiązywanie równań, pochodne i całki, animacje Opracował: Zbigniew Rudnicki Powtórka z poprzedniego wykładu 2 1 Dokument, regiony, klawisze: Dokument Mathcada realizuje
Algebra macierzy
Algebra macierzy Definicja macierzy Macierze Macierze Macierze Działania na macierzach Działania na macierzach A + B = B + A (prawo przemienności dodawania) (A + B) + C = A + (B + C) (prawo łączności dodawania)
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania Teoria sterowania MATLAB funkcje zewnętrzne (m-pliki, funkcje) Materiały pomocnicze do ćwiczeń laboratoryjnych
Diary przydatne polecenie. Korzystanie z funkcji wbudowanych i systemu pomocy on-line. Najczęstsze typy plików. diary nazwa_pliku
Diary przydatne polecenie diary nazwa_pliku Polecenie to powoduje, że od tego momentu sesja MATLAB-a, tj. polecenia i teksty wysyłane na ekran (nie dotyczy grafiki) będą zapisywane w pliku o podanej nazwie.
Ćwiczenie 3: Wprowadzenie do programu Matlab
Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Laboratorium modelowania i symulacji Ćwiczenie 3: Wprowadzenie do programu Matlab 1. Wyznaczyć wartość sumy 1 1 2 + 1 3 1 4 + 1
1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
SKRYPTY. Zadanie: Wyznaczyć wartość wyrażenia arytmetycznego
1 SKRYPTY Zadanie: Wyznaczyć wartość wyrażenia arytmetycznego z = 1 y + 1+ ( x + 2) 3 x 2 + x sin y y + 1 2 dla danych wartości x = 12.5 i y = 9.87. Zadanie to można rozwiązać: wpisując dane i wzór wyrażenia
Wstęp do Programowania Lista 1
Wstęp do Programowania Lista 1 1 Wprowadzenie do środowiska MATLAB Zad. 1 Zapoznaj się z podstawowymi oknami dostępnymi w środowisku MATLAB: Command Window, Current Folder, Workspace i Command History.
Programowanie w języku Matlab
Programowanie w języku Matlab D. Caban, P. Skurowski Wykład. Składnia języka, podstawowe struktury i operacje Matlab Nazwa pochodzi od MATrix LAboratory Środowisko obliczeń numerycznych i symbolicznych
Wprowadzenie do Scilab: macierze
Wprowadzenie do Scilab: macierze Narzędzia Informatyki Magdalena Deckert Izabela Szczęch Barbara Wołyńska Bartłomiej Prędki Politechnika Poznańska Instytut Informatyki Agenda Definiowanie macierzy Funkcje
MATLAB - podstawy użytkowania
MATLAB - podstawy użytkowania Zbigniew Rudnicki (dr inż) MATLAB (MATrix LABoratory) - pakiet oprogramowania matematycznego firmy MathWorks Inc. (od roku 1984) to język i środowisko programowania do obliczeń
Liczby zespolone. x + 2 = 0.
Liczby zespolone 1 Wiadomości wstępne Rozważmy równanie wielomianowe postaci x + 2 = 0. Współczynniki wielomianu stojącego po lewej stronie są liczbami całkowitymi i jedyny pierwiastek x = 2 jest liczbą
Co to jest arkusz kalkulacyjny?
Co to jest arkusz kalkulacyjny? Arkusz kalkulacyjny jest programem służącym do wykonywania obliczeń matematycznych. Za jego pomocą możemy również w czytelny sposób, wykonane obliczenia przedstawić w postaci
Elementy metod numerycznych - zajęcia 9
Poniższy dokument zawiera informacje na temat zadań rozwiązanych w trakcie laboratoriów. Elementy metod numerycznych - zajęcia 9 Tematyka - Scilab 1. Labolatoria Zajęcia za 34 punktów. Proszę wysłać krótkie
Ćwiczenia nr 2. Edycja tekstu (Microsoft Word)
Dostosowywanie paska zadań Ćwiczenia nr 2 Edycja tekstu (Microsoft Word) Domyślnie program Word proponuje paski narzędzi Standardowy oraz Formatowanie z zestawem opcji widocznym poniżej: Można jednak zmodyfikować
Wprowadzenie do Mathcada 1
Wprowadzenie do Mathcada Ćwiczenie. - Badanie zmienności funkcji kwadratowej Ćwiczenie. pokazuje krok po kroku tworzenie prostego dokumentu w Mathcadzie. Dokument ten składa się z następujących elementów:.
Podstawy MATLABA, cd.
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
Edytor tekstu OpenOffice Writer Podstawy
Edytor tekstu OpenOffice Writer Podstawy OpenOffice to darmowy zaawansowany pakiet biurowy, w skład którego wchodzą następujące programy: edytor tekstu Writer, arkusz kalkulacyjny Calc, program do tworzenia
Ćwiczenie 3. MatLab: Algebra liniowa. Rozwiązywanie układów liniowych
Ćwiczenie 3. MatLab: Algebra liniowa. Rozwiązywanie układów liniowych Wszystko proszę zapisywać komendą diary do pliku o nazwie: imie_ nazwisko 1. Definiowanie macierzy i odwoływanie się do elementów:
Zanim zaczniemy GNU Octave
MatLab część I 1 Zanim zaczniemy GNU Octave 2 Zanim zaczniemy GNU Octave 3 Zanim zaczniemy GNU Octave 4 Środowisko MatLab-a MatLab ang. MATrix LABoratory Obliczenia numeryczne i symboliczne operacje na
Zakłócenia w układach elektroenergetycznych LABORATORIUM
Zakłócenia w układach elektroenergetycznych LABORATORIUM Obliczenia w programie MATLAB Na zajęciach korzystamy z programu MATLAB, w którym wykonywać będziemy większość obliczeń. Po uruchomieniu programu
Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS cz.3
Wyższa Szkoła Ekologii i Zarządzania Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS cz.3 Slajd 1 Excel Slajd 2 Adresy względne i bezwzględne Jedną z najważniejszych spraw jest tzw. adresacja. Mówiliśmy
METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH
METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH ĆWICZENIE NR 1 WPROWADZENIE DO PROGRAMU KOMPUTEROWEGO MATLAB Dr inż. Sergiusz Sienkowski ĆWICZENIE NR 1 Wprowadzenie do programu komputerowego Matlab 1.1.
METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH
METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH ĆWICZENIE NR 1 WPROWADZENIE DO PROGRAMU KOMPUTEROWEGO MATLAB Dr inż. Sergiusz Sienkowski ĆWICZENIE NR 1 Wprowadzenie do programu komputerowego Matlab 1.1.
Metody Numeryczne. Laboratorium 1. Wstęp do programu Matlab
Metody Numeryczne Laboratorium 1 Wstęp do programu Matlab 1. Wiadomości wstępne liczby, format Program Matlab używa konwencjonalną notację dziesiętną, z kropka dziesiętną. W przypadku notacji naukowej
Matlab Składnia + podstawy programowania
Matlab Składnia + podstawy programowania Matlab Matrix Laboratory środowisko stworzone z myślą o osobach rozwiązujących problemy matematyczne, w których operuje się na danych stanowiących wielowymiarowe
Wprowadzania liczb. Aby uniknąć wprowadzania ułamka jako daty, należy poprzedzać ułamki cyfrą 0 (zero); np.: wpisać 0 1/2
Wprowadzania liczb Liczby wpisywane w komórce są wartościami stałymi. W Excel'u liczba może zawierać tylko następujące znaki: 0 1 2 3 4 5 6 7 8 9 + - ( ), / $ %. E e Excel ignoruje znaki plus (+) umieszczone
Wprowadzenie do programu Mathcad 15 cz. 1
Wpisywanie tekstu Wprowadzenie do programu Mathcad 15 cz. 1 Domyślnie, Mathcad traktuje wpisywany tekst jako wyrażenia matematyczne. Do trybu tekstowego można przejść na dwa sposoby: Zaczynając wpisywanie
Instalacja Pakietu R
Instalacja Pakietu R www.r-project.org wybór źródła wybór systemu operacyjnego: Download R for Windows opcja: install R for the first time opcja: Download R 3.3.3 for Windows uruchomienie R-3.3.3-win MAGDA
Uniwersytet Kazimierza Wielkiego w Bydgoszczy Zespół Szkół nr 5 Mistrzostwa Sportowego XV Liceum Ogólnokształcące w Bydgoszczy
Uniwersytet Kazimierza Wielkiego w Bydgoszczy Zespół Szkół nr 5 Mistrzostwa Sportowego XV Liceum Ogólnokształcące w Bydgoszczy Matematyka, królowa nauk Edycja X - etap 2 Bydgoszcz, 16 kwietnia 2011 Fordoński
Instalacja
Wprowadzenie Scilab pojawił się w Internecie po raz pierwszy, jako program darmowy, w roku 1994 Od 1990 roku pracowało nad nim 5 naukowców z instytutu INRIA (Francuski Narodowy Instytut Badań w Dziedzinie
AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 3 AUTOMATYKA
AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT Instrukcja do zajęc laboratoryjnych nr 3 AUTOMATYKA II rok Kierunek Transport Temat: Minimalizacja funkcji logicznych. Projektowanie układów logicznych. Opracował
; B = Wykonaj poniższe obliczenia: Mnożenia, transpozycje etc wykonuję programem i przepisuję wyniki. Mam nadzieję, że umiesz mnożyć macierze...
Tekst na niebiesko jest komentarzem lub treścią zadania. Zadanie. Dane są macierze: A D 0 ; E 0 0 0 ; B 0 5 ; C Wykonaj poniższe obliczenia: 0 4 5 Mnożenia, transpozycje etc wykonuję programem i przepisuję
Obliczenia Symboliczne
Lekcja Strona z Obliczenia Symboliczne MathCad pozwala na prowadzenie obliczeń zarówno numerycznych, dających w efekcie rozwiązania w postaci liczbowej, jak też obliczeń symbolicznych przeprowadzanych
Macierze. Rozdział Działania na macierzach
Rozdział 5 Macierze Funkcję, która każdej parze liczb naturalnych (i, j) (i 1,..., n; j 1,..., m) przyporządkowuje dokładnie jedną liczbę a ij F, gdzie F R lub F C, nazywamy macierzą (rzeczywistą, gdy
Laboratorium Komputerowego Wspomagania Analizy i Projektowania
Laboratorium Komputerowego Wspomagania Analizy i Projektowania Ćwiczenie 2. Podstawowe operacje macierzowe. Opracował: dr inż. Sebastian Dudzik 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z tworzeniem
Przykład 1 -->s="hello World!" s = Hello World! -->disp(s) Hello World!
Scilab jest środowiskiem programistycznym i numerycznym dostępnym za darmo z INRIA (Institut Nationale de Recherche en Informatique et Automatique). Jest programem podobnym do MATLABa oraz jego darmowego
Przykłady zastosowań funkcji tekstowych w arkuszu kalkulacyjnym
S t r o n a 1 Bożena Ignatowska Przykłady zastosowań funkcji tekstowych w arkuszu kalkulacyjnym Wprowadzenie W artykule zostaną omówione zagadnienia związane z wykorzystaniem funkcji tekstowych w arkuszu
Próbny egzamin z matematyki dla uczniów klas II LO i III Technikum. w roku szkolnym 2012/2013
Próbny egzamin z matematyki dla uczniów klas II LO i III Technikum w roku szkolnym 2012/2013 I. Zakres materiału do próbnego egzaminu maturalnego z matematyki: 1) liczby rzeczywiste 2) wyrażenia algebraiczne
FUNKCJE LICZBOWE. Na zbiorze X określona jest funkcja f : X Y gdy dowolnemu punktowi x X przyporządkowany jest punkt f(x) Y.
FUNKCJE LICZBOWE Na zbiorze X określona jest funkcja f : X Y gdy dowolnemu punktowi x X przyporządkowany jest punkt f(x) Y. Innymi słowy f X Y = {(x, y) : x X oraz y Y }, o ile (x, y) f oraz (x, z) f pociąga
GNU Octave (w skrócie Octave) to rozbudowany program do analizy numerycznej.
1 GNU Octave GNU Octave (w skrócie Octave) to rozbudowany program do analizy numerycznej. Octave zapewnia: sporą bibliotęke użytecznych funkcji i algorytmów; możliwośc tworzenia przeróżnych wykresów; możliwość
EXCEL Prowadzący: dr hab. inż. Marek Jaszczur Poziom: początkujący
EXCEL Prowadzący: dr hab. inż. Marek Jaszczur Poziom: początkujący Laboratorium 3: Macierze i wykresy Cel: wykonywanie obliczeń na wektorach i macierzach, wykonywanie wykresów Czas wprowadzenia 25 minut,
Zadanie Wstaw wykres i dokonaj jego edycji dla poniższych danych. 8a 3,54 8b 5,25 8c 4,21 8d 4,85
Zadanie Wstaw wykres i dokonaj jego edycji dla poniższych danych Klasa Średnia 8a 3,54 8b 5,25 8c 4,21 8d 4,85 Do wstawienia wykresu w edytorze tekstu nie potrzebujemy mieć wykonanej tabeli jest ona tylko
Podstawowe operacje na macierzach, operacje we/wy
26 listopad 2012 Podstawowe operacje na macierzach, operacje we/wy Slajd 1 Podstawowe operacje na macierzach, operacje we/wy Zakład Komputerowego Wspomagania Projektowania Semestr 1. 26 listopad 2012 Podstawowe
1 Programowanie w matlabie - skrypty i funkcje
1 Programowanie w matlabie - skrypty i funkcje 1.1 Skrypty Skrypt jest plikiem tekstowym z rozszerzeniem *.m zawierającym listę poleceń do wykonania. Aby utworzyć skrypt w matlabie wybierz File New Script,
7. Podstawy zarządzania szablonami
7 7. Podstawy zarządzania szablonami Większość istotnych ustawień konfiguracyjnych jest przechowywana w pliku projektu. Wszystkie takie ustawienia będą zapamiętane także w szablonie. Jeżeli wykonuje się
Makropolecenia w Excelu
Makropolecenia w Excelu Trochę teorii Makropolecenie w skrócie nazywane makro ma za zadanie automatyczne wykonanie powtarzających się po sobie określonych czynności. Na przykładzie arkusza kalkulacyjnego
WEKTORY I MACIERZE. Strona 1 z 11. Lekcja 7.
Strona z WEKTORY I MACIERZE Wektory i macierze ogólnie nazywamy tablicami. Wprowadzamy je:. W sposób jawny: - z menu Insert Matrix, - skrót klawiszowy: {ctrl}+m, - odpowiedni przycisk z menu paska narzędziowego
Programy wykorzystywane do obliczeń
Przykłady: Programy wykorzystywane do obliczeń. Arkusze kalkulacyjne do obliczeń numerycznych: a. LibreOffice CALC (wolny dostęp) b. Microsoft EXCEL (komercyjny). Pakiety typu CAS (ang. Computer Algebra
Pomimo rozwoju programów klikologicznych w ekonometrii, istnieje wiele osób, które wciąż cenią sobie programy typu Matlab, czy Gauss. W programach klikologicznych typu EViews użytkownik ma małą kontrolę
JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.
IŚ ćw.8 JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript są zagnieżdżane w dokumentach HTML. Skrypt JavaScript
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?
Część XVIII C++ Funkcje 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? Umiemy już podzielić nasz
Wprowadzenie do Scilab: macierze
Wprowadzenie do Scilab: macierze Narzędzia Informatyki Magdalena Deckert Izabela Szczęch Barbara Wołyńska Bartłomiej Prędki Politechnika Poznańska Instytut Informatyki Agenda Definiowanie macierzy Funkcje
Modelowanie Systemów Dynamicznych Studia zaoczne, Automatyka i Robotyka, rok II. Podstawy MATLABA
Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki Modelowanie Systemów Dynamicznych Studia zaoczne, Automatyka i Robotyka, rok II Podstawy MATLABA MATLAB jest zintegrowanym
Wprowadzenie do Pakietu R dla kierunku Zootechnika. Dr Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu
Wprowadzenie do Pakietu R dla kierunku Zootechnika Dr Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu Instalacja Pakietu R www.r-project.org wybór źródła wybór systemu operacyjnego:
Wprowadzenie do systemu Scilab
Wprowadzenie do systemu Scilab Instrukcja 0 Wersja robocza 1 System Scilab Scilab jest wysokopoziomowym obiektowym językiem programowania, którego celem jest numeryczne wsparcie badań naukowych i inżynierskich.
JAVAScript w dokumentach HTML (1)
JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript mogą być zagnieżdżane w dokumentach HTML. Instrukcje JavaScript
Instrukcja obsługi programu SWWS autorstwa Michała Krzemińskiego
Instrukcja obsługi programu SWWS autorstwa Michała Krzemińskiego Krótkie informacje o programie można znaleźć zarówno w pliku readme.txt zamieszczonym w podkatalogu DANE jak i w zakładce O programie znajdującej
PORÓWNANIE TREŚCI ZAWARTYCH W OBOWIĄZUJĄCYCH STANDARDACH EGZAMINACYJNYCH Z TREŚCIAMI NOWEJ PODSTAWY PROGRAMOWEJ
PORÓWNANIE TREŚCI ZAWARTYCH W OBOWIĄZUJĄCYCH STANDARDACH EGZAMINACYJNYCH Z TREŚCIAMI NOWEJ PODSTAWY PROGRAMOWEJ L.p. 1. Liczby rzeczywiste 2. Wyrażenia algebraiczne bada, czy wynik obliczeń jest liczbą
Funkcje wyszukiwania i adresu PODAJ.POZYCJĘ
Funkcje wyszukiwania i adresu PODAJ.POZYCJĘ Mariusz Jankowski autor strony internetowej poświęconej Excelowi i programowaniu w VBA; Bogdan Gilarski właściciel firmy szkoleniowej Perfect And Practical;
Kolumna Zeszyt Komórka Wiersz Tabela arkusza Zakładki arkuszy
1 Podstawowym przeznaczeniem arkusza kalkulacyjnego jest najczęściej opracowanie danych liczbowych i prezentowanie ich formie graficznej. Ale formuła arkusza kalkulacyjnego jest na tyle elastyczna, że
Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm
Rozdział 5 Macierze Funkcję, która każdej parze liczb naturalnych (i,j) (i = 1,,n;j = 1,,m) przyporządkowuje dokładnie jedną liczbę a ij F, gdzie F = R lub F = C, nazywamy macierzą (rzeczywistą, gdy F
W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora.
1. Podstawy matematyki 1.1. Geometria analityczna W naukach technicznych większość rozpatrywanych wielkości możemy zapisać w jednej z trzech postaci: skalara, wektora oraz tensora. Skalarem w fizyce nazywamy
Cw.12 JAVAScript w dokumentach HTML
Cw.12 JAVAScript w dokumentach HTML Wstawienie skryptu do dokumentu HTML JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.skrypty Java- Script mogą być zagnieżdżane
Pracownia Informatyczna Instytut Technologii Mechanicznej Wydział Inżynierii Mechanicznej i Mechatroniki. Podstawy Informatyki i algorytmizacji
Pracownia Informatyczna Instytut Technologii Mechanicznej Wydział Inżynierii Mechanicznej i Mechatroniki Podstawy Informatyki i algorytmizacji wykład 1 dr inż. Maria Lachowicz Wprowadzenie Dlaczego arkusz
Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.
Część XIX C++ w Każda poznana do tej pory zmienna może przechowywać jedną liczbę. Jeśli zaczniemy pisać bardziej rozbudowane programy, okaże się to niewystarczające. Warto więc poznać zmienne, które mogą
AKADEMIA im. JANA DŁUGOSZA w CZĘSTOCHOWIE
AKADEMIA im. JANA DŁUGOSZA w CZĘSTOCHOWIE Wydział Matematyczno-Przyrodniczy Kierunek: nazwa kierunku Specjalność: nazwa specjalności JAN KOWALSKI Nr albumu:. TYTUŁ PRACY Praca przygotowana w nazwa zakładu/katedry
1. Skopiować naswój komputer: (tymczasowy adres)
Instrukcja instalacji Programu Ewangelie i pracy z nim 1. Skopiować naswój komputer: http://grant.rudolf.waw.pl/ (tymczasowy adres) a/ katalog ze skanami przekładu Nowego Testamentu b/pliki z edycjami
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania Teoria sterowania MATLAB komputerowe środowisko obliczeń naukowoinżynierskich podstawowe informacje Materiały
Ćwiczenie 1 - Arkusze kalkulacyjne
Ćwiczenie 1 - Arkusze kalkulacyjne 1. Uruchomić program Excel, utworzyć plik o nazwie Ćwiczenia_excel.xls, a następnie zapisać go na dysku D w swoim folderze. 2. Ćwiczenia wstępne Zaznaczyć pojedynczą
Rys.1. Technika zestawiania części za pomocą polecenia WSTAWIAJĄCE (insert)
Procesy i techniki produkcyjne Wydział Mechaniczny Ćwiczenie 3 (2) CAD/CAM Zasady budowy bibliotek parametrycznych Cel ćwiczenia: Celem tego zestawu ćwiczeń 3.1, 3.2 jest opanowanie techniki budowy i wykorzystania
Wprowadzenie do środowiska MATLAB z zastosowaniami w modelowaniu i analizie danych
Wprowadzenie do środowiska MATLAB z zastosowaniami w modelowaniu i analizie danych Daniel Wójcik Instytut Biologii Doświadczalnej PAN Szkoła Wyższa Psychologii Społecznej d.wojcik@nencki.gov.pl tel. 022
MATLAB tworzenie własnych funkcji
MATLAB tworzenie własnych funkcji Definiowanie funkcji anonimowych Własne definicje funkcji możemy tworzyć bezpośrednio w Command Window, są to tzw. funkcje anonimowe; dla funkcji jednej zmiennej składnia
najlepszych trików Excelu
70 najlepszych trików W Excelu 70 najlepszych trików w Excelu Spis treści Formatowanie czytelne i przejrzyste zestawienia...3 Wyświetlanie tylko wartości dodatnich...3 Szybkie dopasowanie szerokości kolumny...3
Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9
Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9 Uruchamianie edytora OpenOffice.ux.pl Writer 9 Dostosowywanie środowiska pracy 11 Menu Widok 14 Ustawienia dokumentu 16 Rozdział 2. OpenOffice
Systemy liczbowe używane w technice komputerowej
Systemy liczbowe używane w technice komputerowej Systemem liczenia nazywa się sposób tworzenia liczb ze znaków cyfrowych oraz zbiór reguł umożliwiających wykonywanie operacji arytmetycznych na liczbach.
Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu
Programowanie strukturalne Opis ogólny programu w Turbo Pascalu STRUKTURA PROGRAMU W TURBO PASCALU Program nazwa; } nagłówek programu uses nazwy modułów; } blok deklaracji modułów const } blok deklaracji
OPERACJE NA MACIERZACH DODAWANIE I ODEJMOWANIE MACIERZY
OPERACJE NA MACIERZACH DODAWANIE I ODEJMOWANIE MACIERZY Dodawanie i odejmowanie macierzy jest możliwe tylko dla dwóch macierzy o takich samych wymiarach! Wynikiem tych operacji jest macierz o takich samych
Tworzenie nowego projektu w asemblerze dla mikroprocesora z rodziny 8051
Tworzenie nowego projektu w asemblerze dla mikroprocesora z rodziny 8051 Katedra Automatyki, Wydział EAIiE Akademia Górniczo-Hutnicza w Krakowie Marcin Piątek Kraków 2008 1. Ważne uwagi i definicje Poniższy
ECDL/ICDL Przetwarzanie tekstów Moduł B3 Sylabus - wersja 5.0
ECDL/ICDL Przetwarzanie tekstów Moduł B3 Sylabus - wersja 5.0 Przeznaczenie sylabusa Dokument ten zawiera szczegółowy sylabus dla modułu ECDL/ICDL Przetwarzanie tekstów. Sylabus opisuje zakres wiedzy i
Celem ćwiczenia jest zapoznanie się z podstawowymi funkcjami i pojęciami związanymi ze środowiskiem AutoCAD 2012 w polskiej wersji językowej.
W przygotowaniu ćwiczeń wykorzystano m.in. następujące materiały: 1. Program AutoCAD 2012. 2. Graf J.: AutoCAD 14PL Ćwiczenia. Mikom 1998. 3. Kłosowski P., Grabowska A.: Obsługa programu AutoCAD 14 i 2000.
Pascal - wprowadzenie
Pascal - wprowadzenie Ogólne informacje o specyfice języka i budowaniu programów Filip Jarmuszczak kl. III c Historia Pascal dawniej jeden z najpopularniejszych języków programowania, uniwersalny, wysokiego