Integration Approximation: Upper Sum, Lower Sum & Trapezoids

Integration Approximation: Upper Sum, Lower Sum & Trapezoids
Loading the math board and drawing, please wait…
2020-05-14 08:04
This GeoGebra example dynamically visualizes three classical methods for approximating definite integrals: the upper sum, lower sum, and trapezoidal sum. It demonstrates how rectangles and trapezoids under a function curve approximate the area when the interval is divided into n subintervals, and compares the accuracy as n increases. The core mathematical concepts include Riemann sums, the geometric meaning of definite integrals, convergence, and numerical integration fundamentals. The construction uses GeoGebra commands such as Integral, UpperSum, LowerSum, TrapezoidalSum, Sequence, If, Sum, Intersect, and Segment, with a slider n controlling the number of subdivisionscars, and text fields for bounds a and b. It is suitable for senior high school or introductory college calculus students to grasp approximation principles and compare numerical methods interactively, and serves as a powerful classroom demonstration tool.

GeoGebra Commands & Parameters

  1. Integral(f, a, b) → c
  2. RectangleSum(f, a, b, n, 2) → e
  3. LowerSum(f, a, b, n) → g
  4. UpperSum(f, a, b, n) → d
  5. TrapezoidalSum(f, a, b, n) → j
  6. Textfield(a) → InputBox1
  7. Textfield(b) → InputBox2
  8. Sequence(a + (w * (b - a) / n), w, 0, n) → xvalues
  9. Sequence(f(a + (w * (b - a) / n)), w, 0, n) → yvalues
  10. If(n ≥ 1, B1 + "", "") → B6
  11. If(n ≥ 1, C1 + "", "") → C6
  12. If(n ≥ 2, D1 + "", "") → D6
  13. If(n ≥ 3, E1 + "", "") → E6
  14. If(n ≥ 4, F1 + "", "") → F6
  15. If(n ≥ 5, G1 + "", "") → G6
  16. If(n ≥ 6, H1 + "", "") → H6
  17. If(n ≥ 7, I1 + "", "") → I6
  18. If(n ≥ 8, J1 + "", "") → J6
  19. If(n ≥ 1, C2 + "", "") → C7
  20. If(n ≥ 2, D2 + "", "") → D7
  21. If(n ≥ 3, E2 + "", "") → E7
  22. If(n ≥ 4, F2 + "", "") → F7
  23. If(n ≥ 5, G2 + "", "") → G7
  24. If(n ≥ 6, H2 + "", "") → H7
  25. If(n ≥ 7, I2 + "", "") → I7
  26. If(n ≥ 8, J2 + "", "") → J7
  27. If(n ≥ 1, B2 + "", "") → If(n ≥ 10, L1 + "", "")
  28. If(n ≥ 1, B2 + "", "") → B7
  29. Sum(yvalues, n) → t
  30. If(n ≥ 1, B9, If[n ≥ 2, B9 + C9]) → text15
  31. If(n ≥ 8, L1 + "", "") → L6
  32. If(n ≥ 8, M1 + "", "") → M6
  33. If(n ≥ 8, N1 + "", "") → N6
  34. If(n ≥ 8, O1 + "", "") → O6
  35. If(n ≥ 8, P1 + "", "") → P6
  36. If(n ≥ 8, Q1 + "", "") → Q6
  37. If(n ≥ 8, R1 + "", "") → R6
  38. If(n ≥ 8, S1 + "", "") → S6
  39. If(n ≥ 8, T1 + "", "") → T6
  40. If(n ≥ 8, U1 + "", "") → U6
  41. If(n ≥ 8, V1 + "", "") → V6
  42. If(n ≥ 8, K2 + "", "") → K7
  43. If(n ≥ 8, L2 + "", "") → L7
  44. If(n ≥ 8, M2 + "", "") → M7
  45. If(n ≥ 8, N2 + "", "") → N7
  46. If(n ≥ 8, O2 + "", "") → O7
  47. If(n ≥ 8, P2 + "", "") → P7
  48. If(n ≥ 8, Q2 + "", "") → Q7
  49. If(n ≥ 8, R2 + "", "") → R7
  50. If(n ≥ 8, S2 + "", "") → S7
  51. If(n ≥ 8, T2 + "", "") → T7
  52. If(n ≥ 8, U2 + "", "") → U7
  53. If(n ≥ 8, V2 + "", "") → V7
  54. If(n ≥ 9, K1 + "", "") → K6
  55. If(n ≥ 1, (Element[xvalues, 1], 0)) → x_1
  56. If(n ≥ 1, (Element[xvalues, 2], 0)) → x_2
  57. If(n ≥ 1, (Element[xvalues, 3], 0)) → x_3
  58. If(n ≥ 1, (Element[xvalues, 4], 0)) → x_4
  59. If(n ≥ 1, (Element[xvalues, 5], 0)) → x_5
  60. If(n ≥ 1, (Element[xvalues, 6], 0)) → x_6
  61. If(n ≥ 1, (Element[xvalues, 7], 0)) → x_7
  62. If(n ≥ 1, (Element[xvalues, 8], 0)) → x_8
  63. If(n ≥ 1, (Element[xvalues, 9], 0)) → x_9
  64. If(n ≥ 1, (Element[xvalues, 10], 0)) → x_{10}
  65. If(n ≥ 1, (Element[xvalues, 11], 0)) → x_{11}
  66. If(n ≥ 1, (Element[xvalues, 12], 0)) → x_{12}
  67. If(n ≥ 1, (Element[xvalues, 13], 0)) → x_{13}
  68. If(n ≥ 1, (Element[xvalues, 14], 0)) → x_{14}
  69. If(n ≥ 1, (Element[xvalues, 15], 0)) → x_{15}
  70. If(n ≥ 1, (Element[xvalues, 16], 0)) → x_{16}
  71. If(n ≥ 1, (Element[xvalues, 17], 0)) → x_{17}
  72. If(n ≥ 1, (Element[xvalues, 18], 0)) → x_{18}
  73. If(n ≥ 1, (Element[xvalues, 19], 0)) → x_{19}
  74. If(n ≥ 1, (Element[xvalues, 20], 0)) → x_{20}
  75. If(n ≟ 20, (b, 0)) → x_{21}
  76. Textfield(f) → InputBox3
  77. Intersect(p, eq1) → A
  78. Intersect(p, eq2) → B
  79. Segment(x_1, A) → f_1
  80. Segment(If[n ≥ 1, (Element[xvalues, n + 1], 0)], B) → s

AI Drawing Prompt Reference

Draw a function curve with the area under it shaded, illustrating three numerical integration approximations: lower sum, upper sum, and trapezoidal sum. Use a slider to control the number of subintervals, and input boxes for the integration bounds. As the slider changes, dynamically show the corresponding rectangles or trapezoids with distinct colors, and display their total areas alongside the exact integral value for comparison. Include the function curve, partition points, filled approximation shapes, and numerical area values that converge as the subdivision count increases.
The prompt above was compiled from the original drawing commands and is for reference only.