Area under cycloide
Loading the math board and drawing, please wait…
This example demonstrates how to calculate the area under a cycloidal curve. The key mathematical concepts involved include integral calculus, differential calculus, limits, and parametric equations. The construction utilizes GeoGebra commands such as CurveCartesian, Point, Intersect, Circle, Segment, Midpoint, Sequence, Translate, and Take. It is suitable for university-level calculus courses to illustrate the method of calculating the area under a cycloidal curve and its geometric significance.
GeoGebra Commands & Parameters
CurveCartesian((R * (i - sin(i))), (R * (1 - cos(i))), i, 0, Animation) → bPoint(b) → LIntersect(xAxis, yAxis) → OCircle(C, R) → cSegment(C, A) → dSegment(D, B) → aMidpoint(a) → FMidpoint(O, B) → GMidpoint(B, E) → HCircle(D, If[Animation < 15, ((Animation - 10) * R / 5), R]) → qMidpoint(d) → ZSequence(((R * (i - sin(i))), (R * (1 - cos(i)))), i, 0, (2 * π), (2 * π / 30)) → l1Sequence(Polygon[B, Element[l1, i], Element[l1, i + 1]], i, 1, Length[l1] / 3) → l2Sequence(Polygon[B, Element[l1, i], Element[l1, i + 1]], i, 1 + Length[l1] / 3, (2 * Length[l1] / 3)) → l3Circle(J, R) → eSequence(Rotate[J + (R, 0), i, J], i, 0, (2 * π), (2 * π / 10)) → l5Sequence(Vector[Element[l5, i], Element[l1, i]], i, 1, 11) → l6Translate(J, Vector[(If[Animation < 10, 0, (Animation - 10) / 5] * Vector[J, B])]) → J'Sequence(Translate[Element[l5, i], Vector[(If[Animation < 10, 0, (Animation - 10) / 5] * Element[l6, i])]], i, 1, Length[l5]) → l7Sequence(Polygon[J', Element[l7, i], Element[l7, i + 1]], i, 1, Length[l7]) → l8Sequence(CircleSector[J, Element[l5, i], Element[l5, i + 1]], i, 1, Length[l5]) → l9Circle(I, R) → fSequence(Rotate[I + (R, 0), i, I], i, 0, (2 * π), (2 * π / 10)) → l5bTake(l1, 11, 21) → l1bSequence(Vector[Element[l5b, i], Element[l1b, i]], i, 1, Length[l1b]) → l6bSequence(Translate[Element[l5b, i], Vector[(If[Animation < 10, 0, (Animation - 10) / 5] * Element[l6b, i])]], i, 1, Length[l5b]) → l7bTranslate(I, Vector[(If[Animation < 10, 0, (Animation - 10) / 5] * Vector[I, B])]) → I'Sequence(Polygon[I', Element[l7b, i], Element[l7b, i + 1]], i, 1, Length[l7b]) → l8bSequence(CircleSector[I, Element[l5b, i], Element[l5b, i + 1]], i, 1, Length[l5b]) → l9bCircle(M, R) → gTranslate(M, Vector[(If[Animation < 10, 0, (Animation - 10) / 5] * Vector[M, B])]) → M'Take(l1, 21, 31) → l1cSequence(Rotate[M + (R, 0), i, M], i, 0, (2 * π), (2 * π / 10)) → l5cSequence(Vector[Element[l5c, i], Element[l1c, i]], i, 1, Length[l1c]) → l6cSequence(Translate[Element[l5c, i], Vector[(If[Animation < 10, 0, (Animation - 10) / 5] * Element[l6c, i])]], i, 2, Length[l5c]) → l7cSequence(CircleSector[M, Element[l5c, i], Element[l5c, i + 1]], i, 1, Length[l5c]) → l9cSequence(Polygon[M', Element[l7c, i], Element[l7c, i + 1]], i, 2, Length[l7c]) → l8cSequence(Polygon[B, Element[l1, i], Element[l1, i + 1]], i, (2 * Length[l1] / 3), Length[l1]) → l4