% ******************* MATEMATICKÝ SEMINÁŘ č. 1 ************************
% 1.1. ZÁKLADNÍ INFORMACE O SYSTÉMU MATLAB
% 1.2. PŘÍKAZOVÁ SYNTAXE SYSTÉMU MATLAB
% 1.3. PŘÍKAZY PRO SPOLUPRÁCI S OPERAČNÍM SYSTÉMEM
%
% Copyright (C) 1996-2003 by V. Veselý (Masaryk University Brno, Czech Republic)
%
% Dávka je kompletně upravena pro menu-systém.

echo on
more off
format compact
clc

%======================================================================
% 1.1. ZÁKLADNÍ INFORMACE O SYSTÉMU MATLAB
%----------------------------------------------------------------------
%% SPUŠTĚNÍ: matlab (pod X-windows) 
%%           kliknutím na ikonu MATLABu (pod MS Windows)
%% UKONČENÍ: exit | quit
%%
%% info     ... firemní informace
%% hostid   ... identifikační číslo hostitelského serveru
%% keyboard ... klávesnicový režim pro procvičení příkazů,
%%              ukončuje se VYPSÁNÍM příkazu return
%% demo     ... demonstrační ukázky
demo
keyboard

%% doc | helpdesk ... hypertextový manuál k MATLABu    
%% helpwin        ... okénkový manuál k MATLABu         
%% help           ... výpis toolboxů připojených dle MATLABPATH 
%%                    "toolbox" je tematicky zaměřená knihovna příkazů 
%% help toolbox   ... seznam příkazů v toolboxu podle souboru Contents.m
%%                    (lze zadat i adresářovou cestou)
%% help příkaz    ... nápověda k příkazu (m-soubor)
%% help help      ... nápověda k příkazu help
%% help operátor  ... nápověda k maticovému operátoru, např. help * nebo    
%%                    lépe help mtimes                                      
%%
%% Pod Windows je účelné použít menu Help
doc                                   
keyboard

%% what          ... výpis seznamu souborů .m, .mex a .mat v běžném adresáři
%% what toolbox  ... výpis seznamu souborů .m, .mex a .mat v toolboxu
%% type prikaz   ... výpis m-souboru tohoto příkazu
%%                   (textový soubor s příponou .m)
%% type soubor   ... výpis libovolného textového souboru (implic. přípona .m)
what
what stats
keyboard

%% more on | more off | more ... zapne | vypne | přepne stránkování na displej
%% more(n)    ... nastaví počet řádků stránky na n
%% format typ ... nastaví formát výstupu na displej  
%%
%% pod WINDOWS lze použít menu File>Preferences>General               
help format
keyboard

%% ver              ... informace o instalované verzi MATLABu
%% ver toolbox      ... informace o instalované verzi toolboxu
%%                      (viz příslušný soubor Contents.m)
%% whatsnew         ... aktuální informace o MATLABu
%% whatsnew toolbox ... aktuální novinky o toolboxu
%% type Readme      ... co je nového v poslední verzi MATLABu        
ver
pause
whatsnew stats
keyboard;

%% lookfor heslo ... vyhledá všechny m-soubory, jejichž 1. řádek nápovědy
%%                   obsahuje uvedené heslo
%%
%% which příkaz  ... vypíše celou cestu do toolboxu obsahujícího příkaz
lookfor roots
pause
which poly
which inv
keyboard

%======================================================================
% 1.2. PŘÍKAZOVÁ SYNTAXE SYSTÉMU MATLAB
%----------------------------------------------------------------------
%% * Příkazová řádka:
%%
%%   příkaz_1, příkaz_2, příkaz_3, ... , příkaz_n [,] % Komentářový text
%%           ;         ;         ;     ;           ;
%%
%%   Příkazy se postupně provádí zleva doprava.
%%   Oddělovač za příkazem: čárka    (,) => výpis výstupu příkazu na obrazovku
%%                          středník (;) => výpis výstupu je potlačen
%%
%% * Dlouhý příkaz může pokračovat na dalším řádku na rozhraní syntaktické
%%   jednotky, kde vložíme tři tečky (...) - v interaktivním režimu se mohou
%%   vynechat.    
%%
%% * Typy příkazů: !příkaz OS
%%                 v=maticový výraz
%%                 [v1,v2,...]=jméno_funkce(p1,p2,...)
%%                 jméno_dávky
%%
%%   jméno_funkce (tzv. funkční m-soubor) i jméno_dávky (tzv. script m-soubor)
%%   jsou textové soubory s povinnou příponou .m.
%%   Funkce na rozdíl od dávky umožňují předávat vstupní a výstupní parametry.
%%   Vynecháme-li levou stranu přiřazovacího příkazu (včetně =), pak
%%   výsledek v, resp. v1 se automaticky uloží do proměnné ans (answer).
%%
%% * Výstupem může být i textová matice. Její prvky se chápou jako ascii kódy
%%   odpovídajících znaků.
%%   Zejména textový řetězec 'nějaký text' je řádkový vektor obsahující kódy
%%   znaků uvedených mezi ohraničujícími apostrofy.
%%   Příkladem takových výstupů mohou sloužit některé příkazy z následující
%%   části.
%%
%% * Jestliže chybí levá strana a všechny vstupní parametry p1,p2,... jsou
%%   textové řetězce, je možno funkci volat v tzv. příkazové formě, kdy
%%   závorky vynecháme a parametry oddělujeme mezerami:
%%   jméno_funkce p1 p2 ...,
%%   přičemž apostrofy v zápisu p1, p2, ... lze vynechat, pokud řetězce
%%   neobsahují mezeru, čárku, středník ani levou závorku.

