Základy algoritmizace a programování



Podobné dokumenty
Lineární algebra s Matlabem cvičení 3

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

Grafy, úprava, popisky, vizualizace výsledk výpo - pokra ování Další typy graf plot semilogx semilogy loglog Více graf

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

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

Vizualizace. TECHNICKÁ UNIVERZITA V LIBERCI Fakulta mechatroniky, informatiky a mezioborových studií

Základy algoritmizace a programování

Grafické výstupy v Octave/Matlabu a GnuPlotu

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

Transformujte diferenciální výraz x f x + y f do polárních souřadnic r a ϕ, které jsou definovány vztahy x = r cos ϕ a y = r sin ϕ.

Kreslení grafů v Matlabu

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

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

X37SGS Signály a systémy

TECHNICKÁ UNIVERZITA V LIBERCI Fakulta mechatroniky, informatiky a mezioborových studií

Wolfram Alpha. v podobě html stránky, samotný výsledek je často doplněn o další informace (např. graf, jiné možné zobrazení výsledku a

Interpolace a aproximace dat.

MATLAB HRAVĚ Zdeněk Jančík, FIT VUT Brno

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

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 +

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

BPC2E_C08 Parametrické 3D grafy v Matlabu

. Poté hodnoty z intervalu [ 1 4, 1 2. ] nahraďte hodnotami přirozeného logaritmu.

+ 2y y = nf ; x 0. závisí pouze na vzdálenosti bodu (x, y) od počátku, vyhovuje rovnici. y F x x F y = 0. x y. x x + y F. y = F

text(x,y,'nejaky text') umístí text na souřadnice x, y

Nalezněte hladiny následujících funkcí. Pro které hodnoty C R jsou hladiny neprázdné

Úvod do programu MAXIMA

Příklady k druhému testu - Matlab

VIDEOSBÍRKA DERIVACE

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 =

MATrixLABoratory letný semester 2004/2005. Zobrazovanie v 3D

VIDEOSBÍRKA DERIVACE

Matematika I: Aplikované úlohy

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

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

Petr Hora CDM, ÚT AV ČR Veleslavínova Plzeň MATLAB ver. 4

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

Matematika I pracovní listy

2. Grafika. Hlavní funkcí na vykreslování grafů je funkce plot. Jako argumenty má dva vektory (stejné dimenze), první pro osu x, druhý pro osu y.

1. Je dána funkce f(x, y) a g(x, y, z). Vypište symbolicky všechny 1., 2. a 3. parciální derivace funkce f a funkce g.

DERIVACE. ln 7. Urči, kdy funkce roste a klesá a dále kdy je konkávní a

Matematika II, úroveň A ukázkový test č. 1 (2018) 1. a) Napište postačující podmínku pro diferencovatelnost funkce n-proměnných v otevřené

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

Drsná matematika III 1. přednáška Funkce více proměnných: křivky, směrové derivace, diferenciál

Visualizace a animace. Jan Velechovský. Maple. plots Odkazy. Matlab. Animace Odkazy IDL. Odkazy. Gnuplot. 10. prosince Animace.

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

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

MATEMATIKA III. Olga Majlingová. Učební text pro prezenční studium. Předběžná verze

Základy algoritmizace a programování

Úvodní informace. 17. února 2018

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

Stručný návod k programu Octave

Matematika II. (LS 2009) FS VŠB-TU Ostrava. Bud te. A = a + 1 2, B = 1. b + 1. y = x 2 + Bx 3A. a osou x.

Indexové výrazy >> A(1,:) >> A=[1,2;3,4] >> a=a(:) >> a(3)= 8 A = a = ans = 1 2. >> a a = >> A(2,1) >> A(:,1) ans = ans = >> a(3) ans =

Práce s vektory. Vytváření vektorů. Přístup k prvkům vektoru. Zpracování prvků vektoru. Knihovní funkce pro práci s vektory. Generování vektorů

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

Petr Hasil

ÚSTAV MATEMATIKY A DESKRIPTIVNÍ GEOMETRIE. Matematika 0A1. Cvičení, zimní semestr. Samostatné výstupy. Jan Šafařík

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

Diferenciální rovnice II

Kreslení elipsy Andrej Podzimek 22. prosince 2005

Bakalářská matematika I

Derivace funkce. Přednáška MATEMATIKA č Jiří Neubauer

