Wykład VIII Rozwiązywanie równań i układów równań nieliniowych

Podobne dokumenty
1 Równania nieliniowe

Rozwiązywanie równań nieliniowych

Matematyka stosowana i metody numeryczne

Wprowadzenie Metoda bisekcji Metoda regula falsi Metoda siecznych Metoda stycznych RÓWNANIA NIELINIOWE

Metody Obliczeniowe w Nauce i Technice

( ) + ( ) T ( ) + E IE E E. Obliczanie gradientu błędu metodą układu dołączonego

ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH

RÓWNANIA NIELINIOWE Maciej Patan

1 Metody rozwiązywania równań nieliniowych. Postawienie problemu

Rozwiązywanie równań nieliniowych i ich układów. Wyznaczanie zer wielomianów.

Wstęp do metod numerycznych Rozwiazywanie równań algebraicznych. P. F. Góra

Metody numeryczne I Równania nieliniowe

Metody numeryczne Wykład 7

Wybrane metody przybliżonego. wyznaczania rozwiązań (pierwiastków) równań nieliniowych

Laboratorium 5 Przybliżone metody rozwiązywania równań nieliniowych

KADD Minimalizacja funkcji

WYMAGANIA Z WIEDZY I UMIEJĘTNOŚCI NA POSZCZEGÓLNE STOPNIE SZKOLNE DLA KLASY 3g. zakres rozszerzony

METODY NUMERYCZNE. Wykład 4. Numeryczne rozwiązywanie równań nieliniowych z jedną niewiadomą. prof. dr hab.inż. Katarzyna Zakrzewska

Metody rozwiązywania równań nieliniowych

METODY NUMERYCZNE. Wykład 4. Numeryczne rozwiązywanie równań nieliniowych z jedną niewiadomą. Rozwiązywanie równań nieliniowych z jedną niewiadomą

Metody Numeryczne. Wojciech Szewczuk

Sterowanie Ciągłe. Używając Simulink a w pakiecie MATLAB, zasymulować układ z rysunku 7.1. Rys.7.1. Schemat blokowy układu regulacji.

Rozwiązywanie równań nieliniowych i ich układów. Wyznaczanie zer wielomianów.

Metody numeryczne. Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski

Zagadnienia - równania nieliniowe

ALGEBRA Z GEOMETRIĄ ANALITYCZNĄ

Równania nieliniowe. LABORKA Piotr Ciskowski

Metody numeryczne. materiały do wykładu dla studentów

WAHADŁO SPRĘŻYNOWE. POMIAR POLA ELIPSY ENERGII.

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Metody Numeryczne Optymalizacja. Wojciech Szewczuk

METODY ROZWIĄZYWANIA RÓWNAŃ NIELINIOWYCH

Rozwiązywanie równań nieliniowych i ich układów. Wyznaczanie zer wielomianów.

Metody numeryczne. Wykład nr 2. dr hab. Piotr Fronczak

Zastosowanie informatyki w elektrotechnice

TEORIA OBWODÓW I SYGNAŁÓW LABORATORIUM

Wstęp do metod numerycznych 9. Rozwiazywanie równań algebraicznych. P. F. Góra

Wykład 21: Studnie i bariery cz.1.

A. Cel ćwiczenia. B. Część teoretyczna

Metody numeryczne. Równania nieliniowe. Janusz Szwabiński.

1. RACHUNEK WEKTOROWY

Wprowadzenie do metod numerycznych Wykład 2 Numeryczne rozwiązywanie równań nieliniowych

Metody numeryczne. Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski

Podstawy Automatyki Zbiór zadań dla studentów II roku AiR oraz MiBM

INFORMATYKA ELEMENTY METOD NUMERYCZNYCH.

Elementy metod numerycznych

ZADANIA OPTYMALIZCJI BEZ OGRANICZEŃ

Metody Numeryczne w Budowie Samolotów/Śmigłowców Wykład I

Wyznaczanie miejsc zerowych funkcji

Optymalizacja ciągła

METODY NUMERYCZNE. Wykład 3. Plan. Aproksymacja Interpolacja wielomianowa Przykłady. dr hab.inż. Katarzyna Zakrzewska, prof.agh. Met.Numer.

