Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
courses:a4b33opt:cviceni6 [2009/10/25 21:26] marty |
courses:a4b33opt:cviceni6 [2025/01/03 18:28] (aktuální) |
||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
===== Cvičení 6 ===== | ===== Cvičení 6 ===== | ||
[[https://cw.felk.cvut.cz/lib/exe/fetch.php/courses/a4b33opt/cviceni/ls.pdf?id=courses%3Aa4b33opt%3Acviceni%3Astart&cache=cache|Zadání]] | [[https://cw.felk.cvut.cz/lib/exe/fetch.php/courses/a4b33opt/cviceni/ls.pdf?id=courses%3Aa4b33opt%3Acviceni%3Astart&cache=cache|Zadání]] | ||
+ | |||
+ | <code matlab> | ||
+ | % uloha 1: | ||
+ | Data = load('mzdy.txt','-ascii'); | ||
+ | Rok = Data(:,1); | ||
+ | Mzdy = Data(:,2); | ||
+ | |||
+ | |||
+ | hold on; | ||
+ | plot(Rok, Mzdy, 'ob'); | ||
+ | A = [ ones(length(Rok), 1) Rok ]; | ||
+ | |||
+ | % v uloze dve je predchozi radek v tomto tvaru: | ||
+ | % A = [ ones(length(Den), 1) Den sin((2*pi*Den)/365) cos((2*pi*Den)/365) ]; | ||
+ | % jinak je postup obdobny.. | ||
+ | |||
+ | b = Mzdy; | ||
+ | x = A \ b; | ||
+ | plot([min(Rok) max(Rok)], [x(1) + x(2)*min(Rok) x(1) + x(2) * max(Rok)], 'g'); | ||
+ | |||
+ | %odhad druheho kvartalu 2009 | ||
+ | odhad = x(1) + x(2) * 2009.25; | ||
+ | plot(2009.25, odhad, 'or'); | ||
+ | |||
+ | %kriterialni funkce F() | ||
+ | F = x'*(A')*A*x - 2*b'*A*x + b'*b; | ||
+ | |||
+ | % | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ===== druhý příklad ===== | ||
+ | |||
+ | <code matlab> | ||
+ | clear | ||
+ | close all | ||
+ | |||
+ | %nacteme | ||
+ | Data = load('teplota.txt','-ascii'); | ||
+ | days = Data(:,1); | ||
+ | temp = Data(:,2); | ||
+ | COUNT = size(days, 1); | ||
+ | PI = 3.14159265; | ||
+ | |||
+ | %matice podle PDFka | ||
+ | A = [ones(COUNT, 1) days sin(2*PI*days/365) cos(2*PI*days/365) ]; | ||
+ | %brutalne slozity vypocet | ||
+ | x = A\temp | ||
+ | |||
+ | hold on | ||
+ | plot(days, temp, 'ro'); | ||
+ | viz = 1:1:1200; %pouzijeme misto dnu, pro jemnejsi kresbu grafu | ||
+ | plot(viz, x(1,1) + x(2,1)*viz + x(3,1)*sin(2*PI*viz/365) + x(4,1)*cos(2*PI*viz/365), 'b-'); %vykresleni interpolovane funkce | ||
+ | hold off | ||
+ | |||
+ | |||
+ | T = A*x - temp; | ||
+ | T'*T %kvadrat kriterialni funkce | ||
+ | |||
+ | </code> | ||
~~DISCUSSION~~ | ~~DISCUSSION~~ | ||