Matematika II, úroveň A ukázkový test č. 1 (2017) 1. a) Napište postačující podmínku pro diferencovatelnost funkce n-proměnných v otevřené

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 =

Matematika I A ukázkový test 1 pro 2011/2012. x + y + 3z = 1 (2a 1)x + (a + 1)y + z = 1 a

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

Jihočeská univerzita v Českých Budějovicích Pedagogická fakulta Katedra fyziky Jeronýmova 10, České Budějovice

Předzpracování dat. Cvičení 2: Import a příprava dat v Matlabu MI-PDD, 09/2011. Pavel Kordík MI-POA

Vyšetřování průběhu funkce pomocí programu MatLab. 1. Co budeme potřebovat?

Matematika II, úroveň A ukázkový test č. 1 (2016) 1. a) Napište postačující podmínku pro diferencovatelnost funkce n-proměnných v otevřené

Ústav teoretické fyziky a astrofyziky Přírodovědecké fakulty Masarykovy Univerzity v Brně. 14. května 2007

Matice. Je dána matice A R m,n, pak máme zobrazení A : R n R m.

3D grafika. Příprava dat

1. a) Určete parciální derivace prvního řádu funkce z = z(x, y) dané rovnicí z 3 3xy 8 = 0 v

Rychlotest-internet. Ústav teoretické fyziky a astrofyziky Přírodovědecké fakulty Masarykovy Univerzity v Brně. 14. května 2007

Pracovní text a úkoly ke cvičením MF002

Parametrické rovnice křivek v E 2

MATEMATICKÁ ANALÝZA A LINEÁRNÍ ALGEBRA PŘÍPRAVA NA ZKOUŠKU PRO SAMOUKY

Mgr. Ladislav Zemánek Maturitní okruhy Matematika Obor reálných čísel

Zimní semestr akademického roku 2014/ prosince 2014

Programování v chemii (MATLAB)

5. cvičení z Matematiky 2

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

8.4. Shrnutí ke kapitolám 7 a 8

Kapitola 9: Aplikace integrálů funkcí jedné proměnné

Matematika I A ukázkový test 1 pro 2014/2015

Základy matematiky pracovní listy

Kapitola 8: Implicitně zadané funkce

Příklad: Vytvořte funkci s názvem vypocet bez parametrů, která bude řešit soustavu lineárních algebraických rovnic Ax = b, kde A je matice

Přijímací zkouška - matematika

Přijímací zkouška na navazující magisterské studium 2018

Cvi ení 1. Modelování systém a proces. Mgr. Lucie Kárná, PhD. March 2, Organizace cvi ení 2 Matlab Za ínáme Základní operace Základní funkce

Obsah Obyčejné diferenciální rovnice

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í

ALGEBRA. Téma 5: Vektorové prostory

Vlastnosti členů regulačních obvodů Osnova kurzu

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

Linearní algebra příklady

Transkript:

Základy algoritmizace a programování Práce se symbolickými proměnnými Práce s grafikou Přednáška 11 7. prosince 2009

