AUTOMATYZACJA OBLICZEŃ INŻYNIERSKICH. Dr hab. inż. Jacek Kucharski, prof. PŁ Dr inż. Piotr Urbanek

Podobne dokumenty
do MATLABa programowanie WYKŁAD Piotr Ciskowski

Pisząc okienkowy program w Matlabie wykorzystujemy gotowe obiekty graficzne, lub możemy tworzyć własne obiekty dziedzicząc już zdefiniowane.

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

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

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ć

Spis treści. I. Skuteczne. Od autora... Obliczenia inżynierskie i naukowe... Ostrzeżenia...XVII

WIMIM/MIBM/N1/-/B04 WIMIM/ME/S1/-/C46 WIMIM/IM/S1/-/B19

Zanim zaczniemy GNU Octave

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

Programowanie w języku Matlab

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

Matlab MATrix LABoratory Mathworks Inc.

Wprowadzenie do środowiska

Wykład Ćwiczenia Laboratorium Projekt Seminarium 15 30

MATLAB - podstawy użytkowania

Diary przydatne polecenie. Korzystanie z funkcji wbudowanych i systemu pomocy on-line. Najczęstsze typy plików. diary nazwa_pliku

WYDZIAŁ PODSTAWOWYCH PROBLEMÓW TECHNIKI KARTA PRZEDMIOTU

Tworzenie macierzy pełnych Generowanie macierzy pełnych Funkcje przekształcające macierze pełne

Podstawy Programowania C++

MATLAB Z3. Rafał Woźniak. Warsaw, Faculty of Economic Sciences, University of Warsaw

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

Pakiety matematyczne. Matematyka Stosowana. dr inż. Krzysztof Burnecki

Excel w obliczeniach naukowych i inżynierskich. Wydanie II.

Spis treści. Przedmowa. Podstawy R

Laboratorium Komputerowego Wspomagania Analizy i Projektowania

do MATLABa podstawowe operacje na macierzach WYKŁAD Piotr Ciskowski

Operacje logiczne i struktury sterujące.

1 Podstawy c++ w pigułce.

Ćwiczenie 1. Wprowadzenie do programu Octave

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

Język programowania DELPHI / Andrzej Marciniak. Poznań, Spis treści

Ćwiczenie 1. Wprowadzenie do programu Octave

Podstawy Informatyki Computer basics

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h]

Wspomaganie obliczeń matematycznych. dr inż. Michał Michna

Programowanie obiektowe

Odniesienie do kierunkowych efektów kształcenia Zna podstawowe możliwości pakietu Matlab

Elementy metod numerycznych - zajęcia 9

Analiza Algebra Podstawy programowania strukturalnego. Podstawowe wiadomości o funkcjach Podstawowe wiadomości o macierzach Podstawy programowania

MATHCAD OBSŁUGA PROGRAMU

Przetwarzanie sygnałów

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

Matlab - zastosowania Matlab - applications. Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Rok akademicki: 2016/2017 Kod: JIS s Punkty ECTS: 6. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Wprowadzenie do pakietów MATLAB/GNU Octave

MATLAB. Charakterystyka środowiska

Laboratorium 1a Wstęp do Matlaba

Podstawy programowania skrót z wykładów:

Laboratorium 1 Wstęp do Matlaba

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

Analiza Algebra Podstawy programowania strukturalnego. Podstawowe wiadomości o funkcjach Podstawowe wiadomości o macierzach Podstawy programowania

Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.

Obliczenia Naukowe. Wykład 11:Pakiety do obliczeń: naukowych i inżynierskich Przegląd i porównanie. Bartek Wilczyński

Wstęp do Programowania Lista 1

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA

Wprowadzenie do systemu Scilab

Z. Rudnicki: WPROWADZENIE DO INFORMATYKI I PROGRAMOWANIA

2.1. Postać algebraiczna liczb zespolonych Postać trygonometryczna liczb zespolonych... 26

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2014/2015

Język ludzki kod maszynowy

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

Zakaz rozpowszechniania w sieci, tylko na użytek studentów informatyki UwB. WYKŁAD 1- Matlab

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

Podstawy Programowania ELEMENTY PROGRAMU i TYPY DANYCH

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

METODY KOMPUTEROWE W OBLICZENIACH INŻYNIERSKICH

KARTA MODUŁU (część I, 2013/2014)

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

Pakiety matematyczne INP2708W,L

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

Dostawa oprogramowania. Nr sprawy: ZP /15

Teraz bajty. Informatyka dla szkół ponadpodstawowych. Zakres rozszerzony. Część 1.

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

dr inż. Michał Michna WSPOMAGANIE OBLICZEŃ MATEMATYCZNYCH

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

1 Podstawy c++ w pigułce.

KARTA MODUŁU (część I)

1 Materiał omawiany na laboratorium

Uniwersytet Śląski w Katowicach str. 1 Wydział Matematyki Fizyki i Chemii, Instytut Matematyki

