% vyhledání prvku s max. velikostí v jednotlivých sloupcích matice X

Podobné dokumenty
PPEL_3_cviceni_MATLAB.txt. % zadat 6 hodnot mezi cisly 2 a 8 % linspace (pocatek, konec, pocet bodu)

- transpozice (odlišuje se od překlopení pro komplexní čísla) - překlopení matice pole podle hlavní diagonály, např.: A.' ans =

pi Ludolfovo číslo π = 3,14159 e Eulerovo číslo e = 2,71828 (lze spočítat jako exp(1)), např. je v Octave, v MATLABu tato konstanta e není

PPEL_4_cviceni_MATLAB.txt. % 4. cvičení z předmětu PPEL - MATLAB. % Lenka Šroubová, ZČU, FEL, KTE %

KTE / PPEL Počítačová podpora v elektrotechnice

Systém je citlivý na velikost písmen CASE SENSITIVE rozeznává malá velká písmena, např. PROM=1; PROm=1; PRom=1; Prom=1; prom=1; - 5 různých proměnných

KTE / PPEL Počítačová podpora v elektrotechnice

KTE / PPEL Počítačová podpora v elektrotechnice

Stručný návod k programu Octave

Příklad: Součet náhodných čísel ve vektoru s počtem prvků, které zadá uživatel, pomocí sum() a pomocí cyklu for. Ověříme, že příliš výpisů na

Lineární algebra s Matlabem cvičení 3

KTE / PPEL Počítačová podpora v elektrotechnice

X37SGS Signály a systémy

Kreslení grafů v Matlabu

Příklad: Řešte soustavu lineárních algebraických rovnic 10x 1 + 5x 2 +70x 3 + 5x 4 + 5x 5 = 275 2x 1 + 7x 2 + 6x 3 + 9x 4 + 6x 5 = 100 8x 1 + 9x 2 +

více křivek v jednom grafu hold on přidrží aktuální graf v grafickém okně, lze nakreslit více grafů do jednoho grafického okna postupně hold off

Základy algoritmizace a programování

maticeteorie 1. Matice A je typu 2 4, matice B je typu 4 3. Jakých rozměrů musí být matice X, aby se dala provést

plot(c,'o') grid xlabel('re') ylabel('im')

KTE / PPEL Počítačová podpora v elektrotechnice

výsledek 2209 y (5) (x) y (4) (x) y (3) (x) 7y (x) 20y (x) 12y(x) (horní indexy značí derivaci) pro 1. y(x) = sin2x 2. y(x) = cos2x 3.

Základy algoritmizace a programování

Grafické výstupy v Octave/Matlabu a GnuPlotu

Příklady k prvnímu testu - Matlab

MODAM Popis okna. 2 Jana Bělohlávková, Katedra matematiky a deskriptivní geometrie, VŠB - TU Ostrava

1. LINEÁRNÍ ALGEBRA Vektory Operace s vektory... 8 Úlohy k samostatnému řešení... 8

Úvod do práce s Matlabem

KTE / PPEL Počítačová podpora v elektrotechnice

při vykreslování křivky je důležitá velikost kroku, příp. počet prvků, ve vektoru t (na ose x). t = linspace(0,2*pi,500); y = sin(t); t =

Seminář z MATLABU. Jiří Krejsa. A2/710 krejsa@fme.vutbr.cz

cyklus s daným počtem opakování cyklus s podmínkou na začátku (cyklus bez udání počtu opakování)

MATEMATIKA II - vybrané úlohy ze zkoušek (2015)

POZOR!!! atan (imag(c)./real(c)) počítá úhel v 1. a 4. kvadrantu, podle vzorce

SEMESTRÁLNÍ PRÁCE Z X37SAS Zadání č. 7

