Use trapezoidal method to find the deflection at each measurement point.

1 vue (au cours des 30 derniers jours)
Sean Flanagan
Sean Flanagan le 30 Sep 2022
Modifié(e) : Torsten le 1 Oct 2022
Hi,
I have the following 21x2 matrix
I need to use loops and trapezoidal method to find the deflection at each measurement point. By using the trapz command I can find the overall result but I need guidance with how to find the deflection at each measurement point.
  1 commentaire
Sean Flanagan
Sean Flanagan le 1 Oct 2022
cumtrapz gives me each answer for [f(x0)...f(x20]. Is there a way to write the code to give [f(x0)+f(x1)] = ans, [f(x0)+f(x1)+f(x2)] = ans, [f(x0)+f(x1)+f(x2)+f(x3)] = ans .....[f(x0)+f(x1)....+f(x19)+f(x20)] = ans, using for loops?

Connectez-vous pour commenter.

Réponses (1)

James Tursa
James Tursa le 30 Sep 2022
Sounds like you want the cumtrapz( ) function. If the assignment requires you to use loops, just code up the formula found in the trapz( ) doc:
  4 commentaires
Torsten
Torsten le 1 Oct 2022
Modifié(e) : Torsten le 1 Oct 2022
Why
[f(x0)+f(x1)] = ans,
[f(x0)+f(x1)+f(x2)] = ans,
[f(x0)+f(x1)+f(x2)+f(x3)] = ans
.....
[f(x0)+f(x1)....+f(x19)+f(x20)] = ans ?
Don't you need
[f(x0)+f(x1)]/2 * (x1-x0) = ans
[f(x0)+f(x1)] / 2 *(x1-x0) + [f(x1)+f(x2)]/2 * (x2-x1) = ans,
[f(x0)+f(x1)] / 2 *(x1-x0) + [f(x1)+f(x2)]/2 * (x2-x1) + [f(x2)+f(x3)]/2 * (x3-x2) = ans
...
[f(x0)+f(x1)] / 2 *(x1-x0) + [f(x1)+f(x2)]/2 * (x2-x1) + [f(x2)+f(x3)]/2 * (x3-x2) + ... + [f(x19) + f(x20)]/2 * (x20-x19) = ans
?
That's what cumtrapz does.
Otherwise, use cumsum(f) instead of cumtrapz(x,f).
Sean Flanagan
Sean Flanagan le 1 Oct 2022
Thanks mate I must have done something wrong

Connectez-vous pour commenter.

Catégories

En savoir plus sur Numerical Integration and Differentiation dans Help Center et File Exchange

Produits


Version

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by