使用Mathematica Eliminate的“格式不正确的方程式”

时间:2019-08-21 19:56:42

标签: wolfram-mathematica

使用Eliminate函数,我收到一条错误消息,指出“ Eliminate :: eqf:y格式不正确”。

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]

什么决定了格式正确的解决方案?

1 个答案:

答案 0 :(得分:0)

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

尝试一下

Eliminate

它提供了部分解决方案,但是您的问题非常复杂,无法完全解决t并警告说它在做的事情中使用了反函数,这可能会遗漏一些潜在的解决方案。

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]

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