I. Diferenciální rovnice. 3. Rovnici y = x+y+1. převeďte vhodnou transformací na rovnici homogenní (vzniklou

Linearní algebra příklady

Interpolace a aproximace dat.

Základy matematiky pracovní listy

Maple. Petr Kundrát. Ústav matematiky, FSI VUT v Brně. Maple a základní znalosti z oblasti obyčejných diferenciálních rovnic.

Úvod do Matlabu. Vít Vondrák Katedra aplikované matematiky FEI, VŠB-TU Ostrava

Příklad elektrický obvod se stejnosměrným zdrojem napětí

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:

Gymnázium Česká a Olympijských nadějí, České Budějovice, Česká 64, 37021

Circular Harmonics. Tomáš Zámečník

Programy na PODMÍNĚNÝ příkaz IF a CASE

y (5) (x) y (4) (x) + 4y (3) (x) 12y (x) 45y (x) 27y(x) (horní indexy značí derivaci) pro 3. y(x) = x sin 3x 4. y(x) = x cos 3x 9.

BPC2E_C08 Parametrické 3D grafy v Matlabu

Úlohy k přednášce NMAG 101 a 120: Lineární algebra a geometrie 1 a 2,

Základy programování: Algoritmizace v systému MATLAB

1 Projekce a projektory

VELIKOST VEKTORU, POČETNÍ OPERACE S VEKTORY

KTE / PPEL Počítačová podpora v elektrotechnice

Základy algoritmizace a programování

Lineární zobrazení. 1. A(x y) = A(x) A(y) (vlastnost aditivity) 2. A(α x) = α A(x) (vlastnost homogenity)

Příklad animace změny prokládané křivky při změně polohy jednoho z bodů

ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE

Úvod do Matlabu. Praha & EU: Investujeme do vaší budoucnosti. 1 / 24 Úvod do Matlabu

Velmi stručný návod jak dostat data z Terminálu Bloomberg do R

Aplikovaná matematika I

10. cvičení - LS 2017

Doňar B., Zaplatílek K.: MATLAB - tvorba uživatelských aplikací, BEN - technická literatura, Praha, (ISBN:

vysledek = ((1:1:50).*(100-(1:1:50))) *ones(50,1) vysledek = ((1:1:75)./2).*sqrt(1:1:75) *ones(75,1)

Martin Flusser. Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague. October 17, 2016

11MAMY LS 2017/2018. Úvod do Matlabu. 21. února Skupina 01. reseni2.m a tak dále + M souborem zadané funkce z příkladu 3 + souborem skupina.

Ekonomická fakulta, Jihočeská univerzita v Českých Budějovicích. MATEMATICKÝ SOFTWARE MAPLE - MANUÁL Marek Šulista

Příklady k druhému testu - Matlab

otočení matice o 180

Operátory pro maticové operace (operace s celými maticemi) * násobení maticové Pro čísla platí: 2*2

Příklady na testy předmětu Seminář z matematiky pro studenty fakulty strojní TUL.

1 Funkce dvou a tří proměnných

Výpočet excentrického klikového mechanismu v systému MAPLE 11 Tomáš Svoboda Technická fakulta Česká Zemědělská Univerzita

VI. Maticový počet. VI.1. Základní operace s maticemi. Definice. Tabulku

ALGORITMIZACE A PROGRAMOVÁNÍ

SEMESTRÁLNÍ PRÁCE Z PŘEDMĚTU MODELOVÁNÍ MATLABEM

Numerická integrace a derivace

5. cvičení z Matematiky 2

MODAM Popis okna. 2 Jana Bělohlávková, Katedra matematiky a deskriptivní geometrie, VŠB - TU Ostrava

Skriptování aneb funkce a procedury, cykly a vstupy a výstupy

Literatura: Kapitola 2 d) ze skript Karel Rektorys: Matematika 43, ČVUT, Praha, Text přednášky na webové stránce přednášejícího.

Předmluva 9 Obsah knihy 9 Typografické konvence 10 Informace o autorovi 10 Poděkování 10

smaže n-tý sloupec matice A vybere hodnotu 6.,1.,3.,2.prvku vektoru a a1 =

Řešení diferenciálních rovnic v MATLABu

A0B01LAA Lineární algebra a aplikace (příklady na cvičení- řešení)

plot() vytváří dvou-dimenzionální grafy, mnoho různých kombinací vstupních argumentů, nejjednodušší formou je plot(y), plot(x,y).

Vyhodnocení 2D rychlostního pole metodou PIV programem Matlab (zpracoval Jan Kolínský, dle programu ing. Jana Novotného)

Lineární algebra Operace s vektory a maticemi

Polynomy a interpolace text neobsahuje přesné matematické definice, pouze jejich vysvětlení

MATLAB základy. Roman Stanec PEF MZLU

Vektorový prostor. Př.1. R 2 ; R 3 ; R n Dvě operace v R n : u + v = (u 1 + v 1,...u n + v n ), V (E 3 )...množina vektorů v E 3,

Úvod do programování. Lekce 7

Téma je podrobně zpracováno ve skriptech [1], kapitola 6, strany

Univerzitní licence MATLABu. Pište mail na: se žádostí o nejnovější licenci MATLABu.

MATURITNÍ TÉMATA Z MATEMATIKY

Rozvinutí funkce do Maclaurinova rozvoje

Matematické symboly a značky

Nápověda k aplikaci GraphGUI

Program SMP pro kombinované studium

Cvi ení 1. Cvi ení 1. Modelování systém a proces. Mgr. Lucie Kárná, PhD. March 2, 2018

DEFINICE,VĚTYADŮKAZYKÚSTNÍZKOUŠCEZMAT.ANALÝZY Ib

Matematika 3. Úloha 1. Úloha 2. Úloha 3

Transkript:

%------------------------------------- % 4. cvičení z předmětu PPEL - MATLAB %------------------------------------- % Lenka Šroubová, ZČU, FEL, KTE % e-mail: lsroubov@kte.zcu.cz %------------------------------------- X=round(20.*rand(5,7)) X = sum(x) 19 15 12 8 1 4 0 5 9 16 19 7 4 15 12 0 18 18 16 12 9 10 16 15 8 0 5 19 18 9 4 18 3 4 9 64 49 65 71 27 29 52 % součet prvku v jednotlivých % sloupcích matice X sum(sum(x)) % součet prvku v matici X % je to součet součtu prvku ze sloupců matice X, tj. součet % předchozího vektoru ans 357 max(x) % vyhledání prvku s max. velikostí v jednotlivých sloupcích matice X 19 16 18 19 16 12 19 max(max(x)) % vyhledání maxima, tj. prvku s max. velikostí z celé matice X % vyhledání maxima z maxim z jednotlivých sloupců matice X, tj. maximum % z předchozího vektoru ans 19 x=linspace(-pi, pi,100); % zadání vektoru x od -pi do pi ve 100 bodech y=(sin(x)).^2; plot(x,y) % v proměnné y je 100 hodnot funkce (sin(x)).^2 % odpovídá operaci sin(x).*sin(x) % jedná se o umocnění vektoru - nematicová operace.^ % násobí se stejnolehlé prvky ve vektorech s prvky sin(x) % vykreslení dvourozměrného grafu funkce (sin(x)).^2 x=linspace(-pi,pi,100); y=sin(x.^2); plot(x,y) % zadání vektoru x od -pi do pi % v proměnné y je 100 hodnot funkce sin(x.^2) % odpovídá operaci sin(x.*x) % jedná se o umocnění vektoru - nematicová operace.^ % násobí se stejnolehlé prvky ve vektorech x % vykreslení dvourozměrného grafu funkce y=sin(x.^2) %-------------------------------------------------------------------- % m-file % skript neobsahuje klíčové slovo function % je to posloupnost příkazů

% ukádá se do souboru s příponou.m % spustí se napsáním názvu do příkazového řádku % proměnné vytvořené v rámci provádění skriptu zůstanou zachovány % (viz Workspace po provedeni skriptu) % funkce obsahuje klíčové slovo function, % hlavička je ve tvaru function výstup=nazev(vstup) % vstup, výstup nejsou povinné % hlavička zajišťuje přenos dat z a do funkce % proměnné ve funkci jsou lokální (po skončení posledního příkazu funkce % zaniknou) % výstupní proměnné zůstanou zachovány (viz Workspace) %-------------------------------------------------------------------- graf a=5; b=2; c=a+b % skript graf.m % vykreslí průběh funkce sin x 2 % secte hodnoty v proměnných a,b 7 secti % skript secti.m % sečte 2 čísla daná v m-file a=5; b=2; % proměnné vytvořené v rámci provádění skriptu zůstanou zachovány % viz Workspace po provedeni skriptu obsahuje a,b,c 7 whos % vypíše seznam existujících proměnných Name Size Bytes Class a 1x1 8 double array b 1x1 8 double array c 1x1 8 double array Grand total is 3 elements using 24 bytes soucet % funkce soucet.m % sečte 2 čísla daná v m-file a=5; b=2; % hlavička je ve tvaru function nazev % proměnné a,b,c po skončení posledního příkazu funkce zaniknou % viz Workspace po provedeni funkce neobsahuje a,b,c 7 whos % vypíše seznam existujících proměnných % neobjeví se nic, proměnné a,b,c po skončení funkce zanikly a=6; b=-1; soucet_vst(a,b) % funkce soucet_vst.m

% hlavička je ve tvaru function nazev(vstup1,vstup2) % funkce se vstupními parametry a,b % sečte zadané proměnné a=6; b=-1; 5 k=3;l=-4; soucet_vst(k,l) % funkce soucet_vst.m % hlavička je ve tvaru function nazev(vstup1,vstup2) % funkce se vstupními parametry k,l % sečte zadané proměnné k=3;l=-4; -1 soucet_vst(3,5) % funkce soucet_vst.m % hlavička je ve tvaru function nazev(vstup1,vstup2) % funkce se vstupními parametry 3,5 % sečte čísla 3,5 8 m=[1,2]; n=[3,4]; soucet_vst(m,n) 4 6 % funkce soucet_vst.m % hlavička je ve tvaru function nazev(vstup1,vstup2) % funkce se vstupními parametry m,n % sečte vektory m=[1,2]; n=[3,4]; soucet_vst_strednik(9,5) % funkce soucet_vst_strednik.m % hlavička je ve tvaru function nazev(vstup1,vstup2) % funkce se vstupními parametry 9,5 % funkce proběhne, ale výsledek se nezobrazí, v m-file % je za proměnnou c středník, zabraňuje výpisu na % obrazovku soucet_vst_vyst(9,5) % funkce soucet_vst_vyst.m % hlavička je ve tvaru function výstup=nazev(vstupy) % funkce se vstupními parametry 9,5 a výstupem % výsledek se uloží do proměnné ans % výstupní proměnná zůstává zachována (viz Workspace) 14

whos % vypíše seznam právě existujících proměnných Name Size Bytes Class ans 1x1 8 double array y=soucet_vst_vyst(9,5) y = % funkce soucet_vst_vyst.m % hlavička je ve tvaru function výstup=nazev(vstupy) % funkce se vstupními parametry 9,5 a výstupem y % výsledek se uloží do proměnné y % výstupní proměnná zůstává zachována (viz Workspace) 14 whos % vypíše seznam právě existujících proměnných Name Size Bytes Class ans 1x1 8 double array y 1x1 8 double array u=8; v=-7; y=soucet_vst_vyst(u,v) y = % funkce soucet_vst_vyst.m % hlavička je ve tvaru function výstup=nazev(vstupy) % funkce se vstupními parametry u,v a výstupem y % výsledek se uloží do proměnné y % výstupní proměnná zůstává zachována (viz Workspace) 1 z=soucet_vst_vyst(5,3); % funkce soucet_vst_vyst.m % hlavička je ve tvaru function výstup=nazev(vstupy) % funkce se vstupními parametry 5,3 a výstupem z % výstupní proměnná zůstává zachována (viz Workspace) % výsledek se uloží do proměnné z, ale nezobrazí se na % obrazovku, za příkazem je středník whos % vypíše seznam právě existujících proměnných Name Size Bytes Class z 1x1 8 double array Grand total is 1 element using 8 bytes %----------------------------------------------- % Polynomy %----------------------------------------------- p=[2,-5,4,3,-6,2] % zadání vektoru p % polynom 2*x^5-5*x^4 + 4*x^3 + 3*x^2-6*x + 2*x^0 p = 2-5 4 3-6 2 polyval(p,2) % vyčíslení polynomu p pro hodnotu 2 % tj. y=2*2^5-5*2^4 + 4*2^3 + 3*2^2-6*2 + 2 = 18 18 v=[-2:2] v = % zadání vektoru v

-2-1 0 1 2 w=polyval(p,v) % vyčíslení polynomu p pro všechny hodnoty z vektoru v w = -150 0 2 0 18 % 2*(-2)^5-5*(-2)^4 + 4*(-2)^3 + 3*(-2)^2-6*(-2) + 2 = -150 % 2*(-1)^5-5*(-1)^4 + 4*(-1)^3 + 3*(-1)^2-6*(-1) + 2 = 0 % 2* 0^5-5* 0^4 + 4* 0^3 + 3* 0^2-6* 0 + 2 = 2 % 2* 1^5-5* 1^4 + 4* 1^3 + 3* 1^2-6* 1 + 2 = 0 % 2* 2^5-5* 2^4 + 4* 2^3 + 3* 2^2-6* 2 + 2 = 18 x=roots(p) % kořeny polynomu p % výpočet rovnice % 2*x^5-5*x^4 + 4*x^3 + 3*x^2-6*x + 2 = 0 x = -1.0000 1.0000 + 1.0000i 1.0000-1.0000i 1.0000 0.5000 q=poly(x) % zjištění koeficientů polynomu z kořenů q = 1.0000-2.5000 2.0000 1.5000-3.0000 1.0000 % polynom pro dané kořeny je 1*x^5-2.5*x^4 + 2*x^3 + 1.5*x^2-3*x + 1 % vynásobením 2 získáme p 2*x^5-5*x^4 + 4*x^3 + 3*x^2-6*x + 2 x=roots(q) % kořeny polynomu q jsou stejné jako kořeny polynomu p x = -1.0000 1.0000 + 1.0000i 1.0000-1.0000i 1.0000 0.5000 r=[4,0,5,2] % zadání polynomu r, % chybějící člen v polynomu je nahrazen 0 % polynom 4*x^3 + 5*x + 2 = 4*x^3 + 0*x^2 + 5*x + 2*x^0 r = 4 0 5 2 s=conv(q,r) % násobení polynomů q,r s = 4.0000-10.0000 13.0000-4.5000-7.0000 15.5000-12.0000-1.0000 2.0000 % (1*x^5-2.5*x^4 + 2*x^3 + 1.5*x^2-3*x + 1)*(4*x^3-5*x + 2)= % =4*x^8-10*x^7 + 13*x^6-4.5*x^5-7*x^4 + 15.5*x^3-12*x^2 - x + 2 t=[1,-5,6] t = 1-5 6 % zadání polynomu t % polynom 1*x^2-5*x + 6*x^0 x12=roots(t) % řešení kvadratické rovnice x^2-5*x + 6 = 0 x12 = 3.0000 2.0000 u=[1,-2,2] u = 1-2 2 % zadání polynomu t % polynom 1*x^2-2*x + 2

x12=roots(u) % řešení kvadratické rovnice x^2-2*x + 2 = 0 x12 = 1.0000 + 1.0000i 1.0000-1.0000i %------------------------------------------------------- % Graf - bod se souřadnicemi x,y %------------------------------------------------------- plot(3,5) % bod o souřadnicích x=3, y=5 (vykreslen jako modrá tečka) plot(3,5,'*') % bod o souřadnicích x=3, y=5 zobrazen jako hvězdička * plot(3,5,'o') % bod o souřadnicích x=3, y=5 zobrazen jako kolečko o plot(3,5,'x') % bod o souřadnicích x=3, y=5 zobrazen jako křížek x plot(3,5,'^') % bod o souřadnicích x=3, y=5 zobrazen jako trojúhelníček %------------------------------------------------------- % Proložení dat - bodů se souřadnicemi x,y (interpolace) %------------------------------------------------------- x=[1:7] % zadání vektoru x - x-ové souřadníce bodů x = 1 2 3 4 5 6 7 y=[-1,0,2,2,3,1,-2] % zadání vektoru y - y-ové souřadníce bodů y = -1 0 2 2 3 1-2 plot(x,y,'*') % vykreslení dvourozměrného grafu x,y % body se souřadnicmi x,y zobrazeny jako * k=polyfit(x,y,2) % nalezení koeficientů polynomu 2.stupně % pro proložení bodů x,y k = -0.4524 3.6190-4.7143 % body budou proloženy polynomem y(x) = -0.4524*x^2 + 3.6190*x - 4.7143 % polynom 2.stupně - křivka - parabola xp=[1:0.1:7]; y2=polyval(k,xp); plot(xp,y2) plot(x,y,'*',xp,y2) % zadání bodů, ve kterých bude počítána aproximace % jemnější dělení osy x pro zobrazení křivky % vyčíslení polynomu k pro všechny tyto body % vykreslení dvourozměrného grafu - polynom 2.st. % vykreslení grafu - body (zobrazeny jako *) a jejich % proložení polynomem 2.st. (parabolou)

k3=polyfit(x,y,3) % nalezení koeficientů polynomu 3.stupně % pro proložení bodů x,y k3 = -0.0833 0.5476 0.2024-1.7143 % body budou proloženy polynomem % y(x) = -0.0833*x^3 + 0.5476*x^2 + 0.2024*x - 1.7143 y3=polyval(k3,xp); % vyčíslení polynomu k3 pro všechny body vektoru xp plot(x,y,'*',xp,y2,xp,y3) % vykreslení dvourozměrného grafu % body - zobrazeny jako modré * % proložení polynomem 2.stupně - zobrazeno zeleně % proložení polynomem 3.stupně - zobrazeno červeně k5=polyfit(x,y,5) % nalezení koeficientů polynomu 5.stupně % pro proložení bodů x,y k5 = -0.0000 0.0038-0.1439 0.8750-0.4773-1.2857 % body budou proloženy polynomem % y(x) = 0.0000*x^5 + 0.0038*x^4-0.1439*x^3 + 0.8750*x^2-0.4773*x - 1.2857 % první člen polynomu je nulový, v podstatě se jedná o polynom 4.st. y5=polyval(k5,xp); % vyčíslení polynomu k5 pro všechny body vektoru xp plot(x,y,'*',xp,y2,xp,y3,xp,y5) % vykreslení dvourozměrného grafu % body - zobrazeny jako modré * % proložení polynomem 2.stupně - zobrazeno zeleně % proložení polynomem 3.stupně - zobrazeno červeně % proložení polynomem 5.stupně - zobrazeno modrozeleně legend('body','polynom 2.st (parabola)','polynom 3.st','polynom 5.st') % zobrazení legendy ke grafu

% křivka daná polynomem 3.stupně téměř splývá % s křivkou 5.stupně => vhodné je proložení bodů % polynomem 3. stupně (5.st. je zbytečný) %------------------------------------------------------------------------------ % totéž proložení bodů, pokud není potřeba znát koeficienty polynomů, % nezavádí se proměnná, do které by se koeficienty polynomů ukládaly x=[1:7]; % zadání vektoru x - x-ové souřadníce bodů y=[-1,0,2,2,3,1,-2] % zadání vektoru y - y-ové souřadníce bodů xp=[1:0.1:7]; % zadání bodů, ve kterých bude počítána aproximace % jemnější dělení osy x pro zobrazení křivky y2=polyval(polyfit(x,y,2),xp); % vyčíslení polynomu 2.stupně pro všechny body xp y3=polyval(polyfit(x,y,3),xp); % vyčíslení polynomu 3.stupně pro všechny body xp y5=polyval(polyfit(x,y,5),xp); % vyčíslení polynomu 5.stupně pro všechny body xp plot(x,y,'*',xp,y2,xp,y3,xp,y5) % vykreslení dvourozměrného grafu % body - zobrazeny jako modré * % proložení polynomem 2.stupně - zobrazeno zeleně % proložení polynomem 3.stupně - zobrazeno červeně % proložení polynomem 5.stupně - zobrazeno modrozeleně legend('body','polynom 2.st (parabola)','polynom 3.st','polynom 5.st') % zobrazení legendy ke grafu diary off % přeruší ukládání do textového souboru