How to make a composite trapezoidal rule have more than 1 iteration?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi I have written the function for composite trapezoidal rule and I'm required to calculate the volume by integrating 1/(1+x^2) from 0 to 1. I've found the volume (0.7845) but how do i show the number of iterations and absolute error only when the accuracy of the estimation has improved by a decimal place. I'm supposed to fprintf like the as shown below but i don't understand how to make the trapezoidal rule have more than one iteration??
Thanks I'm new to matlab
Iter Pts Vol_est Error
2 3 0.41333333 0.05545687 (1 DP)
5 6 0.41799014 0.00888872 (2 DP)
15 16 0.41878025 0.00098765 (3 DP)
48 49 0.41886937 0.00009645 (4 DP)
0 comentarios
Respuestas (1)
Walter Roberson
el 23 de Dic. de 2015
The trapazoidal rule gets more accurate as you sample more finely. The "Iterations" is the number of pieces the range is subdivided in to. 2 pieces takes 3 points, one at the beginning, one in the middle, one in the end. 3 pieces takes 4 points, one at the beginning, one 1/3 of the way, one 2/3 of the way, one at the end. Notice in the table that Pts is always 1 greater than Iter: that is due to this relationship. "Iter" == "Subdivisions"
4 comentarios
Walter Roberson
el 11 de En. de 2016
There is no built in function to determine if an error has improved by a decimal point.
I would point out, though, that if abs(current_error) <= abs(recorded_error)/10 then the current error is at least one decimal place better.
If you want to know how many decimal places current_error is, think about log10
Ver también
Categorías
Más información sobre Logical en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!