|
|
(Není zobrazeno 8 mezilehlých verzí od stejného uživatele.) |
Řádek 1: |
Řádek 1: |
| {{Výuka}}
| | #REDIRECT [[154PSM]] |
| [[Kategorie:Numerické výpočty]]
| |
| ==Anotace==
| |
| Obsahem předmětu je: Práce s interaktivním pracovním prostředí Matlabu. Základní datové typy a práce s nimi (matice, řetězce, indexování). Maticová algebra. Numerická analýza dat. Kreslení grafů - 2D vizualizace. Přístup ke grafickým objektům pomocí Handle Graphics. Psaní výpočetních skriptů a funkcí (skriptovací jazyk). Kontejnerové datové typy (cell, structure). Programování jednoduchého GUI. Cílem předmětu je poskytnout znalosti a praktické dovednosti v programovém prostředí Matlab jako nástroji pro numerické zpracování a vizualizaci dat v geodézii.
| |
| | |
| ;Doporučená literatura
| |
| # Duane Hanselman, Bruce Littlefield: Mastering Matlab 6. Prentice Hall, New Jersey, 2001.
| |
| # Cleve Moler: Numerical Computing with Matlab (http://www.mathworks.com/moler)
| |
| # The Mathworks: Online documentation (http://www.mathworks.com/access/helpdesk/help/techdoc/matlab.html)
| |
| | |
| == Cvičení ==
| |
| '''Vyučující''': [[Ing. Tomáš Kubín, Ph.D.]]
| |
| | |
| === Letní semestr 2010/2011 ===
| |
| | |
| '''Kurz pro začátečníky'''
| |
| {| class="border" style="background-color:#ccffff;"
| |
| ! Téma !! Materiály
| |
| |-
| |
| | Pracovní prostředí Matlabu, základní vlastnosti jazyka ||
| |
| [http://slon.fsv.cvut.cz/ls/psm/matlab-shrnuti1.pdf Shrnutí 1(PDF)]
| |
| |-
| |
| | [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/elipsa_chyb.pdf Vykreslení a výpočet parametrů středních elips chyb (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/cov_mat.txt cov_mat.txt]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/sour.txt sour.txt]
| |
| || Základní operace s maticemi, indexování, skládání, skalární expanze
| |
| [http://slon.fsv.cvut.cz/ls/psm/matlab-shrnuti2.pdf Shrnutí 2(PDF)]
| |
| |-
| |
| | || Řetězce, logická pole
| |
| [http://slon.fsv.cvut.cz/ls/psm/matlab-shrnuti3.pdf Shrnutí 3(PDF)]
| |
| |-
| |
| <!--| Řízení běhu programu (if, for, while, switch), funkce (nargin, nargout) ||
| |
| [http://slon.fsv.cvut.cz/zs/psm/suchdol-mereni.txt suchdol-mereni.txt]<br>
| |
| [http://slon.fsv.cvut.cz/zs/psm/osnova-zadani.pdf Osnova směrů - zadání (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/zs/psm/osnova-soubory.tgz Osnova směrů - soubory (TGZ)]<br>
| |
| |-
| |
| | 2D vizualizace - Handle Graphics, příklad ||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/elipsa_chyb.pdf Vykreslení a výpočet parametrů středních elips chyb (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/cov_mat.txt cov_mat.txt]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/sour.txt sour.txt]
| |
| |-
| |
| | 3D vizualizace - regulární data, neregulární data ||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/21.pdf Biharmonic Spline (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/tach.txt souřadnice (TXT)]
| |
| |-
| |
| | struktury, buňky, ukazatele na funkce||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/matlab-shrnuti4.pdf Shrnutí 4 (PDF)]
| |
| |-
| |
| | GUI - tlačítka, menu (uicontrol, uimenu, uicontextmenu)||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/cary2.m cary2.m]
| |
| |-
| |
| -->
| |
| |}
| |
| | |
| | |
| '''Kurz pro pokročilé'''
| |
| {| class="border" style="background-color:#ffffcc;"
| |
| ! Téma !! Materiály
| |
| |-
| |
| | 3D vizualizace - regulární data, neregulární data ||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/21.pdf Biharmonic Spline (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/tach.txt souřadnice (TXT)]
| |
| |-
| |
| | struktury, buňky, ukazatele na funkce||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/matlab-shrnuti4.pdf Shrnutí 4 (PDF)]
| |
| |-
| |
| | GUI - tlačítka, menu, guide (uicontrol, uimenu, uicontextmenu)||
| |
| <!--[http://slon.fsv.cvut.cz/vyuka/ls/psm/cary2.m cary2.m]-->
| |
| |-
| |
| |}
| |
| | |
| | |
| '''Semestrální práce'''
| |
| * Vytvořte aplikaci pro transformaci souřadnic mezi systémy S-JTSK/Bpv, S-JTSK/05 a ETRS-89(ETRF2000) podle metodiky převodu uveřejněné na stránkách ČUZK a platné od 1. 1. 2011.
| |
| | |
| * Nechť aplikace provádí transformaci podle uvedené metodiky mezi těmito třemi systémy: ETRS-89 <-> S-JTSK/05 <-> S-JTSK/Bpv.
| |
| | |
| * Aplikace příkazové řádky
| |
| : Převod souřadnic jednoho bodu a celých seznamů souřadnic uložených v textovém souboru. Souřadnice v ETRS-89 mohou být zadané ve formě pravoúhlých nebo geocentrických souřadnic. Geocentrické souřadnice mohou být zadané ve stupních jako desetinné číslo nebo ve stupních minutách a vteřinách. V seznamu souřadnic se mohou vyskytovat komentáře uvozené znakem <code>#</code> nebo <code>%</code>.
| |
| : Převod souřadnic mezi systémy ETRS-89 <-> S-JTSK/Bpv, ETRS-89 <-> S-JTSK/05, S-JTSK/05 <-> S-JTSK
| |
| | |
| * Aplikace s GUI rozhraním
| |
| : možnost zadávání potřebných veličin v grafickém okně
| |
| : vykreslování transformovaných bodů v rámci ČR ([http://slon.fsv.cvut.cz/vyuka/ls/psm/hraniceCR.txt body hranice ČR])
| |
| : transformace seznamů souřadnic uložených v textovém souboru
| |
| : možnost uložení přetransformovaných bodů do textového souboru
| |
| : nechť GUI aplikace poskytuje stejnou funkčnost jako aplikace příkazové řádky (vyjma vykreslování)
| |
| | |
| * Struktura aplikace
| |
| : knihovny (dokumentace v hlavičkách funkcí), skript/y příkazové řádky, GUI rozhraní, dokumentace ke skriptům a GUI rozhraní ve formátu HTML (je možné použít funkci publish)
| |
| | |
| * Odevzdání a prezentace práce
| |
| : prezentace 3. 5. 2011
| |
| : odevzdání elektronicky do 26. 4. 2011
| |
| | |
| * Studijní materiály
| |
| : [http://slon.fsv.cvut.cz/ls/psm/ninterp2.pdf Newtonova kvadratická interpolace] ([http://slon.fsv.cvut.cz/ls/psm/ninterp2.m ninterp2.m])
| |
| | |
| ==Archiv cvičení==
| |
| === Letní semestr 2009/2010 ===
| |
| | |
| {| class="border"
| |
| ! Téma !! Materiály
| |
| |-
| |
| | Úvodní cvečení ||
| |
| [http://slon.fsv.cvut.cz/ls/psm/sour.txt sour.txt], [http://slon.fsv.cvut.cz/ls/psm/mer.txt mer.txt] | |
| |-
| |
| | Pracovní prostředí Matlabu, základní vlastnosti jazyka ||
| |
| [http://slon.fsv.cvut.cz/ls/psm/matlab-shrnuti1.pdf Shrnutí 1(PDF)]
| |
| |-
| |
| | Základní operace s maticemi, indexování, skládání, skalární expanze ||
| |
| [http://slon.fsv.cvut.cz/ls/psm/matlab-shrnuti2.pdf Shrnutí 2(PDF)]
| |
| |-
| |
| | Řetězce, logická pole ||
| |
| [http://slon.fsv.cvut.cz/ls/psm/matlab-shrnuti3.pdf Shrnutí 3(PDF)]
| |
| |-
| |
| | Řízení běhu programu (if, for, while, switch), funkce (nargin, nargout) ||
| |
| [http://slon.fsv.cvut.cz/zs/psm/suchdol-mereni.txt suchdol-mereni.txt]<br>
| |
| [http://slon.fsv.cvut.cz/zs/psm/osnova-zadani.pdf Osnova směrů - zadání (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/zs/psm/osnova-soubory.tgz Osnova směrů - soubory (TGZ)]<br>
| |
| |-
| |
| | 2D vizualizace - Handle Graphics, příklad ||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/elipsa_chyb.pdf Vykreslení a výpočet parametrů středních elips chyb (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/cov_mat.txt cov_mat.txt]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/sour.txt sour.txt]
| |
| |-
| |
| | 3D vizualizace - regulární data, neregulární data ||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/21.pdf Biharmonic Spline (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/tach.txt souřadnice (TXT)]
| |
| |-
| |
| | struktury, buňky, ukazatele na funkce||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/matlab-shrnuti4.pdf Shrnutí 4 (PDF)]
| |
| |-
| |
| | GUI - tlačítka, menu (uicontrol, uimenu, uicontextmenu)||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/cary2.m cary2.m]
| |
| |-
| |
| |}
| |
| | |
| | |
| === Zimní semestr 2009/2010 ===
| |
| {| class="border"
| |
| ! Datum !! Téma !! Materiály
| |
| |-
| |
| | 22.9. || Pracovní prostředí Matlabu, základní vlastnosti jazyka ||
| |
| [http://slon.fsv.cvut.cz/ls/psm/matlab-shrnuti1.pdf Shrnutí 1(PDF)]
| |
| |-
| |
| | 30.9. || Základní operace s maticemi, indexování, skládání, skalární expanze ||
| |
| [http://slon.fsv.cvut.cz/ls/psm/matlab-shrnuti2.pdf Shrnutí 2(PDF)]
| |
| |-
| |
| | 6.10. || Řetězce, logická pole ||
| |
| [http://slon.fsv.cvut.cz/ls/psm/matlab-shrnuti3.pdf Shrnutí 3(PDF)]
| |
| |-
| |
| | 13.10. || Řízení běhu programu (if, for, while, switch), funkce (nargin, nargout) ||
| |
| [http://slon.fsv.cvut.cz/zs/psm/suchdol-mereni.txt suchdol-mereni.txt]<br>
| |
| [http://slon.fsv.cvut.cz/zs/psm/osnova-zadani.pdf Osnova směrů - zadání (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/zs/psm/osnova-soubory.tgz Osnova směrů - soubory (TGZ)]<br>
| |
| |-
| |
| | 20.10. || 2D vizualizace - Handle Graphics, příklad ||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/elipsa_chyb.pdf Vykreslení a výpočet parametrů středních elips chyb (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/cov_mat.txt cov_mat.txt]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/sour.txt sour.txt]
| |
| |-
| |
| | 27.10. || 3D vizualizace - regulární data, neregulární data ||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/21.pdf Biharmonic Spline (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/tach.txt souřadnice (TXT)]
| |
| |-
| |
| | 3.11. || struktury, buňky, ukazatele na funkce, GUI - úvod||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/matlab-shrnuti4.pdf Shrnutí 4 (PDF)]
| |
| |-
| |
| | 10.11. || GUI - tlačítka, menu (uicontrol, uimenu, uicontextmenu)||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/cary2.m cary2.m]
| |
| |-
| |
| | 24.11., 1.12., 8.12. || Semestrální práce ||
| |
| |-
| |
| | 15.12. || Prezentace semestrálních prací ||
| |
| [http://slon.fsv.cvut.cz/vyuka/zs/psm/protokol.php odevzdání]
| |
| |-
| |
| |}
| |
| | |
| ====Semestrální práce====
| |
| '''Zadání''':
| |
| : Napište GUI aplikaci v programu Matlab dle zvoleného tématu. Téma navrhněte sami a svůj návrh konzultujte s vyučujícím. Každý soubor nechť obsahuje ve své úvodní části:
| |
| <source lang='matlab'>
| |
| %% Semestrální práce
| |
| %% Univerzita: České vysoké učení technické v Praze, Fakulta Stavební
| |
| %% Předmět: 151PSM - Programovací systém Matlab
| |
| %% Akademický rok: 2009/2010
| |
| %% Autor: Jméno Příjmení
| |
| </source>
| |
| | |
| :Hlavní funkce nechť obsahuje nápovědu, která stručně charakterizuje možnosti a využití aplikace.
| |
| :Termín odevzdání: 12.2.2010
| |
| | |
| === Letní semestr 2008/2009 ===
| |
| * Termín cvičení byl dohodnut na 7.-8. hodinu ve středu v místnosti B977. První hodina se uskuteční 11. 3. 2009.
| |
| * Předmět bude ukončen semestrální prací a její prezentací v zápočtovém týdnu.
| |
| | |
| {| class="border"
| |
| ! Datum !! Téma !! Materiály
| |
| |-
| |
| | 11.3. || Pracovní prostředí Matlabu, opakování ||
| |
| [http://slon.fsv.cvut.cz/ls/psm/matlab-shrnuti1.pdf Shrnutí 1(PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/ls/psm/matlab-shrnuti2.pdf Shrnutí 2(PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/ls/psm/matlab-shrnuti3.pdf Shrnutí 3(PDF)]
| |
| |-
| |
| | 18.3. || 2D vizualizace - Handle Graphics ||
| |
| |-
| |
| | 25.3. || 2D vizualizace - příklad ||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/elipsa_chyb.pdf Vykreslení a výpočet parametrů středních elips chyb (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/cov_mat.txt cov_mat.txt]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/elipsy/sour.txt sour.txt]
| |
| |-
| |
| | 1.4. || 3D vizualizace - regulární data||
| |
| |-
| |
| | 8.4. || 3D vizualizace - neregulární data ||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/21.pdf Biharmonic Spline (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/tach.txt souřadnice (TXT)]
| |
| |-
| |
| | 15.4. || 3D vizualizace - cvičení ||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/srtm/srtm-zadani.pdf zadání (PDF)]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/srtm/srtmCR.10.asc.bz2 srtmCR.10.asc.bz2]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/srtm/srtmCR.50.asc.bz2 srtmCR.50.asc.bz2]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/srtm/readESRIgrid.m readESRIgrid.m]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/srtm/Dataz-JTSK.txt Dataz-JTSK.txt]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/srtm/Dataz-ETRS.txt Dataz-ETRS.txt]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/srtm/hraniceCR.txt hraniceCR.txt]<br>
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/srtm/jtsk2geo.tgz jtsk2geo.tgz]
| |
| |-
| |
| | 22.4. || struktury, buňky, ukazatele na funkce||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/matlab-shrnuti4.pdf Shrnutí 4 (PDF)]
| |
| |-
| |
| | 29.4. || GUI - tlačítka, menu (uicontrol, uimenu, uicontextmenu)||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/cary2.m cary2.m]
| |
| |-
| |
| | 6.5. || Semestrální práce ||
| |
| |-
| |
| | 20.5. || Semestrální práce ||
| |
| |-
| |
| | 27.5. || Semestrální práce ||
| |
| |-
| |
| | 3.6. || Prezentace semestrálních prací ||
| |
| [http://slon.fsv.cvut.cz/vyuka/ls/psm/protokol.php odevzdání]
| |
| | |
| |-
| |
| |}
| |
| | |
| ====Semestrální práce====
| |
| '''Zadání''':
| |
| : Napište GUI aplikaci v programu Matlab dle zvoleného tématu. Každý soubor nechť obsahuje ve své úvodní části:
| |
| <source lang='matlab'>
| |
| %% Semestrální práce
| |
| %% Univerzita: České vysoké učení technické v Praze, Fakulta Stavební
| |
| %% Předmět: 151PSM - Programovací systém Matlab
| |
| %% Akademický rok: 2008/2009
| |
| %% Autor: Jméno Příjmení
| |
| </source>
| |
| | |
| :Hlavní funkce nechť obsahuje nápovědu, která stručně charakterizuje možnosti a využití aplikace.
| |
| | |
| :Termín pro odevzdání finální verze je 3. 7. 2009.
| |
| | |
| === Zimní semestr 2008/2009===
| |
| * Práce se seznamem souřadnic.
| |
| ::[http://slon.fsv.cvut.cz/vyuka/zs/psm/Dataz-JTSK.txt Dataz-JTSK.txt]
| |
| ::[http://slon.fsv.cvut.cz/vyuka/zs/psm/matlab-shrnuti1.pdf Úvod do Matlabu - Shrnutí 1 (PDF)]
| |
| * Zpracování měření ve skupinách
| |
| ::[http://slon.fsv.cvut.cz/vyuka/zs/psm/meas_dir11.txt měřené směry.txt]
| |
| ::[http://slon.fsv.cvut.cz/vyuka/zs/psm/matlab-shrnuti2.pdf Úvod do Matlabu - Shrnutí 2 (PDF)]
| |
| * Výpočet a vykreslení charakteristik přesnosti bodu (indexování, Handle Graphics, funkce, vektorizace)
| |
| ::[http://slon.fsv.cvut.cz/vyuka/zs/psm/elipsa_chyb.pdf Zadání(PDF)]
| |
| ::[http://slon.fsv.cvut.cz/vyuka/zs/psm/cov_mat.txt cov_mat.txt]
| |
| ::[http://slon.fsv.cvut.cz/vyuka/zs/psm/sour.txt sour.txt]
| |
| ::[http://slon.fsv.cvut.cz/vyuka/zs/psm/protokol.php odevzdání úlohy]
| |
| * Numerické metody řešení rovnic (metoda půlení intervalu)
| |
| :: function handle, iterace
| |
| * 3D vizualizace
| |
| :: prostorové čáry, vizualizace regulárních dat (mesh, surf)
| |
| | |
| * Zápočtový test
| |
| ** [http://slon.fsv.cvut.cz/vyuka/zs/psm/protokol.php odevzdání testu]
| |
| | |
| ==Tipy==
| |
| ===Vytvoření "stand alone" aplikace z m-souboru===
| |
| ;Překlad
| |
| * je zapotřebí mít nainstalován Matlab Compiler
| |
| * překlad se prování např. příkazem <code>mcc -m hlavni_funkce.m -a ./adresar_dalsich_funkci</code>
| |
| * přípravu projektu a překlad je také možné provést pomocí aplikace <code>deploytool</code>
| |
| ;Spuštění
| |
| * na počítači, kde není nainstalován Matlab je nutné nainstalovat Matlab Compiler Runtime. Spustitelný soubor, který zajistí instalaci je umístěn v adresáři instalace Matlabu <code>matlab/toolbox/compiler/...</code> pod názvem <code>MCRInstaller.bin</code> nebo <code>MCRInstaller.exe</code>.
| |
| | |
| ==Semestrální práce==
| |
| [http://slon.fsv.cvut.cz/websvn/listing.php?repname=matlab-semestralni_prace&path=%2F&sc=0 Repositář semestrálních prací]
| |
| | |
| Témata:
| |
| * Načítání a zobrazování dat SRTM ve formátu ESRI grid - Vojtěch Hron
| |
| * Grafické znázornění přesnosti bodu určeného několika základními geodetickými úlohami - Lucie Prunarová
| |
| * Interpolace dvourozměrných dat (polynomy, splajny) - Luboš Truhlář
| |
| * Digitální model terénu - vrstevnice - Marin Řehák
| |
| * Načítání a zobrazování výsledků ve formátu XML z programu GNU Gama - Zdeněk Růžička
| |