Symbolické proměnné Zjednodušení aritmetických výrazů simplify (s) Příklady: >>syms a b c d x >>simplify(sin(x)ˆ2 + cos(x)ˆ2) >>simplify(exp(c*log(sqrt(a+b)))) >>simplify((xˆ2-5*x +6/(x-2)) Rozvinutí výrazů expand (s) Příklady >>expand((x-2)*(x-3)) >>expand(exp((a+b)ˆ2))

Rozklad factor(s) Příklady čísla na prvočísla factor(sym( 646759498054250578181342771362513764 factor(sym( 2009 )) výrazu factor(xˆ2-3/2*x+1/2) factor(xˆ+1) factor(aˆ3 - bˆ3)

Dosazení subs(s,z,a) Příklady >>syms x y >>subs(sin(x)+cos(y), x, pi) ans = cos(y) >>subs(xˆ2 + 2*x*y + yˆ2, x+y,2) ans = xˆ(x + y) + yˆ(x + y) + x*y*(x + y) >>subs(sin(x)+cos(y),{x,y},{pi, sym( alpha )}) ans = cos(alpha)

Limity limit(f,x,a) limit(f,a) limit(f) Příklady >>syms x n >>limit(sin(x)/x) ans = 1 >>limit((1+1/n)ˆn, Inf) ans = exp(1)

derivace diff(s) diff(s,x) diff(s,x,n) Příklady >>diff(sin(xˆ2)) ans = 2*x*cos(xˆ2) >>diff(tˆ6,2) ans = 30*tˆ4 >>diff(tˆ6,6) ans = 720

Integrály int(s) int(s,x) int(s,x,a,b) Příklady >>int(exp(-xˆ2)) ans = (piˆ(1/2)*erf(x))/2 erf(x) = 2 π x 0 e t2 dt >>int(exp(-xˆ2),0,inf) ans = piˆ(1/2)/2

Řešení rovnic a soustav rovnic solve(s) solve(s,x) solve(s1,...,sn) solve(s1,...,sn,x1,...,xn) Příklady >>syms a b c d x y >>solve(a*xˆ2 + b*x + c) ans = -(b + (bˆ2-4*a*c)ˆ(1/2))/(2*a) -(b - (bˆ2-4*a*c)ˆ(1/2))/(2*a) >>solve(a*xˆ2 + b*x + c, a) ans = -(c + b*x)/xˆ2 >>solve( xˆ2+ x*y + y = 3, xˆ2-4*x + 3 = 0 ) ans = 1 3

Řešení diferenciálních rovnic rovnic dsolve(eq1,...,eqn,pp1,...,pp2,p) >>dsolve( Dy+4*y = exp(-t) ) ans = 1/(3*exp(t)) + C2/exp(4*t) >>dsolve( Dy+4*y = exp(-t), y(0)=1 ) ans = 1/(3*exp(t)) + 2/(3*exp(4*t)) >>dsolve( Dx = y, Dy = -x, x(0) = 1, y(0)=2 ) V = y: [1x1 sym] x: [1x1 sym] >> V.x ans = (i + 1/2)/exp(i*t) - exp(i*t)*(i - 1/2) >> V.y ans = exp(i*t)*(i/2 + 1) - (i/2-1)/exp(i*t)

Taylorovy polynomy taylor(funkce, stupen, stred) Příklady >>taylor(log(1+x)) ans = x-1/2*xˆ2+1/3*xˆ3-1/4*xˆ4+1/5*xˆ5

Užitečné funkce diff derivace int integrál limit limita taylor taylorova řada jacobian Jacobiova matice symsum součet řady

taylortool

Grafika - příkaz plot x = 0:pi/100:2*pi; y = sin(x); plot(x,y) xlabel( x = 0:2pi ) ylabel( Sine of x ) title( Plot of the Sine Function,... FontSize,12)

Grafika Příkaz figure vytvoří nové grafické okno, které se stane aktivním. Příkaz figure(n): grafické okno n se stane aktivním. Několik křivek v jednom okně y2 = sin(x-.25); y3 = sin(x-.5); plot(x,y,x,y2,x,y3) legend( sin(x), sin(x-.25), sin(x-.5) ) Typ a barva čar plot(x,y, color_style_marker ) color_style_marker řetězec 1 4 znaků, určují styl a barvu barva: c, m, y, r, g, b, w, k styl čáry: -,, :, -. typ markeru: +, o, *, x, s, d, ˆ, v, >, <, p, h

Grafika plot(x,y, r*- ) spojí čarou a body označí, plot(x,y, y+ ) nespojí čarou, jen označí body Argumenty Matice: plot(vektor, matice): vykreslí závislost každého sloupce matice na vektoru plot(matice, matice): vykreslí závislost každého sloupce matice na odpovídajícím sloupci vektoru plot(x,y, m o, LineWidth,3, MarkerSize,5)

Popis grafu, osy Title, xlabel, ylabel Osy a anotace axis([xmin xmax ymin ymax]) axis auto axis equal axis off xlim[xmin xmax] ylim[ymin ymax] určuje rozměry zpět k implicitně urcenýym osám stejné jednotky na osách nezobrazí osy určení rozměru x ové osy určení rozměru y ové osy

Příklad plot(fft(eye(17))), axis equal, axis square plot(fft(eye(17))), axis equal, axis off

Další příklad 1 Graf funkce (x 1) 2 + 3, x < 0, 3 > (x 2) 2 x = linspace(0,3,500); plot(x, 1./(x-1).ˆ2 + 3./(x-2).ˆ2) grid on Nespojitost v bodech x = 1, x=2 graf je málo informativní omezíme y ové hodnoty: ylim([0,50]) zajímavější

vybarvení plochy fill(x,y,[r g b]) vybarví mnohoúhelník zadaný body x(i) a y(i) body se vybírají popořadě a poslední se spojí s prvním barva se určí podle kombinace [r g b]... skaláry < 0, 1 > [010]... zelená, [101]... magenta, stejné hodnoty... stupně šedé P = [0.1 0.3 0.7 0.8; 0.3 0.8 0.6 0.1]; plot(p(1,:),p(2,:), * ) axis([0 1 0 1]); hold on fill(p(1,:),p(2,:),[0.8 0.8 0.8]) text(0.35,0.35, 4 uhelnik ) text(0.05,0.3, P_1 ) text(0.25,0.8, P_2 ) text(0.72,0.6, P_3 ) text(0.82,0.1, P_4 ) hold off

4-úhelník

Několik grafů v jednom obrázku subplot(m, n, p)... rozdělí grafické okno na matici m n obr. očíslovaných 1... p fplot( funkce, meze, presnost, typ_cary )... užitečné pro grafy matematických funkcí subplot(221), fplot( exp(sqrt(x)*sin(12*x)),[0 2*pi]) subplot(222) fplot( sin(round(x)),[0 10], - ) subplot(223) fplot( cos(30*x)/x,[0.01 1-15 20],.- ) subplot(224) fplot( [sin(x),cos(2*x),1/(1+x)],[0 5*pi -1.5 1.5])

Funkce pro 2D grafiku plot loglog semilogx semilogy plotyy polar fplot ezplot ezpolar fill area bar barh hist pie comet quiver scatter jednoduché x y zobrazení bodů zobrazení v logaritmickém měřítku na osách zobrazení v logaritmickém měřítku v x ové ose zobrazení v logaritmickém měřítku v y ové ose x y graf s y ovou osou po obou stranách zobrazení v polárních souřadnicích automatické zobrazeí funkcí verze fplot verze polar vyplnění mnohoúhelníku vyplnění plochy sloupcový diagram vodorovný sloupcový diagram histogram kruhový diagram animace zovrazení vektoru rychloti

3D grafika plot3(x,y,z)... analog plot, spojí body čarou t = -5:0.005:5; x=(1+t.ˆ2).*sin(20*t); y=(1+t.ˆ2).*cos(20*t); z = t; grid on plot3(x,y,z) xlabel( x(t) ), ylabel( y(t) ), zlabel( z(t) ) title( priklad 3D zobrazení, FontSize,14) Barvu, typ čáry a markeru lze zadatr stejně jako v plot.

Vrstevnice Příklad: f (x, y) = sin(3y x 2 + 1) + cos(2y 2 2x) x < 2, 2 >, y < 1, 1 > subplot(211) ezcontour( sin(3*y-xˆ2+1)+cos(2*yˆ2-2*x), [-2 2-1 1]); x = -2:0.01:2; y=-1:0.01:1; [ X, Y ] = meshgrid(x,y);... vygeneruje matice X a Y : řádek X je kopie vektoru x a sloupec Y kopie y Z = sin(3*y-x.ˆ2+1)+cos(2*y.ˆ2-2*x);... matice Z: Z(i,j) má funkční hodnoty pro x(j) a y(i)... to vyžaduje contour subplot(212) contour(x,y,z,20)... Z je výška pro bod x a y, 20 úrovní

Příklady 3D grafiky x = 0:0.1:pi; y = 0:0.1:pi; [X, Y] = meshgrid(x,y); Z = sin(y.ˆ2 + X) - cos(y - X.ˆ2); subplot(221) mesh(z) subplot(222) meshc(z) subplot(223) mesh(x,y,z) axis([0 pi 0 pi -5 5]) subplot(224) mesh(z) hidden off

Použití jiných funkcí Vykreslíme MATLABovské logo (generuje funkce membrane) surf vykreslí plochy surfc přidá projekci flat odstraní sít ové křivky waterfall podobná mesh Z = membrane; FS = FontSize ; subplot(221), surf(z), title( surf,fs,14) subplot(222), surfc(z), title( surfc,fs,14) colorbar subplot(223), surf(z), shading flat title( surf shading flat,fs,14) subplot(224), waterfall(z) title( waterfall,fs,14)

Pokud v datech jsou NaN, jsou interpretována jako chybějící data a nejsou zobrazena. plot( [ 1 2 NaN 3 4 ] ) vykreslí 2 čáry, body 2 a 3 nespojí A = peaks(80); A (28:52, 28:52) = NaN; surfc(a)