%% Uvod do Matlabu 1
%% Matice, vektory, promenne apod.
% (Jednotlive prikazy spustime F10, celou sekci Ctrl+Enter, vsechno F5)

A=[1,-1,2,-3; 3,0,4,5]
% takhle se pisi poznamky
A1=[1 -1 1 -3; 3 0 4 5] % stejna matice jako predtim, misto carek jsou mezery
u=[1 2 3 4]
v=[-1;-2;-3]
pi           % znama konstanta, vysledek je v promenne oznacene 'ans'
x=-2*pi;     % ciselna promenna
C=[x,x;-x,x] % matici vytvorime s pouzitim definovane promenne

%
%% Format zobrazeni vystupu

x=2/7;
format long
x
format rat
x
format short
x

%
%% Nektere dulezite matice

E4=eye(4)     % jednotkova matice radu 4
E3=eye(3);    % vysledek se nezobrazi kvuli stredniku na konci prikazu
O=ones(3)     % matice samych jednicek
O1=ones(3,5) % obdelnikova matice samych jednicek
Z=zeros(2,3)  % nulova matice
Em=[]         % prazdna matice
Em1=ones(0,0) % taky prazdna matice
u1=1:4        % vektor s rovnomerne rostoucimi slozkami
u2=1:0.5:4
u3=linspace(1,4,7) % totez jako u2
u4=4:-1:1

%
%% Prvky matic a submatice

A           % puvodni matice
A(1,2)      % prvek na dane pozici
A(:,3)      % treti sloupec
A(:,end)    % posledni sloupec
A(2,:)      % druhy radek
A(1,[2,4])  % prvni radek, druhy a ctvrty sloupec
A(:,[4 3 2 1]) % sloupce v opacnem poradi
A(1:end,1:end) % cela matice
A(5)        % prvek na 5. pozici brano postupne po sloupcich
A(:)        % trik - cela matice do sloupce (po sloupcich)
C(3,5)=1    % trik - matice se zvetsi a na ostatnich pozicich doplni 0
D(4,4)=0    % stejny vysledek by dal prikaz D=zeros(4)

%
%% Spojovani matic a vektoru

A,u     % drive definovane promenne
[A,A]   % matici dame dvakrat za sebe
[A;A]   % matici dame dvakrat pod sebe
[A;u]   % vektor dame pod matici

%
%% Nahodne matice

R1=rand(4)      % nahodna ctvercova matice s prvky rovnomerne mezi 0 a 1
R2=rand(3,5)    % nahodna obdelnikova matice s prvky rovnomerne mezi 0 a 1
r1=rand(1,8)    % nahodny vektor s prvky rovnomerne mezi 0 a 1
r2=randn(1,8)   % nahodny vektor s normalne rozlozenymi prvky
R3=randi(10,3)  % celociselna nahodna ctvercova matice s prvky od 1 do 10
R4=randi([-5,5],2,6) % obdelnikova celociselna nahodna matice s prvky od -5 do 5

%
%% Zakladni funkce s maticemi

s=size(R2)     % rozmery matice
m=size(R2,1)   % pocet radku
n=size(R2,2)   % pocet sloupcu
[m,n]=size(R2) % pocet radku i sloupcu
rank(R1)       % hodnost
det(R1)        % determinant
inv(R3)        % inverzni matice
R3^-1          % totez
sin(R4)        % funkce se zpravidla aplikuji na jednotlive slozky
cos(R4)
exp(R4)
abs(R4)
log(R3)     % prirozeny logaritmus, proc nebyl pouzit na R4?