ÚSTAV MECHANIKY
FAKULTY STROJNÍ
ČVUT |
|
AKADEMICKÝ ROK 1999/2000
ZÁKLADNÍ INFORMACE PRO PRÁCI V PROSTŘEDÍ
MATLAB
Aktuální verze tohoto
dokumentu je uložena na adrese http://mech.fsik.cvut.cz/matlab/matlab_fs.html (vytvořeno 5.10.99).
MATLAB POD LINUXEM
V počítačových
místnostech FS ČVUT je prostředí MATLABu přístupné pod operačním systémem LINUX.
MATLAB zde pracuje na základě sdílené plovoucí multilicence. Výuka mechaniky s
použitím MATLABu probíhá v počítačové místnosti na Karlově náměstí v druhém
patře budovy G (místnost G23). Pro tuto učebnu platí následující cesta ke
spuštění MATLABu.
- Po zapnutí počítače a objevení volby režimů
zvolíme do 20 sekund variantu (3) LINUX
!
- Jako login zvolíme vyuka .
- Pro start napíšeme startx.
- Při počátku práce se objeví okno MATLABu
automaticky. Pokud je z nějakého důvodu během práce MATLAB zavřen, spustíme
nejprve xterminál (v hlavním menu nahoře) a v jeho
příkazové řádce potom napíšeme matlab.
Tím se okno MATLABu znovu obnoví.
Proběhne-li úspěšně inicializace a spojení s licenčním
serverem ohlásí se příkazová řádka MATLABu:
»
ŠIROKÉ APLIKAČNÍ MOŽNOSTI
MATLAB umožňuje pomocí velmi jednoduchých příkazů
(blízkých běžnému symbolickému zápisu) aplikovat širokou škálu matematických
operací. Mimo toho prostředí MATLABu zahrnuje nástroj pro simulaci dynamických
systémů SIMULINK, v němž je model zadáván pomocí blokových schemat. Speciální
problematika je pak řešena pomocí mnoha tzv. Toolboxů (pro symbolickou
matematiku, pro syntézu algoritmů řízení, pro řešení parciálních
diferenciálních rovnic apod.). Několik z
nich je zahrnuto i ve zmíněné multilicenci. Pro celkový přehled o prostředí a
jeho možnostech lze spustit DEMO:
» demo <enter>
ON-LINE MANUÁL - HELP
Vysvětlení příkazů
MATLABu je strukturováno do jednotlivých skupin a podskupin od základních
matematických operací přes lineární algebru, řešení algebraických a
diferenciálních rovnic až po funkce výstupu a vizualizace výsledků.
Základní nejvyšší strukturu HELPu uvidíme po
zapsání příkazu:
» help <enter>
Dále lze dotaz upřesňovat až po popis
jednotlivých příkazů (např.):
»help elfun
<enter>
»help exp <enter>
PRACOVNÍ PROSTOR A AKTUÁLNÍ
ADRESÁŘ
Po spuštění MATLABu se paralelně
vytvoří tzv. pracovní prostor (workspace), v němž jsou uloženy všechny proměnné
vytvořené během práce s MATLABem. Obsah pracovního prostoru můžeme zjistit
příkazem:
»whos <enter>
Aktuální pracovní adresář pak můžeme zjistit
pomocí příkazu :
»pwd <enter>
ZÁKLADNÍ PROMĚNNÉ A MATEMATICKÉ
OPERACE
U názvů proměnných je možné
používat písmena, číslice a podtržítka. POZOR, MATLAB odlišuje velká a
malá písmena !!
»E = 30000;
»area_1 = 3;
»length_1 = 120;
»k_1 = E*area_1 / length_1
Značení základních algebraických operací
je standardní:
10+8+6
25-4
11*0.9
17/2
MATLAB JE MATICOVĚ
ORIENTOVÁN
Vektory a matice se zadávají
pomocí hranatých závorek. Středníky oddělují řádky. Symbol procent % znamená poznámku, MATLAB text za tímto znakem
ignoruje.
Příklad:
x = [ 1 2 3 4 ]% řádkový
vektor
x = [ 1; 2; 3; 4 ]% sloupcový
vektor
x = (1:5)
x = (3:-1:1)
A = [ 1 2 3; 4 5 6 ; 7 8 9]% čtvercová
matice 3 na 3
y = [ 5 6 7 ]
z = [ x y ] % skládání vektoru ze dvou
stávajících
z = [ x y ; y x ]
z'% Transpozice matice
Všechny operace jsou primárně interpretovány
maticově. Násobení, sčítání apod. je přípustné pouze v souladu s pravidly o
násobení/sčítání matic.
x = [ 1 2 3 4 ]; y=[1;2;3;4];
x*y=30;%avšak
y*x=[1 2 3 4
2 4 6 8
3 6 9 12
4 8 12 16]
PŘÍPRAVA OPERACÍ V M-SOUBORECH
Vkládání operací řádek po řádku obvykle není příliš
vhodné, zejména u delších příkazových sekvencí. Velmi často potřebujeme v
MATLABu sestavit vlastně celý výpočetní program, který musíme nejdříve odladit a
potom uchovat pro další použití. Základní cestou je vytváření tzv. m-souborů
(*.m) v pracovním adresáři. V našem případě použijeme k vytvoření takovéhoto
souboru některý v LINUXu přístupný editor, například NEDIT. Tento editor lze
nejjednodušeji spustit přímo z příkazové řádky MATLABu.
»!nedit <enter>
PS. Nevynechte vykřičník
Vytvořme tedy například soubor example.m podle
následujícího vzoru. Jednotlivé kroky jsou komentovány, a tak umožňují seznámení
s dalšími příkazy MATLABu. Je potřeba dbát na to, aby byl soubor vytvořen v
aktuálním pracovním adresáři MATLABu (zjistíme příkazem pwd viz výše).
clear % vyčištění pracovního
prostoru
K = zeros(4,4);% vytvoření nulové
matice rozměru 4 na 4
k = 1;
k_el=[ k+k, -k; % vytvoření matice
k_el
-k, k ];
K( 1:2,1:2 ) = k_el; %vkládání matice
k_el do matice K
K( 2:3,2:3 ) = k_el;
K( 3:4,3:4 ) = k_el;
K - K' % kontrola symetričnosti matice
K
det(K) % kontrola regulárnosti matice
K
P = 0.25: 0.25 : 1;
P = P';% příprava pravé strany
soustavy lineárních rovnic
U = K\P; % řešení soustavy lineárních
rovnic K*U=P
U = inv(K)*P; % alternativně lze
provést také takto pomocí inverze matice
eigenvalues_of_K = eig( K );% výpočet
vlastních čísel matice
strain_energy =1/2* U'*K*U% výpočet
kvadratické formy (výsledkem je skalár )
Takovouto sekvenci příkazů tedy uložíme v
editoru jako soubor example.m. Provedení sekvence zajistíme napsáním jména
m-souboru do příkazové řádky MATLABu.
»example <enter>
Výsledky řádků zakončených středníkem nebudou
při provádění zobrazovány, v pracovním prostoru však budou do vymazání, přepsání
či zakončení práce s MATLABem uchovány. Obsah proměnné z pracovního prostoru
zobrazíme zadáním jména proměnné bez středníku.
»U <enter>
VIZUALIZACE VÝSLEDKŮ V MATLABU
Při práci s MATLABem lze použít bohaté možnosti 2D i 3D
zobrazení výsledků. Nejjednodušší případ je zobrazení funkční závislosti pomocí
příkazu plot.
x = (1:20)'
y=exp(x)
plot(x,y)%příkaz
kreslení
xlabel('x')%popis osy x
ylabel('y')%popis osy y
figure %definice prostoru pro nový
obrázek
PODROBNĚJŠÍ INFORMACE O
MATLABU
Těchto několik řádek informací
Vám může pomoci při prvním setkání s MATLABem. Jelikož se jedná o interaktivní
prostředí, nejlepší cesta k jeho dalšímu poznání vede přes aktivní práci s ním.
Velkým pomocníkem Vám bude dobře zpracovaný systém on-line helpů. Mimo vlastního
experimentování můžete získat další informace na www adresách :
Mimo těchto možností a manuálů MATLABu
existuje ještě v českém jazyce stručná brožurka Balda M.: Uvod do Matlabu.
Vydavatelstvi ZCU Plzen, Plzen 1998
MNOHO ŠTĚSTÍ A NOVÝCH POZNATKŮ PŘI PRÁCI S
MATLABEM PŘEJE KOLEKTIV PEDAGOGŮ ODBORU MECHANIKY TĚLES ÚSTAVU MECHANIKY FAKULTY
STROJNÍ ČVUT !!