How to calculate displacement from acceleration data?
27 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
AdamG2013468
am 9 Okt. 2019
Beantwortet: John D'Errico
am 9 Okt. 2019
I have field vibration (acceleration) data that was collected at a sample frequency of 5k Hz. I would like to get instantaneous displacement for each acceration sample. I understand that in physics you would typically define your kinematic equation for acceleration, take the double integral, and input your time = t for when you are trying to calculate your instantaneous displacement.
Since I have messy field data that is a collection of various spectral energy, I can't fit a nice equation to my time history waveform. What is the best way to accomplish my above goal using MATLAB functions?
Please forgive me for forgetting much of my Algebra and Calculus knowledge...
2 Kommentare
Akzeptierte Antwort
John D'Errico
am 9 Okt. 2019
You already know how to use trapz. Just use it twice. However, you mention instantaneous displacement, and the problem with trapz is it gives you an integral over the entire range.
So if you look at the help for trapz, you will see at the bottom, the name cumtrapz.
Cumtrapz gives you the integral cumulatively up to that point. I think this is what you are looking to find. Again, just use cumtrapz twice. The first call gives you velocity. The second call is dosplacement.
In general, if you don't know how to do something in MATLAB, then use tools like help, doc, lookfor. Check the links at the bottom of the help, as they may point you to something good. For example, if you tried this:
lookfor integration
then it would have mentioned cumtrapz as a possible utility of interest.
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Numerical Integration and Differentiation finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!