Zadania do rozdziału 5

Wyznaczanie miejsc zerowych funkcji

Zwięzły kurs analizy numerycznej

Metody optymalizacji nieliniowej (metody programowania nieliniowego) Ewa Niewiadomska-Szynkiewicz Instytut Automatyki i Informatyki Stosowanej

ELEMENTY ANALIZY NUMERYCZNEJ ELEMENTY ANALIZY NUMERYCZNEJ. Egzamin pisemny zestaw 1 24 czerwca 2019 roku

Układy równań nieliniowych (wielowymiarowa metoda Newtona-Raphsona) f(x) = 0, gdzie. dla n=2 np.

Iteracyjne rozwiązywanie równań

Egzamin z Metod Numerycznych ZSI, Grupa: A

Filtracja pomiarów z głowic laserowych

Metody numeryczne. dr Artur Woike. Ćwiczenia nr 2. Rozwiązywanie równań nieliniowych metody połowienia, regula falsi i siecznych.

3. Interpolacja. Interpolacja w sensie Lagrange'a (3.1) Dana jest funkcja y= f x określona i ciągła w przedziale [a ;b], która

Metody Obliczeniowe w Nauce i Technice

ELEMENTY ANALIZY NUMERYCZNEJ ELEMENTY ANALIZY NUMERYCZNEJ. Egzamin pisemny zestaw 1 26 czerwca 2017 roku

Ćw. 5. Badanie ruchu wahadła sprężynowego sprawdzenie wzoru na okres drgań

Metody numeryczne. materiały do wykładu dla studentów. 7. Całkowanie numeryczne

Interpolacja. Marcin Orchel. Drugi przypadek szczególny to interpolacja trygonometryczna

Bardzo łatwa lista powtórkowa

DRGANIA WŁASNE RAM OBLICZANIE CZĘSTOŚCI KOŁOWYCH DRGAŃ WŁASNYCH

x y

5. Rozwiązywanie układów równań liniowych

Modelowanie przez zjawiska przybliżone. Modelowanie poprzez zjawiska uproszczone. Modelowanie przez analogie. Modelowanie matematyczne

Kubatury Gaussa (całka podwójna po trójkącie)

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Instrukcje pętli przykłady. Odgadywanie hasła. 1) Program pyta o hasło i podaje adres, gdy hasło poprawne lub komunikat o błędnym haśle.

Pomiary napięć przemiennych

DSP-MATLAB, Ćwiczenie 5, P.Korohoda, KE AGH. Ćwiczenie 5. Przemysław Korohoda, KE, AGH

ROZWIĄZYWANIE UKŁADÓW RÓWNAŃ NIELINIOWYCH PRZY POMOCY DODATKU SOLVER PROGRAMU MICROSOFT EXCEL. sin x2 (1)

Metody iteracyjne rozwiązywania układów równań liniowych (5.3) Normy wektorów i macierzy (5.3.1) Niech. x i. i =1

Wykład 9. Fizyka 1 (Informatyka - EEIiA 2006/07)

BELKI CIĄGŁE STATYCZNIE NIEWYZNACZALNE

Aproksymacja funkcji a regresja symboliczna

PLAN WYNIKOWY Z MATEMATYKI DLA KLASY IV TECHNIKUM 5 - LETNIEGO

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Wstęp do metod numerycznych 9a. Układy równań algebraicznych. P. F. Góra

Metody numeryczne. Sformułowanie zagadnienia interpolacji

Interpolacja, aproksymacja całkowanie. Interpolacja Krzywa przechodzi przez punkty kontrolne

A4: Filtry aktywne rzędu II i IV

KOLOKWIUM Z ALGEBRY I R

Wstęp do metod numerycznych Zadania numeryczne 2016/17 1

Matematyka licea ogólnokształcące, technika

8. PODSTAWY ANALIZY NIELINIOWEJ

Lab 10. Funkcje w argumentach funkcji metoda Newtona. Synonimy nazw typów danych. Struktury. Tablice struktur.

Wykład 5. Zagadnienia omawiane na wykładzie w dniu r

ANALIZA WIELOKRYTERIALNA

Dystrybucje, wiadomości wstępne (I)

Zaawansowane metody numeryczne

