2017-05-07 5 views
0

Il existe des données provenant d'un fichier csv. Il contient la résistance d'une pièce métallique de refroidissement à un certain moment. Le mesuremnt a commencé à t = 7.8s. La tâche est d'extrapoler le graphique de 7.8s à 0s pour déterminer la plus haute résistance et donc la température maximale. Comment puis-je l'obtenir en utilisant matlab? J'ai essayé ce qui suit qui n'a pas donné de résultats satisfaisants.Extrapoler un ensemble de données de mesure avec 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'); 

L'intrigue des données brutes regarde les éléments suivants: enter image description here

Merci à l'avance.

+0

quel est le problème avec votre résultat? – user2999345

+0

Il ne ferait que "continuer" avec une ligne qui semble arbitraire et ne se mélange pas bien avec les autres données. –

Répondre

0

J'utiliserais un raccord. Avez-vous des idées sur vos données? Cela a l'air exponentiel. Je voudrais utiliser:

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