How can I do integral from discrete data points?
16 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
MathWorks Support Team
le 24 Jan 2018
Réponse apportée : MathWorks Support Team
le 23 Fév 2018
I have data "x" and "y" stored as arrays in MATLAB. How can I evaluate the area under the curve just from my data?
Réponse acceptée
MathWorks Support Team
le 24 Jan 2018
You can first interpolate your data to get a function handle. Then, you can use "integral" to integrate your data:
1. Create 50 sample data to work with
>> n = 50;
>> x = linspace(0, 2*pi, n);
>> y = sin(x) + 0.1*randn(1,n);
2. Plot the data to visualize it
>> plot(x,y,'x');
3. Create an interpolation of the data, and save it as a function handle:
>> F = griddedInterpolant(x,y);
>> fun = @(t) F(t)
4. Plot the function to visualize:
>> plot(x, fun(x))
5. Integrate the function with respect to x:
>> q = integral(fun, x(1), x(end))
0 commentaires
Plus de réponses (0)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!