Wykład X Rozwiązywanie zagadnień początkowych dla równań różniczkowych zwyczajnych

Podstawy Automatyki. Wykład 7 - obiekty regulacji. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Metody numeryczne. Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski

Transkrypt:

Wyład VIII Rozwiązywanie równań i uładów równań nieliniowych Równania nieliniowe w technice Zadanie wyznaczenia pierwiastów równania nieliniowego Metody iteracji z otaczaniem i podziałem (bisecja i regula-falsi) Metody iteracji z wyorzystaniem siecznej i stycznej Zera wielomianu wartościami własnymi pewnej macierzy Problemy wielowymiarowe - ułady równań

Równania i funcje nieliniowe w technice Opis funcjami nieliniowymi względem wielości wejściowej, wyjściowej, wewnętrznej (np. stanu) bądź parametrów jest powszechny w technice. Poniżej podano przyłady. Nie-prostoliniowy ruch obietów poddawanych zewnętrznym oddziaływaniom: tor planet w polu grawitacyjnym Słońca, ruch eletronów w polu magnetycznym cewe odchylających monitora, Trajetoria pocisu przy prędości początowej, oporach powietrza i grawitacji. Nieliniowości są powszechne w zagadnieniach technicznych z powodu ograniczeń fizycznych tarcie suche opisane nieliniową funcją względem prędości w przeciwieństwie do tarcia wisotycznego, nasycenia tranzystorów i wzmacniaczy (ograniczenie od napięcia zasilającego), nasycenie materiałów magnetycznych (np. blach transformatorowych). Odpowiedzi liniowych uładów dynamicznych są nieliniowymi funcjami czasu i parametrów odpowiedź inercyjna nieliniowa od czasu, wysoość piu rezonansowego odpowiedzi częstotliwościowej obietu oscylacyjnego nieliniowa względem tłumienia. Równania i ułady równań nieliniowych powstają przy naładaniu warunów (osiągnięcie oreślonej wartości, przecięcie trajetorii) na nieliniowe funcje opisujące.

Wyznaczanie pierwiastów równania nieliniowego (zer funcji nieliniowej) trudności i podstawowe idee Trudności: możliwość brau zer (np. wielomian z zerami zespolonymi iedy szuamy rzeczywistych), duże nagromadzenie zer w przedziale (np. dla funcji sin(/x) w pobliżu zera), możliwość brau zmiany znau (np. dla zer wielomianu o parzystej rotności), nieciągłości, osobliwości. Pomysły na rozwiązanie: zgrubnie narysować przebieg funcji dla zorientowania się w problemie, znaleźć przedział, w tórym funcja zmienia zna i iteracyjnie go zawężać, wystartować z dowolnego puntu i podążać w ierunu malejących co do modułu wartości. Informacja do wyorzystania: wartości funcji, wartości lub przybliżenie pochodnych funcji, poprzednio znalezione zera. Sposób ontroli doładności: różnica między wartością funcji a zerem różnica między bieżącym oszacowaniem zera a rozwiązaniem (ale to jest nieznane) różnica między dwoma olejnymi oszacowaniami

Metody iteracji z otaczaniem i podziałem (bisecja i regula-falsi) Idea otoczenia pierwiasta i iteracyjnego zbliżania się do niego tworzy podstawę metod obszaru zamniętego (closed domain). Ponieważ dają one ontrolę przedziału zawierającego pierwiaste, dają też przewidywalną szybość zbieżności i wielość błędu. Metoda bisecji (połowienia przedziału) f(x) f(x) a p c b x a c p b x W ażdym rou następuje wybór dwóch nowych puntów ograniczających przedział z zerem spośród dwóch starych puntów ograniczających i puntu środa przedziału. Jeśli f ( a ) f ( c ) < 0: a = a, b = c, w przeciwnym przypadu: a = c, b = b a + b Oszacowanie zera w -tym rou: p = c = 2 b0 a0 Błąd oszacowania zera w -tym rou: p p ε = = ε + (zbieżność liniowa) 2 2

