非线性方程组图形与数值解法

非线性方程组图形与数值解法
几何画板及绘图内容加载中,请稍等……
2016-07-04 18:53
①本范例演示了如何通过图形和数值方法求解包含两个变量的非线性方程组;②涉及的核心数学概念包括方程组的根、轨迹、隐式曲线以及不同求解方法的比较;③作图要点:使用了 GeoGebra 命令如 Element, Point, If, Locus, Textfield, Polygon, Sequence, RemoveUndefined, Join, Zip, ImplicitCurve 等,对象包括 i, P5, P4, P3, P2, P1, lP, P_i, a, b, Funktion, x_{max}, Px2, x_{min}, Px1, Ax, y_{min}, Py1, y_{max}, Py2, Ay, f00, y0, f1, f2, ε, x0, E0x, g1, g2, E0y, r1, r2, r3, r4, Z1, Z2, N, m1, dx;④适合高中及以上数学学习者,用于理解非线性方程组的解法及比较不同数学工具的应用效果。

GeoGebra 命令及参数

  1. Element(lP, i) → P_i
  2. Point(Segment[Px2, Px1]) → Ax
  3. Point(Segment[Py2, Py1]) → Ay
  4. If(Funktion ≟ 1, a(x, y), If[Funktion ≟ 2, b(x, y), (a(x, y) * b(x, y))]) → f00
  5. If((f1(x0 - ε / 2) * f1(x0 + ε / 2)) < 1E-8 ∧ (f2(x0 - ε / 2) * f2(x0 + ε / 2)) < 1E-8, (x0, y0)) → E0x
  6. If((g1(y0 - ε / 2) * g1(y0 + ε / 2)) < 0 ∧ (g2(y0 - ε / 2) * g2(y0 + ε / 2)) < 0, (x0, y0)) → E0y
  7. If((fxx(xi - ε / 2) * fxx(xi + ε / 2)) < 0, (xi, y(Ay))) → Bxx1
  8. If((fyy(yi - ε / 2) * fyy(yi + ε / 2)) < 0, (x(Ax), yi)) → Byy1
  9. Locus(Bxx1, Ay) → locxx1
  10. Locus(Byy1, Ax) → locyy1
  11. Textfield(a) → inputBox1
  12. Textfield(b) → inputBox2
  13. Polygon((x_{max}, y_{max}), (x_{min}, y_{max}), (x_{min}, y_{min}), (x_{max}, y_{min})) → VV, d, e, g, h
  14. Textfield(N_P) → Textfeld1
  15. If(a_1, N_P, 2) → N_1
  16. Sequence(x_{min} + ((x_{max} - x_{min}) / N_1 * i), i, 0, N_1) → xx, {-6, 0, 6}
  17. Sequence(y_{min} + ((y_{max} - y_{min}) / N_1 * i), i, 0, N_1) → yy, {-6, 0, 6}
  18. RemoveUndefined(Join[Zip[Mirror[{Roots[f00(a, x), y_{min}, y_{max}]}, y = x] + (a, 0), a, xx]]) → Pxxy
  19. Join(Zip[Reverse[{Roots[f00(x, b), x_{min}, x_{max}]}] + (0, b), b, yy]) → Pyyx
  20. Textfield(Funktion) → Textfeld2
  21. Textfield(x_{min}) → Textfeld3
  22. Textfield(y_{min}) → Textfeld4
  23. Textfield(x_{max}) → Textfeld5
  24. Textfield(y_{max}) → Textfeld6
  25. Textfield(N) → Textfeld7
  26. Zip((a(x(pp), y(pp)), b(x(pp), y(pp))), pp, lP) → Liste1
  27. Textfield(ε) → Textfeld8
  28. ImplicitCurve(a) → fa
  29. ImplicitCurve(b) → fb
  30. Textfield(v_{V1}) → InputBox1