Discovering Volumes of Revolution with Discs

Discovering Volumes of Revolution with Discs
Loading the math board and drawing, please wait…
2017-03-01 21:50
① This example dynamically demonstrates how a curve rotated about an axis generates a solid of revolution, and uses the disc method (slicing method) to visualize the approximation and exact computation of its volume. ② Core mathematical concepts include definite integrals, volumes of revolution, Riemann sums, limits, and the connection between function graphs and solid geometry. ③ Construction highlights: using GeoGebra commands such as Sequence, Rotate, Intersect, Polygon, Circle, Surface, Cylinder, Dilate, Segment, Textfield, and Integral, it builds the function f, interval [a,b], number of subdivisions n, slice thickness deltax, a list of rotating discs list1, and the resulting surface; a slider for n allows real-time comparison of the approximate volume with the exact integral value. ④ Suitable for senior high school or early college calculus students to understand the derivation of the volume formula, and as an interactive teaching tool for instructors.

GeoGebra Commands & Parameters

  1. Sequence(Polygon[(a + (i * deltax), 0), (a + ((i + 1) * deltax), 0), (a + ((i + 1) * deltax), f(a + ((i + 1) * deltax))), (a + (i * deltax), f(a + ((i + 1) * deltax)))], i, 0, n - 1, 1) → list1
  2. Rotate(list1, α, y = 0) → list1'
  3. Intersect(i, l) → B
  4. Intersect(k, l) → C
  5. Intersect(j, k) → D
  6. Polygon(C, B, A, D) → poly1, c_2, b_1, a_1, d
  7. Rotate(C, α, y = 0) → C'
  8. Rotate(B, α, y = 0) → B'
  9. Rotate(A, α, y = 0) → A'
  10. Rotate(D, α, y = 0) → D'
  11. Polygon(C', B', A', D') → poly1', c', b', a', d'
  12. Sequence((a + (i * deltax), 0), i, 0, n, 1) → list2
  13. Sequence((a + (i * deltax), f(a + (i * deltax))), i, 1, n, 1) → list3
  14. Rotate(list3, α, y = 0) → list3'
  15. Sequence((a + (i * deltax), f(a + ((i + 1) * deltax))), i, 0, n - 1, 1) → list4
  16. Sequence(x = a + (i * deltax), i, 1, n, 1) → list6
  17. Sequence(Segment[Element[list3, i], Element[list4, i]], i, 0, n, 1) → list5
  18. Sequence(CircleSector[Element[list2, i + 1], Element[list3', i], Element[list3, i], xOyPlane], i, 1, n, 1) → list7
  19. Sequence(Cylinder[Element[list2, i], Element[list2, i + 1], f(Element[list2, i + 1])], i, 1, n, 1) → list8
  20. Sequence(Circle[Element[list2, i], f(Element[list2, i]), x = 0], i, 2, n + 1, 1) → list10
  21. Circle((a, 0), f(a + deltax), x = 0) → p
  22. Surface(q, α) → e
  23. Cylinder((x(A), 0), (x(A) - deltax, 0), y(A)) → o, r, s, t
  24. Dilate(E, If[0 < u ≤ 1, 1 - u, 0], D) → E'
  25. Dilate(F, If[0 < u ≤ 1, 1 - u, 0], A) → F'
  26. Segment(E, E') → f_1
  27. Segment(F, F') → g_1
  28. Dilate(D, If[1 < u ≤ 2, 2 - u, 0], A) → D'_1
  29. Segment(D, D'_1) → h_1
  30. Rotate(F, α, y = 0) → F'_1
  31. Rotate(F', α, y = 0) → F''
  32. Segment(F'_1, F'') → i_1
  33. Rotate(E, α, y = 0) → E'_1
  34. Rotate(E', α, y = 0) → E''
  35. Segment(E'_1, E'') → j_1
  36. Rotate(D, α, y = 0) → D'_2
  37. Rotate(D'_1, α, y = 0) → G
  38. Segment(D'_2, G) → k_1
  39. Textfield(f) → InputBox1
  40. Textfield(a) → InputBox2
  41. Textfield(b) → InputBox3
  42. Integral(f, a, b) → m_1