1

我想知道我的代码有什么问题。我正在尝试在 Mathematica 中求解非线性方程组(最初在 wolfram 中,但命令太长):

Reduce[Pi*(h^2 + 2*R*(R - r))/sqrt (h^2 + (R - r)^2) - 2*x*Pi/3*h*R - 
     x*Pi/3*h*r == 0 && 
   Pi*(h^2 + 2*r*(r - R))/sqrt (h^2 + (R - r)^2) + 2*Pi*r - 
     x*Pi/3*h*R - 2*x*Pi/3*h*r == 0 && 
   Pi*h*(r + R)/sqrt (h^2 + (R - r)^2) - x*Pi/3*R^2 - x*Pi/3*R*r - 
     x*Pi/3*r^2 == 0 && -Pi/3*h*(R^2 + R*r + r^2) + 1 == 0, {R, r, h, 
   x}];

你知道如何重新输入并解出这些方程吗?我试图根据文档输入它,但我显然犯了一些错误......

这些是原始方程(在 LaTeX 中,我不知道它们是否会在这里正确显示:

\begin{equation*}
     \frac{\partial}{\partial R} L(R, r, h, \lambda) = \frac{\pi(h^2 + 2R(R-r))}{\sqrt{h^2 + (R - r)^2}} - 2\lambda \frac{\pi}{3}hR - \lambda \frac{\pi}{3}hr= 0
\end{equation*}

\begin{equation*}
     \frac{\partial}{\partial r} L(R, r, h, \lambda) = \frac{\pi(h^2 + 2r(r-R))}{\sqrt{h^2 + (R - r)^2}} + 2\pi r - \lambda \frac{\pi}{3}hR - 2\lambda \frac{\pi}{3}hr= 0
\end{equation*}

\begin{equation*}
     \frac{\partial}{\partial h} L(R, r, h, \lambda) = \frac{\pi h(r + R)}{\sqrt{h^2 + (R - r)^2}} - \lambda \frac{\pi}{3}R^2 - \lambda \frac{\pi}{3}Rr - \lambda \frac{\pi}{3}r^2= 0
\end{equation*}

\begin{equation*}
     \frac{\partial}{\partial \lambda} L(R, r, h, \lambda) = - \frac{\pi}{3} h (R^2 + Rr + r^2) + 1 = 0
\end{equation*}

编辑:

我将 pi 更正为 PI,现在它开始评估,所以可能是错误......这需要很长时间......

4

1 回答 1

0

您必须至少学习基础知识。转到帮助->文档中心,然后在搜索栏中单击该书。从一开始就解释了一切。

正如评论中已经指出的那样,所有函数和内置符号都以大写字母开头。因此你的电话应该是

Reduce[Pi*(h^2 + 2*R*(R - r))/Sqrt[h^2 + (R - r)^2] - 2*x*Pi/3*h*R - 
    x*Pi/3*h*r == 0 && 
  Pi*(h^2 + 2*r*(r - R))/Sqrt[h^2 + (R - r)^2] + 2*Pi*r - 
    x*Pi/3*h*R - 2*x*Pi/3*h*r == 0 && 
  Pi*h*(r + R)/Sqrt[h^2 + (R - r)^2] - x*Pi/3*R^2 - x*Pi/3*R*r - 
    x*Pi/3*r^2 == 0 && -Pi/3*h*(R^2 + R*r + r^2) + 1 == 0, {R, r, h, 
  x}]
于 2012-11-14T08:21:23.740 回答