2017-05-07 3 views
0

Es gibt Daten aus einer CSV-Datei. Es enthält den Widerstand eines kühlenden Metallteils zu einer bestimmten Zeit. Die Messung begann bei t = 7.8s. Die Aufgabe besteht darin, den Graphen von 7,8s auf 0s zu extrapolieren, um den höchsten Widerstand und damit die maximale Temperatur zu bestimmen. Wie kann ich dies mit Matlab erreichen? Ich habe folgendes versucht, das nicht zu befriedigenden Ergebnissen geführt hat.Extrapolieren Sie einen Satz von Messdaten mit Matlab

data = csvread('05A_edit.csv'); 
time = data(:,2)+7.8; 
resistance = data(:,3); 
timep = linspace(0,7.8,167); 
resistancep = interp1(time,resistance,timep,'linear','extrap'); 
plot(time,resistance,'b',timep,resistancep,'r'); 

Die Handlung der Rohdaten sieht wie folgt vor: enter image description here

Vielen Dank im Voraus.

+0

Was ist das Problem mit Ihrem Ergebnis? – user2999345

+0

Es würde einfach mit einer Linie "weitermachen", die willkürlich erscheint und nicht gut mit den anderen Daten harmoniert. –

Antwort

0

würde ich passend verwenden. Haben Sie Ideen zu Ihren Daten? Es sieht exponentiell aus. Ich würde verwenden:

[fitresult, gof]=fit(x,y,'exp1') 
Y1=fitresult (X1)