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?
Use trapezoidal method to find the deflection at each measurement point.
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
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.
Antworten (1)
James Tursa
am 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 Kommentare
Torsten
am 1 Okt. 2022
Bearbeitet: Torsten
am 1 Okt. 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).
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!