155GIT1 / 2. cvičení: Porovnání verzí
mBez shrnutí editace |
mBez shrnutí editace |
||
(Není zobrazeno 47 mezilehlých verzí od 2 dalších uživatelů.) | |||
Řádek 1: | Řádek 1: | ||
{{Geoinformatika}} | {{Geoinformatika}} | ||
{{Cvičení|155GIT1|2|Maticové a matematické funkce, speciální proměnné, operátory}} | {{Cvičení|155GIT1|2|Matlab - Maticové a matematické funkce, speciální proměnné, operátory}} | ||
== Náplň | == Náplň == | ||
# opakování | # opakování | ||
#* vytvoření a spuštění skriptů | #* vytvoření a spuštění skriptů {{bullet}} <code>edit</code>, <code>run</code> | ||
#* vytvořit proměnnou A o rozměrech [3x4] s náhodnými čísly od 0 do 9 | #* vytvořit proměnnou A o rozměrech [3x4] s náhodnými čísly od 0 do 9 | ||
#* vybrat třetí element z druhého řádku a vynásobit ho dvěma | #* vybrat třetí element z druhého řádku a vynásobit ho dvěma | ||
# | # speciální matice {{bullet}} <code>ones()</code>, <code>zeros()</code>, <code>eye()</code>, <code>rand()</code> | ||
#* náhodné přirozené číslo {{bullet}} <code>randi()</code> | |||
#* magický čtverec {{bullet}} <code>magic()</code> | |||
# maticové funkce {{bullet}} <code>diag()</code>, <code>det()</code>, <code>inv()</code>, <code>find()</code> | |||
#* | |||
#* | |||
# | |||
# relační a logické operátory | # relační a logické operátory | ||
# základní matematické funkce | # základní matematické funkce | ||
# | #* v matici - prvek po prvku {{bullet}} <code>abs()</code>, <code>sign()</code> {{bullet}} <code>exp()</code>, <code>log()</code> {{bullet}} zaokrouhlovací {{bullet}} goniometrické, <code>atan2(Y,X)</code> | ||
#* v matici - sloupcové {{bullet}} <code>min()</code>, <code>max()</code> {{bullet}} <code>sum()</code>, <code>prod()</code> {{bullet}} <code>mean()</code>, <code>median()</code> {{bullet}} <code>std()</code>, <code>var()</code> {{bullet}} <code>sort()</code> | |||
#* <code>sortrows()</code> | |||
== Ukázky == | == Ukázky == | ||
=== | === Maticové funkce a relační operátory === | ||
''( | * [http://geo.fsv.cvut.cz/vyuka/155git1/matlab/matlab.pdf#page=25 maticové funkce] | ||
* [http://geo.fsv.cvut.cz/vyuka/155git1/matlab/matlab.pdf#page=26 relační a logické operátory] | |||
''(ukázky použití maticových funkcí)'' | |||
<source lang=octave> | <source lang=octave> | ||
d = rand(1,4) | |||
D = diag(d) | |||
</source> | </source> | ||
<source lang=octave> | <source lang=octave> | ||
A = | A = -2 + 4*rand(4,3) % náhodné reálné hodnoty v rozsahu od -2 do 2 | ||
a = diag(A) | |||
A | a1 = diag(A,1) | ||
a2 = diag(A,-1) | |||
A | |||
A | |||
</source> | </source> | ||
<source lang=octave> | <source lang=octave> | ||
F = -1 + 3*rand(4) | |||
Fi = inv(F) % pouze pro čtvercovou matici | |||
F * Fi | |||
</source> | </source> | ||
<source lang=octave> | <source lang=octave> | ||
F>=0 | |||
find(F>=0) | |||
F( find(F>=0) ) | |||
F( find(F>=0) ) = 2 | |||
</source> | </source> | ||
=== Matematické funkce === | |||
* [http://geo.fsv.cvut.cz/vyuka/155git1/matlab/matlab.pdf#page=27 matematické funkce] | |||
''( | ''(ukázky použití matematických funkcí)'' | ||
<source lang=octave> | <source lang=octave> | ||
abs(A) | |||
sign(A) | |||
round([4.7 -6.7]) | |||
ceil([4.7 -6.7]) % zaokrouhluje k plus nekonečnu | |||
floor([4.7 -6.7]) % zaokrouhluje k minus nekonečnu | |||
fix([4.7 -6.7]) % celá část čísla | |||
round(A,2) | |||
e1 = exp(1) | |||
log(e1) | |||
' | B = randi([2 7],3,5) % náhodná přirozená čísla v rozsahu od 2 do 7 | ||
max(B) | |||
max(B') | |||
maxB = max(max(B)) | |||
Brad = sum(B') | |||
minBrad = min(Brad) | |||
ind = find(Brad == minBrad) % index řádku s nejmenším řádkovým součtem | |||
B(ind,:) % řádek s nejmenším řádkovým součtem | |||
= | data = [7.1 7.2 7.1 7.4] | ||
mean(data) | |||
std(data) / sqrt(length(data)) % střední chyba průměru | |||
sqrt( var(data) / length(data) ) % totéž | |||
sort(B) | |||
sort(B,2) | |||
sort(B,2,'descend') | |||
sortrows(B,1) % srovnání celých řádků podle hodnot v 1.sloupci | |||
</source> | |||
== Úlohy == | == Úlohy == | ||
* [[155GIT1 / 2. cvičení / Příklady|2. cvičení - příklady]] | |||
<!-- --> | |||
Aktuální verze z 1. 3. 2023, 20:17
Matlab - Maticové a matematické funkce, speciální proměnné, operátory
Náplň
- opakování
- vytvoření a spuštění skriptů •
edit
,run
- vytvořit proměnnou A o rozměrech [3x4] s náhodnými čísly od 0 do 9
- vybrat třetí element z druhého řádku a vynásobit ho dvěma
- vytvoření a spuštění skriptů •
- speciální matice •
ones()
,zeros()
,eye()
,rand()
- náhodné přirozené číslo •
randi()
- magický čtverec •
magic()
- náhodné přirozené číslo •
- maticové funkce •
diag()
,det()
,inv()
,find()
- relační a logické operátory
- základní matematické funkce
- v matici - prvek po prvku •
abs()
,sign()
•exp()
,log()
• zaokrouhlovací • goniometrické,atan2(Y,X)
- v matici - sloupcové •
min()
,max()
•sum()
,prod()
•mean()
,median()
•std()
,var()
•sort()
sortrows()
- v matici - prvek po prvku •
Ukázky
Maticové funkce a relační operátory
(ukázky použití maticových funkcí)
d = rand(1,4)
D = diag(d)
A = -2 + 4*rand(4,3) % náhodné reálné hodnoty v rozsahu od -2 do 2
a = diag(A)
a1 = diag(A,1)
a2 = diag(A,-1)
F = -1 + 3*rand(4)
Fi = inv(F) % pouze pro čtvercovou matici
F * Fi
F>=0
find(F>=0)
F( find(F>=0) )
F( find(F>=0) ) = 2
Matematické funkce
(ukázky použití matematických funkcí)
abs(A)
sign(A)
round([4.7 -6.7])
ceil([4.7 -6.7]) % zaokrouhluje k plus nekonečnu
floor([4.7 -6.7]) % zaokrouhluje k minus nekonečnu
fix([4.7 -6.7]) % celá část čísla
round(A,2)
e1 = exp(1)
log(e1)
B = randi([2 7],3,5) % náhodná přirozená čísla v rozsahu od 2 do 7
max(B)
max(B')
maxB = max(max(B))
Brad = sum(B')
minBrad = min(Brad)
ind = find(Brad == minBrad) % index řádku s nejmenším řádkovým součtem
B(ind,:) % řádek s nejmenším řádkovým součtem
data = [7.1 7.2 7.1 7.4]
mean(data)
std(data) / sqrt(length(data)) % střední chyba průměru
sqrt( var(data) / length(data) ) % totéž
sort(B)
sort(B,2)
sort(B,2,'descend')
sortrows(B,1) % srovnání celých řádků podle hodnot v 1.sloupci