Derivative of Temperature vs time data
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have a CSV file with temperature data and time. I am trying to model the dynamic response of the temperature sensor, to do so I want to take the derivative of the data. I have used the "diff" command but my data just looks messy.
5 commentaires
Sam Chak
le 25 Fév 2025
Modifié(e) : Sam Chak
le 25 Fév 2025
Hi Ryan, the diff() function in MATLAB, when applied to the measured data, will return some values. But it does not magically give you a smooth and beautiful mathematical model, like dT/dt = f(T). Just for your info.
P.S. Same as gradient().
dpb
le 26 Fév 2025
And, of course, it also presumes the times have been recorded with sufficient precision to be able to use them...one often finds a timestamp has been recorded but not with sufficient precision to be useful.
Réponses (1)
charan
le 12 Mai 2025
Hi Ryan,
Here are some suggestions to calculate a smoother derivative of noisy data:
- Smoothing the data by using smoothing filters and moving averages can help reduce noise. Refer to the following documentation: https://www.mathworks.com/help/curvefit/smoothing-data.html
- Removing outliers from the data and normalizing the signal can help improve the derivative.
- Curve fitting can be done to the data to obtain a functional representation of the data and then differentiate the fitted curve to obtain a better derivative. Refer to the following documentation: https://www.mathworks.com/help/curvefit/example-differentiating-and-integrating-a-fit.html
The following MATLAB answer might be useful to you: https://www.mathworks.com/support/search.html/answers/253882-differentiating-a-noisy-position-signal.html
0 commentaires
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!