Programování a algoritmizace (FSI-RM0)

Akademický rok 2020/2021
Garant: doc. Ing. Jiří Krejsa, Ph.D.  
Garantující pracoviště: ÚMTMB všechny předměty garantované tímto pracovištěm
Jazyk výuky: čeština
Cíle předmětu:
Cílem kursu je naučit studenty řešit úlohy pomocí výpočetních nástrojů, dekomponovat úlohu na podproblémy a implementovat návrh řešení. K tomu je navíc poskytnut studentům přehled možností nástroje technických
výpočtů MATLAB.
Výstupy studia a kompetence:
Absolvent kursu bude schopen naprogramovat jednoduché úlohy v prostředí
MATLAB, zpracovat a zobrazit získané výsledky. Bude mít přehled o
nadstavbách MATLABu. Bude schopen ideově rozpracovat problém, dekomponovat ho, navrhnout datové struktury a operace, které povedou k jeho řešení.
Prerekvizity:
základy práce s PC, základní principy programování (podmínky, cykly, procedury a funkce), maticový počet
Obsah předmětu (anotace):
V kurzu se studenti naučí základům tvorby programů, především dekompozici problému a tvorbě algoritmů. Implementace bude probíhat především v prostředí MATLAB. MATLAB integruje matematické výpočty, vizualizaci a programovací techniky a poskytuje tak flexibilní prostředí pro technické výpočty. Studenti se v kurzu naučí používat tuto otevřenou architekturu ke zpracování dat,
tvorbě algoritmů a vytváření vlastních nástrojů. Kurz obsahuje jak základní modul programu MATLAB, tak volitelná rozšíření (toolboxes) a nástroj pro simulaci dynamických systémů Simulink.
Metody vyučování:
Předmět je vyučován formou přednášek, které mají charakter výkladu základních principů a teorie dané disciplíny. Cvičení je zaměřeno na praktické zvládnutí látky probrané na přednáškách.
Způsob a kritéria hodnocení:
Zápočet bude udělen na základě hodnocení samostatného projektu, ve kterém
musí student prokázat schopnost využít možností MATLABu k řešení zadané
úlohy.
Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky:
Účast na cvičení je povinná. Vedoucí cvičení provádějí průběžnou kontrolu přítomnosti studentů, jejich aktivity a základních znalostí. Neomluvená neúčast je důvodem k neudělení zápočtu.
Jednorázovou neúčast je možno nahradit cvičením s jinou skupinou v tomtéž týdnu nebo zadáním náhradních úloh, delší neúčast se nahrazuje vypracováním náhradních úloh podle pokynů cvičícího.
Typ (způsob) výuky:
    Přednáška  13 × 1 hod. nepovinná                  
    Cvičení s počítačovou podporou  13 × 2 hod. povinná                  
Osnova:
    Přednáška 1. Vývojové prostředí, m-soubory
2. Datové typy, funkce
3. Funkce, vektorizace
4. Debugger, paměť, rychlost
5. Case study 1 (pohyb objektu v prostředí), dekompozice
6. Case study 1, algoritmizace
7. Case study 1, implementace)
8. Case study 2 (laserový scanner), grafický výstup
9. Case study 3 (plánovač trajektorie)
10. Case study 4 (RRT)
11. Case study 5 (CS1-4)
12. Využití Matlabu (diferenciální rovnice, 3D vizualizace, ...)
13. Rozšíření Matlabu (toolboxy, Simulink)
    Cvičení s počítačovou podporou 1. Vývojové prostředí, workspace, m-soubory
2. Import a export dat, datové typy
3. Funkce, předávání parametrů
4. Debugger, breakpointy
5. Case study 1
6. Case study 1
7. Case study 1
8. Case study 2
9. Case study 3
10. Case study 4
11. Case study 5
12. ODE, 3D vizualizace
13. Toolboxy, Simulink
Literatura - základní:
1. Matlab User's Guide
Zařazení předmětu ve studijních programech:
Program Forma Obor Spec. Typ ukončení   Kredity     Povinnost     St.     Roč.     Semestr  
B3A-P prezenční studium B-MET Mechatronika -- 2 Volitelný 1 2 Z