Two Mirrors Reflection
Loading the math board and drawing, please wait…
In collections
Light
This example demonstrates the path of a single light ray reflecting multiple times between two mirrors, adhering to the law of reflection. Key math concepts include angle calculations, vector operations, and sequence generation. GeoGebra commands used are Circle, Vector, Point, UnitOrthogonalVector, UnitVector, Angle, Segment, If, Reflection2b, IndexOf, Ray, Sequence. Suitable for high school physics and mathematics education on optics and geometric sequences.
GeoGebra Commands & Parameters
Circle(B, 1) → qVector(A, B) → gPoint(q) → GVector(B, G) → nrm2UnitOrthogonalVector(nrm2) → m2Circle(A, 1) → r_1Vector(X0, A) → fUnitVector(Vector[UnitVector[g] - UnitVector[f]]) → uPoint(r_1) → FVector(A, F) → nrm1UnitOrthogonalVector(nrm1) → m1Circle(X0, 1) → d_1Point(d_1) → TUnitVector(xAxis) → XUnitVector(yAxis) → YUnitOrthogonalVector(u) → wAngle(nrm1, m1) → βVector(X0, T) → r0Angle(nrm2, m2) → αSegment(A - m1, A + m1) → mirror1whichMirror2(X0, T, P1, Q1, P2, Q2) → t1Segment(B - m2, B + m2) → mirror2If(t1 ≟ 2, B, A) → Z1If(t1 ≟ 2, m2, m1) → x1If(t1 ≟ 2, A, B) → Z2If(t1 ≟ 2, m1, m2) → x2If(t1 ≟ 2, nrm2, nrm1) → n1If(t1 ≟ 2, nrm1, nrm2) → n2Reflection2b(X0, T, Z1 + x1, Z1 - x1, n1, true) → r1, X1, beam1Reflection2b(X1, X1 + r1, Z2 + x2, Z2 - x2, n2, true) → r2, X2, beam2Reflection2b(X2, X2 + r2, Z1 + x1, Z1 - x1, n1, true) → r3, X3, beam3Reflection2b(X3, X3 + r3, Z2 + x2, Z2 - x2, n2, true) → r4, X4, beam4Reflection2b(X4, X4 + r4, Z1 + x1, Z1 - x1, n1, true) → r5, X5, beam5Reflection2b(X5, X5 + r5, Z2 + x2, Z2 - x2, n2, true) → r6, X6, beam6Reflection2b(X6, X6 + r6, Z1 + x1, Z1 - x1, n1, true) → r7, X7, beam7Reflection2b(X7, X7 + r7, Z2 + x2, Z2 - x2, n2, true) → r8, X8, beam8Reflection2b(X8, X8 + r8, Z1 + x1, Z1 - x1, n1, true) → r9, X9, beam9Reflection2b(X9, X9 + r9, Z2 + x2, Z2 - x2, n2, true) → r10, X10, beam10Reflection2b(X10, X10 + r10, Z1 + x1, Z1 - x1, n1, true) → r11, X11, beam11Reflection2b(X11, X11 + r11, Z2 + x2, Z2 - x2, n2, true) → r12, X12, beam12Reflection2b(X12, X12 + r12, Z1 + x1, Z1 - x1, n1, true) → r13, X13, beam13Reflection2b(X13, X13 + r13, Z2 + x2, Z2 - x2, n2, true) → r14, X14, beam14Reflection2b(X14, X14 + r14, Z1 + x1, Z1 - x1, n1, true) → r15, X15, beam15Reflection2b(X15, X15 + r15, Z2 + x2, Z2 - x2, n2, true) → r16, X16, beam16Reflection2b(X16, X16 + r16, Z1 + x1, Z1 - x1, n1, true) → r17, X17, beam17IndexOf(0, Zip[abs(k), k, list1]) → dIf(Defined[d], d, 18) → iwhichMirror2(X17, X17 + r17, P1, Q1, P2, Q2) → kRay(Object["X" + (i - 1)], Vector[Object["r" + (i - 1)]]) → aSequence(4 - round(k / 5), k, 0, 17) → list3
AI Drawing Prompt Reference
Draw the path of a single light ray reflecting multiple times between two parallel mirrors. Start by drawing two circles to represent the mirrors, then draw the initial direction and incidence point of the light ray. Next, calculate the direction and path of the reflected ray after each reflection according to the law of reflection, until the ray path is no longer visible.
The prompt above was compiled from the original drawing commands and is for reference only.