Visualizing Riemann Sum Value Locations

Visualizing Riemann Sum Value Locations
Loading the math board and drawing, please wait…
2016-11-28 23:12
In collections Fun with Functions
This GeoGebra example dynamically illustrates how different choices of rectangle heights in a Riemann sum—left endpoints, right endpoints, lower sums, upper sums—affect the approximation of a definite integral. The core mathematical concepts include the Riemann sum definition of the integral, left/right sums, lower/upper sums, and the limiting process as the number of subintervals increases. Construction highlights: it uses GeoGebra commands such as RectangleSum, LowerSum, UpperSum to generate rectangles, a slider (n) to control the partition count, Point, Zip, Sort to build rectangle vertices, SelectedIndex and If to switch between sampling strategies, and Vector and Polynomial to display the function curve and rectangle relationships. This resource is ideal for high school or early college calculus students to grasp the geometric meaning of Riemann sums, and for instructors to demonstrate in class, helping learners overcome the common difficulty of visualizing left versus right sums.

GeoGebra Commands & Parameters

  1. SelectedIndex(slist) → index
  2. If(index ≟ 1, 0, If[index ≟ 2, 0.5, If[index ≟ 3, 1, where]]) → xw
  3. Polynomial({C, D, E, F, G}) → g
  4. Point(xAxis) → B
  5. Point(xAxis) → A
  6. UpperSum(g, 0, 3, 3) → uppersum
  7. RemoveUndefined({(0, g(0)), Extremum[g, 0, 1], (1, g(1))}) → ext0
  8. RemoveUndefined({(1, g(1)), Extremum[g, 1, 2], (2, g(2))}) → ext1
  9. RemoveUndefined({(2, g(2)), Extremum[g, 2, 3], (3, g(3))}) → ext2
  10. Zip(y(a), a, ext0) → ymm0
  11. Zip(y(a), a, ext1) → ymm1
  12. Zip(y(a), a, ext2) → ymm2
  13. Sort(ext0, ymm0) → mm0
  14. Sort(ext1, ymm1) → mm1
  15. Sort(ext2, ymm2) → mm2
  16. RectangleSum(g, 0, 3, 3, xw) → rsum
  17. LowerSum(g, 0, 3, 3) → lowersum
  18. Point(pntlist) → J
  19. Vector(A0, J) → v
  20. Point(pntlist) → K
  21. Vector(A1, K) → w
  22. Point(pntlist) → L
  23. Vector(A2, L) → a
  24. Zip((x(a), 0), a, maxlist) → Xmaxlist
  25. Point(Xmaxlist) → H
  26. Point(maxlist) → I
  27. Vector(H, I) → u
  28. Point(Xmaxlist) → O
  29. Point(maxlist) → P
  30. Vector(O, P) → c
  31. Point(Xmaxlist) → Q
  32. Point(maxlist) → R
  33. Vector(Q, R) → d
  34. Zip((x(a), 0), a, minlist) → Xminlist
  35. Point(Xminlist) → M
  36. Point(minlist) → N
  37. Vector(M, N) → b
  38. Point(Xminlist) → S
  39. Point(minlist) → T
  40. Vector(S, T) → e
  41. Point(Xminlist) → U
  42. Point(minlist) → V
  43. Vector(U, V) → h