You are on page 1of 5

Ismerkeds a Matlabbal

Kzelt s szimbolikus szmtsok I. gyakorlat

Antal Elvira

A programrl
A Matlab egy tudomnyos szmtsokra specializldott programrendszer. Neve a Matrix Laboratory kifejezsbl kpzett mozaiksz, ami arra utal, hogy a program alapvet adattpusa a mtrix. A program felptsben tbb szintet rdemes megklnbztetni, nagyon leegyszerstve:

A legtbb funkcit az interaktv parancssorbl rhetjk el, ugyanakkor sok toolbox biztost knyelmes grakus felletet is, s a legalapvetbb vezrl utastsok grakus s parancssoros elrssel is lehetsgesek (munkaknyvtr vltsa, segtsgkrs, stb.). A parancssorban az utastsokat vgre

Enter

zrja, a Command History-ban eltrolt utastsok

kztt a kezdkarakterek begpelsvel s a fl-le nyilakkal kereshetnk. Ha egy utasts

;-t

runk, akkor a vgrehajts eredmnyt nem rja ki a program. Egy utastsso-

rozat vgrehajtst a kd mg vgigfut!). Elrhetsg:

CTRL+c

billentykombincival lehet felfggeszteni (az elkezdett C

a Kabinet gpein otthonrl ssh-val a

linux.inf.u-szeged.hu

szerverre bejelentkezve (a parancssor

X terminl nlkl is hasznlhat!) szabad szoftveres alternatvk: Octave, Scilab, . . .

Opertorok
Aritmetikai opertorok: Logikai opertorok:

+ *

sszeads kivons mtrix szorzs elemenknti szorzs

~ & |

nem elemenknti s elemenknti vagy s vagy

.* /

&& ||

jobboldali mtrix oszts jobboldali elemenknti oszts

./ \

baloldali mtrix oszts baloldal elemenknti oszts

Relcis opertorok:

.\ ^

< >

kisebb nagyobb kisebb egyenl nagyobb egyenl egyenl nem egyenl

hatvnyozs elemenknti hatvnyozs

.^ '

<=
konjuglt

algebrai transzponls (komplex szmok esetn komplex transzponlt)

>= == ~=

.'

tmb transzponls (komplex szmok esetn nincs konjugls)

Alapvet utastsok
Matematikai fggvnyek:

abs sqr sqrt exp log min, max sum, prod sin, cos, tan, cot round, fix, floor, ceil

abszoltrtk ngyzetre emels gykvons exponencilis fggvny termszetes logaritmus rtkek minimuma, ill. maximuma rtkek sszegzse, ill. sszeszorzsa trigonometrikus fggvnyek kerekts egszre, levgs egszre, als, ill. fels egszrsz

Konstansok, beptett vltozk:

ans pi

answer: az utoljra vgrehajtott utasts eredmnye a p kzeltse s

-inf, -Inf s inf, Inf nan, NaN eps realmin (realmax) intmin (intmax)

szimbluma

not a number szimbluma (0/0, letek eredmnye

0*Inf, Inf/Inf tpus mve-

epszilon: az adott szoftverkrnyezetben brzolhat legkisebb, nullt kvet szm az adott szoftverkrnyezetben brzolhat legkisebb (legnagyobb) vals szm az adott szoftverkrnyezetben brzolhat legkisebb (legnagyobb) egsz szm

Szmok generlsa:

rand a:i:b linspace(a,b,n) zeros, ones eye


Segtsgkrs:

vletlenszm-genertor sorozat generlsa

a-tl b-ig, i

lpskzzel

elem sorozat generlsa

a-tl b-ig

csupa

0,

ill. csupa

mtrix generlsa

egysgmtrix generlsa

help help tema/fuggvenynev lookfor kulcsszo helpwin which ismeretlen

minden elrhet segtsgoldal listzsa rszletes sg adott tmban/adott fggvny mkdsrl kulcsszhoz kapcsold segtsgoldalak listja a segtsget kln grakus ablakban nyitja meg rvid informci

ismeretlenrl (pl. ismeretlen egy vltoz,

egy beptett fggvny, stb.)

Munkamenetre vonatkoz utastsok:

ver who, whos

a Matlab alaprendszer s a teleptett toolboxok verziszma a munkaterleten lev vltozk listja (utbbi rszletesebb)

home, clc format


Idmrs:

kurzor bal fels sarokba kldse, parancsablak trlse output formtumnak szablyozsa, pl.

format long, format short

tic s toc cputime clock

stopper indtsa s lelltsa az aktulis munkamenet indtsa ta eltelt id msodpercekben aktulis naptri dtum s id lekrse

Vltozk
A Matlab vltozk az els rtkadskor deklarldnak, rtket adni a vltozt trlni a

clear valtozonev

(teljes munkaterletet a

valtozonev=ertek, clear) utastssal lehet.

Elnevezsre vonatkoz szablyok:

a vltoznevek kezet nlkli betket, szmjegyeket s alhzsjeleket tartalmazhatnak minden nv els karaktere egy bet kell legyen a kis- s nagybetk klnbznek a maximlis hossz ltalban 63 karakter, de az aktulis programverzira vonatkoz rtket a

namelengthmax

fggvnnyel le lehet krni

Vigyzat! A beptett fggvnyek nevvel is lehet vltozkat denilni. Ebben az esetben


addig nem tudjuk az adott fggvnyt meghvni, amg a hasonl nev vltozt nem trljk a munkaterletrl.

Mtrixok kezelse
Deniljuk a kvetkez mtrixot: Legegyszerbb megolds Matlabban:

A=

1 2 3 4 5 6
oszlopok elvlasztsa sorok elvlasztsa a mtrix a mtrix

A=[1 2 3; 4 5 6]

, vagy space ; vagy sortrs mtrix(n,m) mtrix(q) size(mtrix)

n. q.

sorindex s

m.

oszlopindex elemnek elrse

index elemnek elrse (oszlopfolytonos trols!)

mtrix mretnek lekrdezse (vlasz: sor s oszlopdimenzi)

length(mtrix) diag(vektor) diag(mtrix) tril, triu

vektor mretnek lekrdezse (mtrixra: legnagyobb dimenzi) diagonlis mtrix generlsa vektorral a ftlban diagonlis kinyerse egy vektorba als, ill. fels triangulris rsz kinyerse

Egy mtrix elemeinek indexelshez hasznlhatunk vektorokat is!

Grakus megjelents
plot, plot3 fplot mesh, surf ezplot, ezsurf
2D, ill. 3D adatsorok brzolsa 2D fggvnyek brzolsa 3D felletek brzolsa 2D fggvnyek, ill. 3D felletek brzolsa (ez=easy, vagyis knnyen)

Feladatok
1. Mit r ki az deniltuk? 2. Hozz ltre egy oszlopvektort kzkkel! 3. A 4. A 5. A 6. A

A(2,2:3)

utasts, ha az

mtrixot az elz oldalon ltott mdon

nven, ami 0-tl 10-ig tartalmaz szmokat, 0.1-es

b c d e

oszlopvektorba szmold ki az oszlopvektorba szmold ki az oszlopvektorba szmold ki az oszlopvektorba szmold ki az

a a a a

elemeinek ngyzett! elemeinek kettes alap logaritmust! elemeinek tizes alap logaritmust! elemeinek termszetes logaritmust!

7. brzold az eddig ltrehozott vektorokat az

fggvnyben, egy kzs brn!

8. Mdostsd az brt gy, hogy a logaritmusfggvnyek megjelentse folytonos vonal helyett az adatpontok jellsvel trtnjen! 9. Kszts egy az

mtrixot, aminek els sora az

a,

msodik sora a

b,

. . . , tdik sora

elemeit tartalmazza!

10. Hozz ltre egy

vektort, ami a fggvnyek

a = 5-hz

tartoz rtkeit tartalmazza

(lehetleg egyetlen utastssal)! 11. Mi trtnik, ha a

mtrix msodik sorban megvltoztatom a

10. B

elem rtkt

200-ra?

Vltozik-e a korbban ltrehozott brn valami?

12. Generlj egy vektort, amelynek minden eleme brzold ezt is a kzs brn!

50,

fzd hozz a

mtrixhoz, s

You might also like