强制mathematica象征性地评估球形极地卷曲表达?

时间:2011-03-11 04:56:23

标签: wolfram-mathematica

我正在尝试 Mathematica 编程,并且认为我尝试使用球形极坐标手动手动计算(来自E& M类的磁场相量计算)。我已经创建了一个变量并试图将其变为卷曲:

Needs["VectorAnalysis`"]
SetCoordinates[Spherical]
SetAttributes[ k, Constant ]
eE := {0, 0, (Sin[Ttheta]/Rr) ( 1 - I/(k Rr)) e^{I k Rr}}
Curl[ eE ]

这实际上并没有像我想的那样评估衍生物,仅给出:

                I k Rr
               e       (-I + k Rr) Sin[Ttheta]
\[Curl]{0, 0, {-------------------------------}}
                      2
                  k Rr

基本上,它只是将我的输入吐出来作为输出。 SimplifyFullSimplify不会更改结果。

我猜的是,这是因为我没有将k指定为常数,所以我添加了(如上所述),但这并没有什么区别。

2 个答案:

答案 0 :(得分:3)

e^{I k Rr}更改为E^(I k Rr)

  1. {}表示向量,Mathematica接受其所有函数的向量,但输出的向量不是您想要的。例如,e^{1,2,3}变为{e^1, e^2, e^3}。因此,您编写表达式的方式是在第一个列表的第三个位置有一个元素列表,这会将Mathematica关闭。

  2. Mathematica中的常量 e E

答案 1 :(得分:2)

两个问题:

首先,在Mathematica中,符号E,而不是e,是指数常量 e

其次,你将E提升到列表({...},又名List[...])的力量,我认为你的意思是使用parens:

In[17]:= eE:={0,0,(Sin[Ttheta]/Rr) (1-I/(k Rr)) E^(I k Rr)}
In[18]:= Curl[eE]

Out[18]= {(2 E^(I k Rr) (1-I/(k Rr)) Cos[Ttheta])/Rr^2, (Csc[Ttheta]
  (-I E^(I k Rr) k (1-I/(k Rr)) Sin[Ttheta]^2-(I E^(I k Rr) 
  Sin[Ttheta]^2)/(k Rr^2)))/Rr,0}

HTH!