Metoda regula-falsi (interpolacji liniowej) Zbieżność metody połowienia jest niezależna od ształtu funcji w otoczeniu zera. Tę zbieżność można przyśpieszyć stosując interpolację liniową funcji na bazie puntów ograniczających. Zasada wyboru nowych puntów ograniczających pozostaje ta sama. f(x) a c p b x Przyrównując nachylenie prostej interpolującej przechodzącej przez punty ograniczające a, b do nachylenia prostej przechodzącej przez b, i poszuiwane c: f ( b) f ( a) f ( c) f ( b) = b a c b otrzymamy oszacowanie zera funcji: f ( b)( b a) p = c = b f b f a ( ) ( ) Metoda interpolacji liniowej będzie się zachowywała lepiej (będzie szybciej zbieżna) dla funcji dobrze przybliżanych prostą w oolicach zera. Błąd maleje w proporcjach liniowych (czyli zbieżność jest liniowa): ( ε = Kε ), gdzie K zależy od pochodnych funcji.

Metody iteracji w obszarze otwartym Drugim pomysłem na poszuiwanie zera był start z dowolnego puntu i podążanie w ierunu malejących co do modułu wartości. Zacznijmy od przystosowania metody interpolacji liniowej do tego podejścia. Ponieważ rezygnujemy z zasady otaczania zera, to rozwiązanie interpolacyjne musimy zastąpić estrapolacyjnym. Metoda siecznych (estrapolacji liniowej) Następne oszacowanie zera identyczne ja w metodzie f(x) interpolacji liniowej (możliwa estrapolacja): f ( b)( b a) p = c = b f ( b) f ( a) Wybór puntów do następnego oszacowania wg zasady bliżej p bieżącego oszacowania : a b dla c a < c b : a+ = a, b+ = c c x dla c a > c b : a+ = c, b+ = b Szybość zbieżności metody siecznych dla zer jednorotnych jest więsza niż liniowa (zbieżność superliniowa), tzn.:.62 ε = K gdzie K zależy od wartości pierwszej i drugiej pochodnej f(x). ε

Metoda iteracji Newtona-Raphsona Przy malejącej odległości puntów interpolacji wyrażenie na nachylenie prostej zbliża się do pochodnej (stycznej). Algorytm z użyciem pochodnej jest nazywany metodą Newtona-Raphsona. f ( p ) p = p, =, f ( p ) warune zbieżności (wyprowadzenie np. w J.H. Mathews, Numerical methods for... ): f ( x) f ( x) dla x [ p δ, p + δ] : <, x [ p δ, p + δ] f ( x) Szybość zbieżności (szybość zmniejszania błędu): f ( p) 2 Dla jednorotnego zera p zbieżność wadratowa: ε ε 2 f ( p) M Dla zera p o rotności M zbieżność liniowa: ε ε M Ta metoda ma zastosowanie przy generowaniu schematów iteracyjnych, iedy znana jest analityczna pochodna funcji i zastosowanie ogólne przy różnicowym przybliżeniu pochodnej. 2 Przyład Obliczanie pierwiasta wadratowego liczby A jao zera funcji f ( x) = x A. Zbudujemy zbieżny do pierwiasta wadratowego schemat iteracyjny: 2 f ( x) = 2x, x = x ( x A) 2x = 0.5( x + A x) A

Metoda Mullera (estrapolacji/interpolacji wadratowej) Poprzednie metody siecznej i stycznej używały modelu liniowego funcji w bieżącym puncie dla predycji (przez interpolację lub estrapolację) zera funcji. Dla funcji z dużą rzywizną w oolicy zera oznacza to wolną zbieżność algorytmu. Naturalne więc jest zwięszenie stopnia wielomianu interpolacyjnego do drugiego co powinno sutować lepszą zbieżnością. To właśnie realizuje algorytm Mullera. Równanie paraboli na trzech puntach: 2 f(x) g( x) = a( x xi) + b( x xi) + c gdzie współczynnii: 2 2 δh2 δ2h δ2h δh2 a=, b=, c= fi hh 2( h h2) hh 2( h h2) p gdzie: c x h = xi xi, h2 = xi 2 xi i x i- x i-2 x δ = fi fi, δ2 = fi 2 fi Zero paraboli interpolującej daje oszacowanie zera funcji: 2c x = i+ c = x i 2 b± b 4ac.84 o zbieżności superliniowej ε + = Kε (trochę lepsza od siecznej, trochę gorsza od stycznej). Ja widać metoda wymaga ilu (niesompliowanych) obliczeń, ale jest stosowana.

