Roots of an Absolute Value Equation

Roots of an Absolute Value Equation
Loading the math board and drawing, please wait…
2019-03-12 04:23
This example demonstrates the geometric representation and solution process of the roots of an absolute value equation. Key math concepts include absolute value functions, equation solving, and geometric constructions. It utilizes GeoGebra commands like Ray, Slope, Mirror, Intersect, Segment, Point, Line, RemoveUndefined, Element, If, Polygon, Unique, and LaTeX for construction. Suitable for high school mathematics students to understand the solution methods and geometric significance of absolute value equations.

GeoGebra Commands & Parameters

  1. Ray(C, C') → RayC'
  2. Slope(RayC') → minSlope
  3. Mirror(C', x = x(C)) → C''
  4. Ray(C, C'') → RayC''
  5. Intersect(RayC'', Line[topRight, yAxis]) → maxRight
  6. Slope(RayC'') → maxSlope
  7. Segment((vbRight, vbBottom), (vbRight, vbTop)) → vSliderRight
  8. Point(vSliderRight) → B
  9. Intersect(RayC', Line[bottomLeft, yAxis]) → maxLeft
  10. Segment((vbLeft, vbBottom), (vbLeft, vbTop)) → vSliderLeft
  11. Point(vSliderLeft) → A
  12. Line(B, A) → LineA
  13. RemoveUndefined(Union[{Intersect[LineA, RayC']}, {Intersect[LineA, RayC'']}]) → IntersectionPointsA
  14. Element(IntersectionPointsA, 1) → firstIntPt
  15. If(xInterceptVal > 0, Line[B, Line[C, C']], Line[A, Line[C, C'']]) → LineB
  16. RemoveUndefined(Union[{Intersect[LineB, RayC']}, {Intersect[LineB, RayC'']}]) → IntersectionPointsB
  17. Polygon({(vbRight, vbTop), (vbRight, vbBottom), (vbLeft, vbBottom), (vbLeft, vbTop)}) → viewbox
  18. RemoveUndefined(Zip[If[IsInRegion[A, viewbox], A], A, IntersectionPointsB]) → IntPointsBInViewbox
  19. If(fixedSlope, Slope[LineB] ≟ maxSlope ∧ Distance[Element[IntersectionPointsB, 1], C] < pointTolerance, Distance[B, maxRight] < pointTolerance ∧ abs(Slope[LineA] - maxSlope) < slopeTolerance) → infiniteSolutionsC''
  20. If(fixedSlope, Distance[Element[IntersectionPointsB, 1], C] < pointTolerance ∧ Slope[LineB] ≟ minSlope, Distance[maxLeft, A] < pointTolerance ∧ abs(Slope[LineA] - minSlope) < slopeTolerance) → infiniteSolutionsC'
  21. Unique(Zip[If[Distance[A, firstIntPt] < pointTolerance, firstIntPt, A], A, IntersectionPointsA]) → IntPtsWithToleranceA
  22. RemoveUndefined(Zip[If[IsInRegion[A, viewbox], A], A, IntPtsWithToleranceA]) → IntPointsInViewbox
  23. LaTeX("y=\left\vert ax+b \right\vert") → lblF
  24. If(fixedSlope, If[Defined[IntersectionPointsB], Length[IntersectionPointsB], 0], If[Defined[IntPtsWithToleranceA], Length[IntPtsWithToleranceA], 0]) → numIntersectionPoints
  25. LaTeX("y=px+q") → lblG
  26. Intersect(If[fixedSlope, LineB, LineA], x = 3) → Lblpt
  27. LaTeX("\text{\textbf{Instructions: }Move points \(A\) and \(B\) up and down to change \(y=px+q\).\\Click `Lock slope' to match the slope of \(px+q\) with the slope of one branch of \(\left\vert ax+b\right\vert\). \\Click `Try Another' to change \(\left\vert ax+b \right\vert\).}") → SpecInstruc
  28. LaTeX("\text{\textbf{Note: } The number of roots of \(\left\vert ax+b\right\vert = px+q\) is equal to\\the number of intersection points of \(y=\left\vert ax + b \right\vert \) and \(y=px + q\).}") → txtInfo
  29. Ray(C, C'') → RayC''Infinite
  30. LaTeX(If[nonVisiblePoints, "Note: one or more of the intersection \\points is not visible in the viewing window.", ""]) → fbNotVisible
  31. Ray(C, C') → RayC'Infinite
  32. LaTeX((((("\text{There " * If[infiniteSolutions, "are an infinite number \\of intersection points.", If[numIntersectionPoints ≟ 0, "are NO intersection points.", If[numIntersectionPoints ≟ 1, "is one intersection point.", "are two intersection points."]]]) * "\\") * fbNotVisible) * "}")) → txtNumIntersectionPts
  33. LaTeX("\text{\textbf{Question: }How many roots can equations of the form \(\left\vert ax+b \right\vert = px+q\) have?}") → MainInstruc
  34. Segment(Element[legendAnchors, 2], Element[legendAnchors, 2] + (3, 0)) → lineLegend
  35. Segment(Element[legendAnchors, 1], Element[legendAnchors, 1] + (3, 0)) → fxLegend