Základy algoritmizace a programování

Petr Sváček, Luděk Beneš, Olga Majlingová
Ústav technické matematiky

Cviceni č. 4


Ulohy pro 4. tyden

MATLAB: Práce s grafy. Příkaz plot, popis grafu a znázorněných veličin. Tečna ke grafu funkce. Příkaz get, set, gca, gcf apod. Grafické znázornění Taylorova polynomu, částečného součtu Fourierovy řady. Export obrázku do souboru, příkaz print. Grafy ve 3D.


  1. Interpolace po částech lomenou čarou a spline funkce (interp1, spline).
    a) Je daná tabulka hodnot x, y. Vypočtěte přibližně hodnoty funkce v bodech xx pomocí interpolace (interp1)
    b) Je daná tabulka hodnot x, y. Vypočtěte přibližně hodnoty funkce v bodech xx pomocí spline fce (spline)
    c) Graficky (plot) znázorněte hodnoty x,y a také hodnoty interpolace z a), b).
    d) Spočtěte rozdíl hodnot z a,b a graficky tento rozdíl znázorněte.

    Uzivane prikazy:
    x = [ -2  -1   0   1      2];
    y = [  1  0.5  0   -0.6  -2];
    
    xx = -2:0.005:2;
    

  2. Graf funkce, tečna a Taylorův polynom.
    a) Pro danou funkci f(x) např. e^x, ln(1 + x), sin(x) v okoli x0 = 0 zakreslete graf funkce f(x) a graf tečny. Graf f(x) zobrazte plnou čarou a graf tečny přerušovanou. Popište osy a graf. Zobrazte legendu ke grafu. Volte tloušťku čar.
    b) Výsledný graf exportujte do souboru (print, bitmap PNG, GIF nebo EPS).
    c) Do grafu zaneste i Taylorův polynom stupně 2 a 3.

    Uzivane prikazy:
    help plot
    help gca 
    help gcf
    l = plot(x,y, 'b-');
    help legend
    help xlabel
    help title
    get(l)
    set(l)
    

  3. Graf funkce a částečné součty Fourierovy řady.

    a) Vezměme funkci f(x) = 1 pro x z (0,1) a f(x) = 0 pro x z (-1,0). Funkci zakreslete graficky
    b) Funkci z a) periodicky prodluzte (s periodou 2) na interval (-3,3). Zobrazte v grafu tohoto prodlouzeni.
    c) Zobrazte graf f(x) a s3(x) na intervalu od (-3,3), grafy odliste tloustkou, stylem i barvou cary.
    d) Zobrazte do stejného grafu součty s3, s5, s7, s9 a s11

    Uzivane prikazy:
    help find
    x = -1:0.01:
    s7 =  0.5 + 2/pi * sin(pi *x) + 2 / (3 * pi) * sin(3 * pi *x) + 2 / (5 * pi) * sin(5 * pi *x) + 2 / (7 * pi) * sin(7 * pi *x);
    u = 0 * x;
    u(x<0.) = -3;
    

  4. Užijte příkaz print a obrázky z předchozích úloh uložte ve formátu např. PNG/BMP/JPEG/GIF.
    help print
    

  5. Grafy 2D.
    x = -2:0.02:2;
    y = -2:0.02:2;
    [xx,yy] = meshgrid(x,y);
    zz = xx.^2 + yy.^2;
    mesh(xx,yy,zz);
    
    help surf
    help mesh
    help trimesh
    help trisurf