% příkaz OS vypisující seznam automaticky prohledávaných adresářů.
!path 
keyboard

%======================================================================
% 1.3. PŘÍKAZY PRO SPOLUPRÁCI S OPERAČNÍM SYSTÉMEM
%----------------------------------------------------------------------
%% Nastavení parametrů pro řádkovou editaci: cedit
%% viz help cedit
%%
%% Volba typu terminálu: terminal
%% viz help terminal
%%
%% Verze MATLABu: version
%%
%% Kořenový adresář instalace matlabu: matlabroot
%%
%% Údržba seznamu připojených knihoven v tzv. MATLABPATH:
%% path | path(novy_seznam) ... výpis starého seznamu | nastavení nového 
%%                              seznamu
%% path(stary_seznam,adresar_pripojovaneho_toolboxu) ... připojení na konec
%% path(adresar_pripojovaneho_toolboxu,stary_seznam) ... vložení na začátek
%% Funkce se hledají v toolboxech v pořadí jak jsou uloženy v MATLABPATH
%%
%% Pod MS WINDOWS lze pro práci se seznamem MATLABPATH použít 
%% "Path Browser", který je dostupný jednak jako nástroj "Path Browser" 
%% na "toolbaru", jednak přes menu File>SetPath
t=version
u=matlabroot
pause;
  path
pause;
%pro editaci cest vyzkoušejte Path Browser z menu File/SetPath
keyboard; 

%% Nastavený (aktuální) adresář: pwd | cd
%%
%% Pod MS WINDOWS lze pro nastavení aktuálního adresáře použít    
%% "Path Browser"    
%%
%% Změna adresáře: cd (standardní příkaz MS DOS)
%% Výpis obsahu adresáře: dir | ls
%% Výpis hodnoty environment proměnné operačního systému: getenv
%%
%% Cesta do systémového adresáře pro ukládání pracovních (dočasných) 
%% souborů: tempdir
%%
%% Jedinečné jméno vhodné pro vytvoření pracovního souboru, který bude
%% po výstupu z MATLABu automaticky zrušen: tempname

pwd
ls
dir
pause
  getenv PATH                            
  v=getenv('PATH')
pause
v=tempdir
v=tempname
keyboard;  

%% Libovolný příkaz OS: !prikaz | dos(prikaz) v MS WINDOWS 
%%                      !prikaz | unix(prikaz) v UNIXU
%%
%% Příklady:
%% UNIX    :  Vyvoláme např. editor joe:  !joe zrusmne.txt 
%% WINDOWS :  Vyvoláme např. editor notepad:                       
%%             !notepad zrusmne.txt | !notepad zrusmne.txt & |   
%%            dos('notepad zrusmne.txt') | dos('notepad zrusmne.txt &')
%%
%%            Při použití znaku & je třeba uzavřít DOS-ovské okno pomocí 
%%            příkazu EXIT                                          
% Podle systému, pod kterým pracujete, vyzkoušejte příklad.
keyboard;

%% Ovládání kurzoru příkazového okna: příkazy clc a home,
%% jejich chování je závislé na operačním systému, tedy viz help. 
%%
%% Zápis do žurnálu: zapíše vše, co se odehrávalo v okně MATLABu do souboru.
%% diary soubor   ... otevře soubor pro žurnál
%% diary off      ... uzavře soubor se žurnálem
%% diary on | diary off | diary    
%%       ... otevře | uzavře | přepne stav  pro soubor s předchozím žurnálem
%%           (implicitní jméno souboru je "diary")
diary zrusme.txt % započne se zápisem
a=50;
b=60
c=a+b
diary % ukončí zápis
d=a-b
pause; 
% teď si prohlédneme soubor zrusme.txt
type zrusme.txt
% a smažeme ho:
delete zrusme.txt
keyboard;  % Vyzkoušejte

%================================= KONEC ==============================
%
%----------------------------------------------------------------------
%%
echo off
