plik


Sze[cienne funkcje sklejane. PrzykBad (1) zi zi+1 yi+1 zi+1hi yi zihi Si (x) = (xi+1 - x)3 + (x - xi )3 + - (x - xi ) + hi - 6 (xi+1 - x) 6hi 6hi hi 6 S1(x) = 0.186566(x - 3)3 +1.666667(4.5 - x) + 0.246894(x - 3) S2(x) = 0.111939(7 - x)3 - 0.102205(x - 4.5)3 - 0.299621(7 - x) +1.638783(x - 4.5) S3(x) = -0.127757(9 - x)3 +1.761027(9 - x) + 0.25 (x - 7) Funkcje sklejane trzeciego stopnia 3 xi yi 3.0 2.5 2 4.5 1.0 1 7.0 2.5 9.0 0.5 0 2 3 4 5 6 7 8 9 10 Sze[cienne funkcje sklejane. Algorytm input n, (xi), (yi) Algorytm jest wariantem metody for i = 0 to n-1 do eliminacji Gaussa. Wybr elementw hi xi+1- xi gBwnych nie jest tutaj potrzebny. bi 6 (yi+1- yi) / hi Mo|na wykaza, |e elementy na end do gBwnej przektnej s zawsze r|ne u1 2 (h0- h1) od zera. v1 b1- b0 for i = 2 to n-1 do ui 2(hi-1 + hi ) - hi2 /ui-1 -1 vi bi- bi-1 - hi-1 vi-1 / ui-1 end do zn 0 for i = n-1 to 1 step -1 do zi (vi- hi zi+1) / ui Uwaga: end do Warto[ci ui, vi obliczane dla i > 1 nie s z0 0 identyczne z wystpujcymi w ukBadzie output k, (xi ) rwnaD. Funkcja interp1 yi = interp1 (x, y, xi)  na podstawie wektora wzBw x oraz wektora warto[ci y w wzBach interpoluje warto[ci yi w punktach xi (xi jest liczb albo wektorem). yi = interp1 (x, y, xi, method)  na podstawie wektora wzBw x oraz wektora warto[ci y interpoluje warto[ci yi w punktach xi u|ywajc r|nych metod (xi jest liczb albo wektorem). method  metoda interpolacji linear  interpolacja liniowa (domy[lna) spline  interpolacja sze[ciennymi funkcjami sklejanymi pchip  przedziaBowa interpolacja Hermita wielomianami sze[ciennymi interp2  interpolacja funkcji dwch zmiennych Poza wBasnymi funkcjami Matlab dodatkowo posiada Curve Fitting Toolbox oraz Spline Toolbox. Aproksymacja [redniokwadratowa lini prost (1) x1, x2, ..., xn Chcemy dopasowa do tych danych do[wiadczalnych Mamy y1, y2, ..., yn lini prost g(x) = ax + b Kryterium n zle dziaBa min i (y - axi-b) a,b i=1 n min yi - axi-b zle dziaBa a,b i=1 n min i (y - axi-b)2 a,b i=1 Aproksymacja [redniokwadratowa lini prost (2) x1, x2, ..., xn Chcemy dopasowa do tych danych do[wiadczalnych Mamy y1, y2, ..., yn lini prost g(x) = ax + b n n Sr (a,b) = i i (y - g(xi))2 =(y - axi-b)2 i=1 i=1 n n n 2 minSr (a,b) i i i Kryterium x + x = x yi a b a,b i=1 i=1 i=1 n n n Sr = -2 i i i (y - axi - b)xi = 0 x + nb = y a a i=1 i=1 i=1 n Sr = -2 i (y - axi - b) = 0 n n n b i=1 n yi i i x yi -x i=1 i=1 i=1 a = 2 n n n n n 2 2 i i i n y xi -ax -bx = 0 i i x - x i=1 i=1 i=1 i=1 i=1 n n n n n 1 1 i i y -ax -b = 0 b = yi - a i x i=1 i=1 i=1 n n i=1 i=1 Aproksymacja [redniokwadratowa lini prost . BBd. n Reprezentuje kwadraty pionowych odlegBo[ci Sr = i (y - axi-b)2 pomidzy zmierzonymi danymi i lini prost. i=1 Gdy (1) punkty s rozBo|one wzdBu| linii w odlegBo[ci podobnego rzdu oraz (2) rozkBad punktw wokB linii jest normalny to metoda najmniejszych kwadratw daje najlepsze estymacje staBych a i b. Dodatkowo mo|emy wyznaczy standardowy bBd estymacji jako - standardowy bBd estymacji (oszacowanie bBdu Sr dla przewidywanej warto[ci y odpowiadajcej sy / x = n - 2 szczeglnej warto[ci x) n n 1 wariancja Niech St = i y i (y - y)2 gdzie y = n i=1 i=1 Wygodniejsze dla obliczeD komputerowych n n n St - Sr r = n yi x yi - x i i St i=1 i=1 i=1 r = 22 n n n n r nazywa si wspBczynnikiem korelacji. 2 n yi2 - yi x - x n i i Dla idealnego dopasowania mamy r = 1. i=1 i=1 i=1 i=1 Aproksymacja [redniokwadratowa lini prost . PrzykBad (1). n i i i x yi -x y = 0.8392857 xi yi yi-axi-b a = 2 2 n i x -(xi) 1 0.5 0.1687 1 b = i i y - a 1 x = 0.07142857 2 2.5 0.5625 n n 3 2.0 0.3473 y = 0.8392857x + 0.07142857 4 4.0 0.3265 5 3.5 0.5696 Aproksymacja sredniokwadratowa y = ax + b 7 6 6.0 0.7972 6 7 5.5 0.1993 5 n = 7 4 i x = 28 3 yi = 24 2 i x yi =119.5 1 2 i x =140 0 0 2 4 6 8 Aproksymacja [redniokwadratowa lini prost . PrzykBad (2). n Sr = - suma kwadratw odchyleD i (y - axi-b)2 = 2.9911 i=1 n 1 y = - warto[ [rednia i y = 24 n 7 i=1 n St = i (y - y)2 = 22.7142 - wariancja i=1 St - odchylenie standardowe sy = =1.9457 n -1 Sr - standardowy bBd estymacji sy / x = = 0.7735 n - 2 St - Sr r = = 0.868 = 0.932 - wspBczynnik korelacji St PrzeksztaBcenia funkcji nieliniowych Funkcj nieliniow y = f (x) przeksztaBcamy do postaci w = av + b Funkcja liniowa Funkcja Podstawienie a 1 y = av + b y = + b v = x x 1 a 1 b w = w = x + y = y x + a b b w = ln y w = lnb x + lna y = abx StaBa c nie jest y = c - be-ax w = ln(c - y) w = -ax + lnb aproksymowana w = ln y y = axb v = ln x w = bv + lna y w = ln y = axebx w = bx + lna x c c y = w = ax + lnb w = ln -1 StaBa c nie jest aproksymowana 1+ beax x v = ln x y = aln x + b y = av + b PrzeksztaBcenia funkcji nieliniowych. PrzykBad Funkcja w = 1.7517v - 0.6913 xi yi 2.5 y = axb 1 0.5 2 ln y = bln x + lna 2 1.7 1.5 w = ln y 3 3.4 1 v = ln x 4 5.7 0.5 w = bv + lna 5 8.4 0 Funkcja y = 0.5009x1.7517 9 -0.5 8 -1 7 0 0.5 1 1.5 v = ln x 6 5 v = log (x); 4 w = log (y); 3 p = polyfit (v, w, 1); a = 0.5009 2 b = p(1); 1 b = 1.7517 a = exp (p(2)); 0 0 2 4 6 w = ln y Aproksymacja [redniokwadratowa parabol x1, x2, ..., xn Chcemy dopasowa do tych danych do[wiadczalnych Mamy y1, y2, ..., yn lini prost g(x) = ax2 + bx + c n n Sr (a,b,c) = i i (y - g(xi))2 =(y - axi2 - bxi - c)2 i=1 i=1 Kryterium minSr (a,b,c) a,b,c Normalny ukBad rwnaD: n Sr = -2 i (y - axi2 - bxi - c)xi2 = 0 a i=1 n n n n 4 3 2 2 n Sr i i i i x + x + x = x yi a b c = -2 i (y - axi2 - bxi - c)xi = 0 i=1 i=1 i=1 i=1 b i=1 n n n n n 3 2 Sr i i i i x + x + x = x yi = -2 a b c i (y - axi2 - bxi - c) = 0 i=1 i=1 i=1 i=1 c i=1 n n n 2 i i i x + x + nc = y a b i=1 i=1 i=1 Aproksymacja [redniokwadratowa parabol. PrzykBad (1) n = 6 979 255 55 a 2488.8 xi yi i x =15 225 55 15 b = 585.6 0 2.1 yi =152.6 55 15 6 c 152.6 2 1 7.7 i x = 55 a = 1.86071 2 13.6 3 i x = 225 b = 2.35929 3 27.2 4 c = 2.47857 i x = 979 4 40.9 y =1.86071x2 + 2.35929x + 2.37857 i x yi = 585.6 5 61.1 2 Standardowy bBd estymacji: i x yi = 2488.8 Sr n n n n sy / x = =1.12 4 3 2 2 i i i i x + x + x = x yi n - (m +1) a b c i=1 i=1 i=1 i=1 gdzie m  stopieD wielomianu n n n n 3 2 aproksymujcego i i i i x + x + x = x yi a b c i=1 i=1 i=1 i=1 St - Sr n n n 2 r = = 0.99851= 0.99925 i i i x + x + nc = y a b St i=1 i=1 i=1 Aproksymacja [redniokwadratowa parabol. PrzykBad (2) y = 1.8607x2 + 2.3593x + 2.4786 70 60 50 40 30 20 10 0 0 1 2 3 4 5 Wieloliniowa aproksymacja [redniokwadratowa x11, x12, ..., x1n Chcemy dopasowa do tych danych do[wiadczalnych Mamy x21, x22, ..., x2n pBaszczyzn g(x1, x2) = ax1 + bx2 + c y1, y2, ..., yn n n Sr (a,b,c) = i i (y - g(x1i,x2i))2 =(y - ax1i - bx2i - c)2 i=1 i=1 Kryterium minSr (a,b,c) a,b,c n n n n n Sr 2 = -2 i (y - ax1i - bx2i - c)x1i = 0 1i 1i 1i 1i x + x x2i + x = x yi a b c a i=1 i=1 i=1 i=1 i=1 n Sr n n n n 2 = -2 i (y - ax1i - bx2i - c)x2i = 0 1i 2i 2i 2i x x2i + x + x = x yi b a b c i=1 i=1 i=1 i=1 i=1 n Sr n n n = -2 i (y - ax1i - bx2i - c) = 0 c 1i 2i i x + x + nc = y i=1 a b i=1 i=1 i=1 Wieloliniowa aproksymacja [redniokwadratowa. PrzykBad. (1) x1i x2i yi 2 0 0 5 1i 1i 1i 1i x x x2i x a x yi 2 2 1 10 = 1i 2i 2i 2i x x2i x x b x yi 2.5 2 9 n 1i 2i i x x c y 1 3 0 4 6 3 76.25 48 16.5 a 243.5 b 7 2 27 48 54 14 = 100 16.5 14 6 c 54 n n n n 2 1i 1i 1i 1i x + x x2i + x = x yi a b c i=1 i=1 i=1 i=1 n n n n a = 4 2 1i 2i 2i 2i x x2i + x + x = x yi a b c b = -3 i=1 i=1 i=1 i=1 c = 5 n n n yi 1i 2i x + x + nc = a b i=1 i=1 i=1 Wieloliniowa aproksymacja [redniokwadratowa. PrzykBad. (2) Funkcja y = 4x1 - 3x2 + 5 40 30 20 10 0 -10 -20 6 8 4 6 4 2 2 0 0 Aproksymacja [redniokwadratowa nieliniowa x1, x2, ..., xn Chcemy dopasowa do tych danych do[wiadczalnych Mamy y1, y2, ..., yn funkcj nieliniow g(x). n minSr (a,b) Kryterium Sr (a,b) = i (y - g(xi))2 a,b i=1 x = lsqcurvefit (fun, x0, xdata, ydata)  dopasowuje funkcj nieliniow do danych eksperymentalnych metod najmniejszych kwadratw. Algorytmy: x = lsqcurvefit (fun, x0, xdata, ydata, lb, ub) trust region reflective x = lsqcurvefit (fun, x0, xdata, ydata, lb, ub, options) Levenberga-Marquardta [x, resnorm] = lsqcurvefit (...) [x, resnorm, residual] = lsqcurvefit (...) [x, resnorm, residual, exitflag] = lsqcurvefit (...) lsqcurvefit jest elementem Optimization Toolbox (opis parametrw  nastpny slajd). Parametry lsqcurvefit [x, resnorm, residual, exitflag] = lsqcurvefit (fun, x0, xdata, ydata, lb, ub, options) fun  funkcja aproksymujca y = f (x, xdata) x  wektor estymowanych parametrw funkcji aproksymujcej xdata  wektor warto[ci do[wiadczalnych zmiennej niezale|nej ydata  wektor warto[ci do[wiadczalnych zmiennej zale|nej x0  wektor warto[ci pocztkowych estymowanych parametrw lb  wektor ograniczeD dolnych na estymowane parametry ub  wektor ograniczeD grnych na estymowane parametry options  struktura (tworzona przy pomocy funkcji optimset) przekazujca do funkcji lsqcurvefit parametry optymalizacji resnorm  suma kwadratw r|nic residual  wektor r|nic f(x, xdata)  ydata exitflag  warto[ opisujca warunki zakoDczenia obliczeD 1  znaleziono rozwizanie 2  zmiana x mniejsza ni| zadana dokBadno[ 3  zmiana y mniejsza ni| zadana dokBadno[ 4  wielko[ kierunku poszukiwaD mniejsza ni| zadana dokBadno[ 0  osignito zadan liczb iteracji albo zadan liczb obliczeD warto[ci funkcji Aproksymacja [redniokwadratowa nieliniowa. PrzykBad The vapor pressure of liquid 2,2,4-trimethyl pentane 120 2,2,4-trimetyl Rwnanie Antoine a pentan 100 B ln p = A + T P t + C 80 [C] [kPa] 60 function lnp = Antoine (c,T) -15.0 0.667 lnp = c(1) + c(2)./(T+c(3)); 40 -4.3 1.333 20 A = 13.7 7.5 2.666 0 B = -2912.9 -20 0 20 40 60 80 100 20.7 5.333 temperature [C] C = 221.5 29.1 8.000 t = [-15 -4.3 7.5 20.7 29.1 40.7 58.1 78 99.2]; 40.7 13.33 p=[0.667 1.333 2.666 5.333 8.0 13.33 26.66 53.33 101.32]; 58.1 26.66 lnp = log(p); 78.0 53.33 lo = [-Inf -Inf -Inf]; up = [Inf Inf Inf]; 99.2 101.32 c0 = [15 -2000 20]; opcje = optimset ( Algorithm', 'levenberg-marquardt'); [c, resnorm, residual, exitflag] = lsqcurvefit (@Antoine, c0, t, lnp, lo, up, opcje); pressure [kPa] R|niczkowanie numeryczne (1) Czy znajc warto[ci funkcji f w punktach x0, x1, ..., xn mo|emy obliczy warto[ci pochodnej albo caBki? Zale|y od tego co wiemy o funkcji. 1 f (x) [ f (x + h) - f (x)] h Oszacujmy bBd przybli|enia 1 f (x + h) = f (x) + hf (x) + h2 f (x) gdzie x (x, x + h) 2 1 1 f (x) = [ f (x + h) - f (x)]- hf (x) h 2 h 0 blad 0 BBd przybli|enia (obcicia) Przybli|ona warto[ pochodnej R|niczkowanie numeryczne. PrzykBad 1. Dla h = 0.01 znalez przybli|on warto[ pochodnej funkcji f (x) = cos x dla x = p/4 i oszacowa bBd przybli|enia. 1 1 f ( / 4) [ f ( / 4 + 0.01) - f ( / 4)] = (0.700000476- 0.707106781= -0.71063051 ) 0.01 0.01 1 h2 f (x) = 0.005 cos(x) 0.005 2 Poniewa| x (p/4, p/4+h) wic |cos p/4| < 0.707107. W konsekwencji 1 h2 f (x) = 0.005 cos(x) 0.0050.707107 = 0.0035355 2 Prawdziwy bBd jest niewiele mniejszy: Wydaje si, |e warto[ f '(x) ze wzoru 1 1 -sin ( / 4) + 0.71063051 = 0.003523729 f (x) = [ f (x + h) - f (x)]- hf (x) h 2 jest tym dokBadniejsza im mniejsze jest h. R|niczkowanie numeryczne. PrzykBad 2a. Sprawdzmy przypuszczenie z PrzykBadu 1. x = 2 Znalez przybli|on warto[ pochodnej funkcji f (x) = arctg x dla i oszacowa bBd przybli|enia. 1 1 wic f (x) = f ( 2) = x2 +1 3 h [f(x+h)-f(x)]/h 2-4 0.32374954 Najlepsza dokBadno[ f ' (3 cyfry znaczce) 2-12 0.33325195 dla liczb zmiennopozycyjnych 32 bitowych 2-20 0.31250000 2-24 1.00000000 2-26 0.00000000 Odejmujc bliskie wielko[ci tracimy tym wicej cyfr znaczcych im mniejsze jest h. Redukcja liczby cyfr znaczcych uniemo|liwia uzyskanie dobrych przybli|eD pochodnej dla maBych h. R|niczkowanie numeryczne (2) Wezmy inny wzr 1 f (x) [ f (x + h) - f (x - h)] 2h Oszacujmy bBd przybli|enia 1 1 f (x + h) = f (x) + hf (x) + h2 f (x) + h3 f (x+ ) 2 3! 1 1 f (x - h) = f (x) - hf (x) + h2 f (x) - h3 f (x-) 2 3! Odejmujemy stronami 1 1 f (x) = [ f (x + h) - f (x - h)]- h2[ f (x-) + f (x+ )] 2h 12 1 f (x) = [ f (x-) + f (x+)] Je|eli f jest cigBa w (x - h, x + h) to istnieje x takie, |e 2 1 1 Std f (x) = [ f (x + h) - f (x - h)]- h2[ f (x)] 2h 6 BBd jest mniejszy ni| poprzednio bo h jest w wy|szej potdze. Zatem przybli|enie jest dokBadniejsze. R|niczkowanie numeryczne. PrzykBad 2b. x = 2 Znalez przybli|on warto[ pochodnej funkcji f (x) = arctg x dla i oszacowa bBd przybli|enia. 1 1 wic f (x) = f ( 2) = x2 +1 3 Powtarzamy obliczenia z PrzykBadu 2a stosujc wzr. 1 1 f (x) = [ f (x + h) - f (x - h)]- h2[ f (x)] 2h 6 h [f(x+h)-f(x)]/(2h) 2-2 0.33719385 Najlepsza dokBadno[ f ' 2-10 0.33334351 (lepsza ni| w PrzykBadzie 2a) 2-18 0.32812500 dla liczb zmiennopozycyjnych 2-26 0.00000000 32 bitowych Odejmujc bliskie wielko[ci znw tracimy tym wicej cyfr znaczcych im mniejsze jest h.

Wyszukiwarka

Podobne podstrony:
Wyklad studport 8
Wyklad studport 5
Wyklad studport 11
Wyklad studport 7
Wyklad studport 12
Wyklad studport 14
Wyklad studport 4
Wyklad 12 Podstawowe typy zwiazkow chemicznych blok s i p PCHN SKP studport
Wyklad 5 Uklad okresowy pierwiastkow studport
Wyklad 10 Elektrolity, woda, kwasy i zasady PCHN SKP studport
WYKŁAD 4 Elektronowa struktura atomu studport
Sieci komputerowe wyklady dr Furtak
Wykład 05 Opadanie i fluidyzacja
WYKŁAD 1 Wprowadzenie do biotechnologii farmaceutycznej

więcej podobnych podstron