Obliczenia inżynierskie. oprogramowanie matematyczne

MATLAB i Simulink : poradnik użytkownika / Bogumiła Mrozek, Zbigniew Mrozek. Wyd. 4. Gliwice, cop Spis treści. Przedmowa 13

Informatyka Wykład 2

Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal

Rok akademicki: 2013/2014 Kod: STC s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Programowanie obiektowe

Wprowadzenie do Scilab: podstawy języka Scilab

Podstawy Informatyki. Metalurgia, I rok. Wykład 3 Liczby w komputerze

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

Podstawy obsługi pakietu GNU octave.

Programowanie w języku R : analiza danych, obliczenia, symulacje / Marek Gągolewski. Wyd. 2 poszerz. Warszawa, Spis treści

Podstawy Informatyki 1. Laboratorium 1

PWSZ w Tarnowie Instytut Politechniczny Elektrotechnika

1 Typy i formaty danych

Przetwarzanie i analiza danych w języku Python / Marek Gągolewski, Maciej Bartoszuk, Anna Cena. Warszawa, Spis treści

Microsoft IT Academy kurs programowania

PRZEWODNIK PO PRZEDMIOCIE

Programowanie strukturalne i obiektowe : podręcznik do nauki zawodu technik informatyk / Adam Majczak. Gliwice, cop

01.Wprowadzenie do pakietu MATLAB

1. Wprowadzenie do systemu MATLAB Operacje macierzowe i grafika 2D i 3D Podstawy programowania. Sławomir Milewski

Transkrypt:

AUTOMATYZACJA OBLICZEŃ INŻYNIERSKICH Dr hab. inż. Jacek Kucharski, prof. PŁ Dr inż. Piotr Urbanek

CEL OGÓLNY Zdobycie umiejętności efektywnego wykorzystywania wybranych narzędzi informatycznych dla potrzeb rozwiązywania typowych problemów obliczeniowych, spotykanych w szeroko rozumianej praktyce inżynierskiej

CELE SZCZEGÓŁOWE Poznanie możliwości wybranych pakietów oprogramowania w zakresie wspomagania rozwiązywania problemów inżynierskich Łączenie różnych form programowania i umiejętnego wykorzystania funkcji wysokiego poziomu Zdobycie umiejętności transponowania problemu z dziedziny inżynierskiej do środowiska informatycznego Wskazanie typowych operacji matematycznych spotykanych w praktyce inżynierskiej

EFEKTY KSZTAŁCENIA Po zakończeniu przedmiotu student potrafi: - transponować formalny opis problemu do przestrzeni pakietu obliczeniowego - wykorzystywać struktury danych dostępne w pakiecie do opisu rzeczywistych informacji o problemie - implementować operacje matematyczne z zakresu arytmetyki, algebry macierzy, rachunku zespolonego, funkcji elementarnych itp. w pakiecie obliczeniowym - identyfikować operacje matematyczne w kodzie programu i wykonywać ich modyfikacje - łączyć struktury programistyczne z wbudowanymi funkcjami i operacjami pakietu

OBSZARY PROBLEMOWE obliczanie wyrażeń matematycznych statystyczna analiza danych analiza szeregów czasowych dopasowanie krzywej, regresja, interpolacja zagadnienia optymalizacyjne całkowanie i różniczkowanie numeryczne rozwiązywanie równań algebraicznych rozwiązywanie równań różniczkowych

PAKIETY OPROGRAMOWANIA EXCEL MATLAB MATHCAD

MATLAB ogólna charakterystyka Pakiet programowy do wykonywania złożonych obliczeń numerycznych dla potrzeb naukowych i inżynierskich. setki wbudowanych funkcji wykorzystujących najwyższej klasy algorytmy bogaty zestaw tematycznych zestawów narzędziowych (Toolbox) możliwość pisania własnych funkcji w wewnętrznym języku programowania interfejs umożliwiający uruchamianie programów napisanych w Fortranie lub C

MATLAB rys historyczny lata 70-te w USA powstają biblioteki do obliczeń macierzowych napisane w Fortanie 1980r. powstaje program (też w Fortanie) umożliwiający wykorzystywanie tych bibliotek bez potrzeby programowania w Fortranie (pierwowzór) od 1983r. trwają prace nad zastąpieniem Fortranu językiem C i dodaniem zintegrowanej grafiki 1985 r. pojawia się pierwsza wersja Matlaba (firma The Mathworks Inc.)

Tryby pracy Tryb interaktywny potężny kalkulator z możliwością realizacji operacji graficznych Programowanie w Matlab interpretowany język programowania wysokiego poziomu SIMULINK symulacje komputerowe z wykorzystaniem programowania wizualnego