Implementacja funcji fzero (zob. też Numerical Recipes ) function [b,fval,exitflag,output] = fzero(funfcnin,x,varargin) %FZERO Scalar nonlinear zero finding. % Copyright 984-2002 The MathWors, Inc.... fc = fb; % Main loop, exit from middle of the loop while fb ~= 0 % Insure that b is the best result so far, a is the previous % value of b, and c is on the opposite of the zero from b.... % Convergence test and possible exit m = 0.5*(c - b); toler = 2.0*tol*max(abs(b),.0); if (abs(m) <= toler) (fb == 0.0), brea, end % Choose bisection or interpolation if (abs(e) < toler) (abs(fa) <= abs(fb)) % Bisection d = m; e = m; step=' bisection'; else % Interpolation s = fb/fa; if (a == c) % Linear interpolation p = 2.0*m*s; q =.0 - s; else % Inverse quadratic interpolation q = fa/fc; r = fb/fc; p = s*(2.0*m*q*(q - r) - (b - a)*(r -.0)); q = (q -.0)*(r -.0)*(s -.0); end; if p > 0, q = -q; else p = -p; end; % Is interpolated point acceptable if (2.0*p < 3.0*m*q - abs(toler*q)) & (p < abs(0.5*e*q)) e = d; d = p/q; step=' interpolation'; else d = m; e = m; step=' bisection'; end; end % Interpolation % Next point... end % Main loop Katedra Metrologii AGH

Przyład Esperymentalne porównanie szybości zbieżności poszczególnych metod Problem: wyznaczenie momentu pierwszego przejścia przez wartość ustaloną odpowiedzi soowej obietu oscylacyjnego drugiego rzędu (np. czujni ciśnienia). Zgrubnie odczytana wartość dla pierwszego przejścia to t=2.5..4.2 Step Response Przyjmiemy punt startowy dla metod obszaru otwartego t 0 =2, a dla metod przedziału zamniętego t 0 =2, t =4. Amplitude 0.8 0.6 0.4 0.2 0 0 2 4 6 8 0 2 3 2.8 2.6 2.4 Time (sec) BS RF NR 2.2 0 2 4 6 8 0 2 function C=nlsolvers(solver, its) C=zeros(,its); a=2; b=4; c=a; for i=:its switch(solver) case 'bisection', if f(a)*f(c)<0 b=c; else a=c; end c=(a+b)/2; case 'regula-falsi', if f(a)*f(c)<0 b=c; else a=c; end c=b-f(b)*(b-a)/(f(b)-f(a)); case 'newton-raphson', c=c-f(c)/fp(c); otherwise, error('bra metody'); end C(i)=c; end function y=f(t) % odpowiedz soowa K=; w0=; si=0.5; p=sqrt(-si^2); y=-/p*exp(-si*w0*t); y=y*sin(w0*p*t+asin(p)); function y=fp(t) % pochodna odpowiedzi soowej % czyli odpowiedz impulsowa K=; w0=; si=0.5; p=sqrt(-si^2); y=w0/p*exp(-si*w0*t); y=y*sin(w0*p*t); it=2; cb=nlsolvers('bisection',it); cr=nlsolvers('regula-falsi',it); cn=nlsolvers('newton-raphson',it); plot(:it,cb,:it,cr,:it,cn); grid on, legend('bs','rf','nr');

Przypade szczególny - zera wielomianu poprzez wartości własne Wartości własne macierzy były zerami wielomianu charaterystycznego macierzy (mało efetywna metoda rozwiązania zagadnienia własnego). Mając dany wielomian możemy postąpić odwrotnie, tzn. utworzyć macierz dla tórej będzie on wielomianem charaterystycznym i wyznaczyć wszystie zera wielomianu (rzeczywiste i zespolone) algorytmem rozwiązania zagadnienia własnego. Ja można sprawdzić, wielomian (ogólniejszy wielomian możemy sprowadzić do tej postaci): N N P( x) = x + an x + + ax+ a0 jest wielomianem charaterystycznym tzw. macierzy stowarzyszonej (companion matrix): an an 2 a a0 0 0 P = 0 0 0 0 ( ) = det[ P xi ] P x Stąd zera P( x ) to wartości własne P. function r = roots(c) % Copyright 984-2002 The MathWors, Inc.... % Polynomial roots via a companion matrix n = length(c); if n > a = diag(ones(,n-2),-); a(,:) = -c(2:n)./ c(); r = [r;eig(a)]; end

