155GIT1 / 1. cvičení: Porovnání verzí

Z GeoWikiCZ
mBez shrnutí editace
mBez shrnutí editace
Řádek 112: Řádek 112:
== Úlohy ==
== Úlohy ==


* výpočet vzdálenosti mezi dvěma body
* [[155GIT1 / 1. cvičení / Příklady|1. cvičení - příklady]]
* výpočet vodorovné vzdálenosti
* obsah trojúhelníka ({{wikipedia|Heronův vzorec}})

Verze z 21. 2. 2017, 19:41

První seznámení s Matlabem a GNU Octave - proměnné, matice, vektory, indexování, skripty

Náplň cvičení

Grafické uživatelské rozhraní GNU Octave
  • nápověda, help, doc
  • skalární hodnoty
  • proměnné, pole, matice (dvourozměrné)
    • základní operace s proměnnými, inkrementace
    • vektor, sloupcový, řádkový
  • matice, dimenze, ukázka konzistence
  • vytváření skriptů
    • File -> New -> Script
    • spuštění: F5
    • výstup se vypisuje do Command Window

Ukázky

Tipy
  • Pokud je příkaz ukončen středníkem, tak hodnoty nevypisuje
  • Více příkazů lze v jedné řádce oddělit čárkou anebo středníkem
  • Dlouhý příkaz lze rozdělit na více řádků pomocí ...
  • Pohyb v historii příkazů (klávesové šipky nahoru a dolu)
  • Doplňování příkazů pomocí klávesy TAB (dvojstisk)
  • Komentáře začínají znakem % (v Octave i znakem #) a jsou ukončeny koncem řádky
  • Rozsah numerických datových typů realmin, realmax
  • Textové řetězce jsou ohraničeny jednoduchými uvozovkami (v Octave i dvojitými uvozovkami)

Skalární hodnoty

(matice o dimenzi 1x1)

s = 1
c = 2.3   % pozor, nutno používat desetinnou tečku!
a = 3,9   % čárka odděluje příkazy

Základní matematické operace

(+, -, *, /, závorky, mocnina, odmocnina)

s = 1
t1 =  s + 4  * 2  % násobení (dělení) má prioritu před sčítáním (odčítáním); t1 = 9
t2 = (s + 4) * 2  % operátor závorka má vždy nejvyšší prioritu;              t2 = 10
u  = t1 / t2^2    % mocnina (odmocnina) má prioritu před +, -, *, /;          u = 0.09
v1 = t1^(1/2)     % zápis druhé odmocniny
v2 = sqrt(t1)     % druhá odmocnina pomocí interní matematické funkce Matlabu/Octave

Vektory

(řádkový vs. sloupcový)

 a = [3,2,5]
 b = [2;4;6]
 c = a*b
 a'
 a*a
 a*a'

Matice

(musí být obdélníková)

A = [1, 2, 3;3, 2, 1;-1, -2, -3]
B = [1, 2, 3; 4, 5; 6]

(náhodné hodnoty)

C = rand(3, 4)

(indexování)

A(1, 2)
A(4)

(násobení)

B = 2 * A
A*B
B'
A*B'

(dimenze)

rows(C)
columns(C)
length(C)
size(C)
[r, c] = size(C)

Úlohy