Wybrane typy plików M-pliki (pliki tekstowe zawierające programy napisane w Matlabie) Mat-pliki (pliki binarne zawierające dane w formacie Matlaba) Fig-pliki (binarne pliki wykresów) P-pliki (skompilowane M-pliki) Mex-pliki (programy zapisane w Fortranie lub C wywoływane z Matlaba)

Środowisko pracy pulpit Matlaba okno poleceń okno bieżącego katalogu okno przestrzeni roboczej okno historii poleceń okno graficzne okno edytora

Charakterystyka środowiska Matlab rozróżnia wielkość liter Pomoc: help temat, lookfor łańcuch Przestrzeń robocza (who, clear, save, load) Po wprowadzeniu polecenia Matlab sprawdza: czy jest to zmienna jeżeli nie to czy jest to funkcja wbudowana jeżeli nie to czy jest to funkcja w bieżącym katalogu jeżeli nie to czy jest to funkcja w ścieżce dostępu Ścieżka dostępu zawarta w zmiennej path generowanej przez plik pathdef.m rozszerzanie: polecenia addpath, savepath

Klasy (typy danych) TABLICA (n-wymiarowa) e l e m e n t y h o m o g e n i c z n e s k ł a d o w e h e t e r o g e n i c z n e logiczne liczbowe tekstowe wskaźnikowe komórkowe strukturalne logical char function_handle cell struct (@) floating-point integer single double signed unsigned single double int8 int16 uint8 uint16 int32 uint32 int64 uint64

Klasy cd. Identyfikacja klasy (whos, class, isa) Łączenie różnych klas w jednej tablicy (preset precedence) character character integer single double logical character integer character integer single character integer single double character integer single double logical invalid integer single double logical pierwszy od lewej

Liczby Rozmiar vs. zakres (intmin, intmax, realmin, realmax) Liczby szczególne (Inf, NaN) Precyzja obliczeń (eps) Zaokrąglenia (round, fix, floor, ceil) Liczby zespolone (complex, imag, real, abs, angle, conj)

Zmienne i wyrażenia Podstawowy typ zmiennej to TABLICA! Nazwy zmiennych (namelengthmax) Deklaracje zmiennych (prealokowanie pamięci) Wyrażenia dwa rodzaje (ans) angażują całe tablice (wektoryzacja!)

Tablice płaskie (macierze) Tworzenie macierzy konstruktor [ ] (macierz pusta, skalar, wektor) wyliczanie elementów generowanie ciągów liczb funkcje konkatenacja tablic Informacje o tablicy length, size, ndims, numel isa, is (numeric, integer, float, real, logical, char, ) Przekształcanie macierzy do postaci wektora ( : ) reshape, rot90, fliplr, flipud, circshift

Tablice płaskie (macierze) cd. Indeksowanie A(row,col) indeksowanie liniowe indeksowanie za pomocą tablicy indeksujące tablice liczbowe indeksujące tablice logiczne indeksowanie w podstawianiu Usuwanie fragmentów tablicy wiersze, kolumny elementy, bloki elementów Macierze rzadkie (sparse)

Tworzenie Tablice wielowymiarowe indeks A(:,:,2)=[ ] funkcje (ones(3,2,3), ) konkatenacja (cat(dim,a,b, ) Indeksowanie Operacje funkcje operujące na wektorach funkcje operujące element-by-element

Tworzenie konstruktor { } Tablice komórkowe pusta tablica (cell) Indeksowanie (rola () i {}) Podstawianie do komórek A{3,3}=[ ] A(3,3)={[ ]} Usuwanie komórek Wyświetlanie tablicy komórkowej (celldisp, cellplot)

Tworzenie struktury Tablice strukturalne str.pole=wart str=struct(pole1,wart1,pole2,wart2, ) Tablica struktur str(row,col).pole=wart str=[struct(pole,wart, );struct(pole,wart, )] Funkcje (fieldnames, setfield, getfield, rmfield, isfield) Dynamiczne odwoływanie się do pól

Operatory arytmetyczne Operatory macierzowe (scalar expansion) tablicowe Operatory relacji Relacje liczb rzeczywistych Relacje liczb zespolonych Relacje danych tekstowych (strcmp) Operatory logiczne Priorytety operatorów

Elementarne funkcje matematyczne Funkcje skalarne (wektoryzacja!) Funkcje macierzowe (expm, logm, sqrtm, funm)

Język programowania Instrukcja warunkowa warunek logiczny funkcje logiczne (all, any, exist, isempty, isfinite, isnan) Instrukcja switch Instrukcje pętli while for Instrukcje continue, break, return Instrukcja try catch end

M-pliki skryptowe M-pliki funkcyjne M-pliki składnia, nazwa współpraca z przestrzenią roboczą (global, persistent) komentarz (help, lookfor) liczba zmiennych wej wyj (nargin, nargout, varargin, varargout) subfunkcje funkcje zagnieżdżone funkcje prywatne Tworzenie funkcji w wierszu poleceń inline, @, eval, feval