Problemy wielowymiarowe - ułady równań Uogólnienie metody Newtona-Raphsona (metoda stycznej w puncie) na przypade wielowymiarowy to metoda Newtona, tórą przez analogię zapiszemy wetorowo jao: P+ = P J( P) F( P ) gdzie (dla ilości równań równej ilości zmiennych niezależnych): wetor zmiennych: wetor funcji: macierz Jaobianu: F F P F ( P) P PN P = F F ( P) = J( P) = = P PN FN ( P) FN F N P PN 0 będzie wyonywany w następujących roach: W pratyce algorytm poszuiwania F( P) = ) Oblicz wartości funcji i Jaobianu w bieżącym puncie: ( ) F P, J( P ) 2) Rozwiąż uład równań liniowych ze względu na P : J P= F 3) Wyznacz następne oszacowanie zera: P = P P + Ulepszona postać tego algorytmu jest zaimplementowana (Matlab) w fsolve jao algorytm dogleg. Inny sposób rozwiązania to zmiana problemu uładu równań nieliniowych na problem poszuiwania minimum sumy wadratów sładowych. Ponieważ suma wadratów ma minimalną wartość zero dla wszystich sładowych zerowych, więc to problem równoważny. Funcja fsolve może działać w ten sposób (algorytmy lm i gn). Algorytmy minimalizacji na następnym wyładzie.

Przyład Śledzenie oresu próbowanego przebiegu napięcia/prądu sieciowego Pomysły na rozwiązanie: FFT i wybór masymalnego prąża (duża rozdzielczość dużo oresów słabe śledzenie) Aprosymacja sinusem w jednym oresie (dopasowanie nieliniowe trzech parametrów) Wyznaczenie momentów zmiany znau +/- i proste zliczanie próbe pomiędzy nimi Precyzyjniejsze wyznaczenie momentu zmiany loalna interpolacja lub aprosymacja. Np. loalna interpolacja pierwszego stopnia, loalna interpolacja trzeciego stopnia, loalna aprosymacja trzeciego stopnia, loalna aprosymacja sinusem w oolicy zera Porównajmy doładność trzech wybranych metod: prostego zliczania i interpolacji pierwszego i trzeciego stopnia. 200 00 Proste zliczanie 0-0.02-0.05-0.0-0.005 0 0.005 0.0 0.05 0.02 Interpolacja liniowa 800 600 400 200 0 - -0.5 0 0.5 x 0-5 Interpolacja sześcienna 000 500 0 - -0.5 0 0.5 x 0-8 L=0000; dt=0.0; t=-0.5:dt:.5; for i=:l T=+0.05*randn; w=2*pi/t; y=sin(w*t+2*pi*0.05*randn); ys=sign(y); yz=diff(ys); iz=find(yz>0); % proste zliczanie count=iz(2)-iz(); Tep=count*dt; % interpolacja pierwszego stopnia y=y(iz()); y2=y(iz()+); dt=dt*y2/(y2-y); y=y(iz(2)); y2=y(iz(2)+); dt2=dt-dt*y2/(y2-y); Tei=(count-)*dt+dt+dt2; % Interpolacja trzeciego stopnia p=polyfit(-:2,y(iz()-:iz()+2),3); r=roots(p); ir=find(imag(r)==0); ic=find(r(ir)>=0 & r(ir)<=); dt=dt*(-r(ic)); p=polyfit(-:2,y(iz(2)-:iz(2)+2),3); r=roots(p); ir=find(imag(r)==0); ic=find(r(ir)>=0 & r(ir)<=); dt2=dt*r(ic); Tea=(count-)*dt+dt+dt2; Tref(i)=T; Tp(i)=Tep; Ti(i)=Tei; Ta(i)=Tea; end dtp=(tp-tref)./tref; dti=(ti-tref)./tref; dta=(ta-tref)./tref;