"not a well-formed equation" 使用 Mathematica 消除

"not a well-formed equation" using Mathematica Eliminate

使用消除函数时,我收到一条错误消息 "Eliminate::eqf: y is not a well-formed equation"

Symbol["a"];
Symbol["b"];
Symbol["s"];
Symbol["x0"];
Symbol["y0"];

x == (a/(2*s))*
   Sqrt[2 + 2*s*Sqrt[2]*cos[t] + s^2*cos[2*t]] - (a/(2*s))*
   Sqrt[2 - 2*s*Sqrt[2]*cos[t] + s^2*cos[2*t]] + x0

y == (b/(2*s))*
   Sqrt[2 + 2*s*Sqrt[2]*sin[t] - s^2*cos[2*t]] - (b/(2*s))*
   Sqrt[2 - 2*s*Sqrt[2]*sin[t] - s^2*cos[2*t]] + y0

Eliminate[{x, y}, t]

什么决定了一个良构的解决方案?

Mathematica 区分大小写并使用 Cos[t]Sin[t],而不是 cos[t] 或 sin[t]。 Eliminate 期望得到方程式。

试试这个

Eliminate[{
  x == (a/(2*s))*Sqrt[2 + 2*s*Sqrt[2]*Cos[t] + s^2*Cos[2*t]] - (a/(2*s))*Sqrt[2 - 
    2*s*Sqrt[2]*Cos[t] + s^2*Cos[2*t]] + x0,
  y == (b/(2*s))*Sqrt[2 + 2*s*Sqrt[2]*Sin[t] - s^2*Cos[2*t]] - (b/(2*s))*Sqrt[2 - 
    2*s*Sqrt[2]*Sin[t] - s^2*Cos[2*t]] + y0},t]

它给出了部分解决方案,但您的问题非常复杂,无法完全解决 t 并且它警告说它在执行的操作中使用了反函数,这可能会遗漏一些潜在的解决方案。

这个

Reduce[{
  x == (a/(2*s))*Sqrt[2 + 2*s*Sqrt[2]*Cos[t] + s^2*Cos[2*t]] - (a/(2*s))*Sqrt[2 - 
    2*s*Sqrt[2]*Cos[t] + s^2*Cos[2*t]] + x0,
  y == (b/(2*s))*Sqrt[2 + 2*s*Sqrt[2]*Sin[t] - s^2*Cos[2*t]] - (b/(2*s))*Sqrt[2 - 
    2*s*Sqrt[2]*Sin[t] - s^2*Cos[2*t]] + y0},t]

可能会或可能不会给出更详细和复杂的结果,该结果应该正确处理反函数特殊情况,您可能会或可能不会应用到您的问题。