数模论坛

 找回密码
 注-册-帐-号
搜索
热搜: 活动 交友 discuz
查看: 5814|回复: 1

mathematica 矢量分析程序包简介[原创]

  [复制链接]
发表于 2004-8-6 00:08:19 | 显示全部楼层 |阅读模式
< align=left>mathematica 矢量分析程序包 简介</P>
< align=right>
李渊
                                                  北航
2004.08.05</P>
<>mathematica 中大量的特殊用途的函数是以程序包的形式给出的,类似于matlab 的工具箱。关于这部分介绍的资料较少,即使在庞大的mathematica mainbook 中也没有详细的一一介绍。本人在最近比较多的用到了矢量分析程序包,有一些体会,愿与大家分享。</P>
<P>为了使用矢量分析程序包,需要首先用下面的语句装载。
&lt;&lt; Calculus`VectorAnalysis`</P>
<P>1。坐标系设定
CoordinateSystem 是系统变量,记录了当前使用的坐标系。
Coordinates[ ] 返回值是当前的坐标系统的坐标变量。</P>
<P>在未执行其他命令时,{CoordinateSystem, Coordinates[ ]}的返回值是{Cartesian, {Xx, Yy, Zz}}。
Coordinates[coordsys] 返回coordsys坐标系的默认坐标变量。
SetCoordinates[coordsys]设置当前坐标系统为coordsys坐标系。
SetCoordinates[coordsys[vars]]设置当前坐标系统为coordsys坐标系,坐标系统的坐标变量为vars。</P>
<P>coordsys的可选值有:</P>
<OL>
<LI>Bipolar</LI>
<LI>Bispherical</LI>
<LI>Cartesian 笛卡儿座标就是通常的直角坐标系统。</LI>
<LI>ConfocalEllipsoidal</LI>
<LI>ConfocalParaboloidal</LI>
<LI>Conical</LI>
<LI>Cylindrical 柱坐标系统。</LI>
<LI>EllipticCylindrical</LI>
<LI>OblateSpheroidal</LI>
<LI>ParabolicCylindrical</LI>
<LI>Paraboloidal</LI>
<LI>ProlateSpheroidal</LI>
<LI>Spherical 球坐标系统。</LI>
<LI>Toroidal
</LI></OL>
<P>其余的我没用过,我的数学基础暂时也只能理解这三种基本的坐标系统,如果有需要还是看帮助文件吧。或者那位高手给指点一下吧。
例子:SetCoordinates[Spherical[ρ, θ, φ]],具体什么意思大家都能看得懂,我也就不多说了。</P>
<P>CoordinateRanges[]给出坐标变量的参数范围。
ParameterRanges[ ]给出坐标变量的参数范围区间。
Parameters[] 给出坐标变量的默认值。</P>
<P>CoordinatesToCartesian[pt]将pt从当前的坐标系统变换到直角坐标。
CoordinatesToCartesian[pt,coordsys]将pt从coordsys坐标系统变换到直角坐标。
CoordinatesFromCartesian[pt] 将pt从直角坐标变换到当前的坐标系统。
CoordinatesFromCartesian[pt, coordsys] 将pt从直角坐标变换到coordsys坐标系统。</P>
<P>2。各种运算
DotProduct[v1,v2] 计算v1 v2的点积(内积)。
CrossProduct[v1,v2] 计算 v1 v2 的叉乘。
ScalarTripleProduct[v1,v2,v3] 相当于DotProduct[v1,CrossProduct[v2,v3]]。</P>
<P>Div[v];Div[v,coordsys] 散度。
Curl[v];Curl[v,coordsys] 旋度。
Grad[v];Grad[v,coordsys] 梯度。
Laplacian[v];Laplacian[v,coordsys] 拉普拉斯算子。
Biharmonic[v];Biharmonic[v,coordsys] 双协算子(双重拉普拉斯算子)。</P>
<P>这几种运算运算结果mathematica 不会自动进行化简。例如:
Laplacian[r(Cos[theta]+Sin[theta]),Spherical[r,theta,phi]]给出的计算结果是:
(Csc[theta]*(r*Cos[theta]*(Cos[theta] - Sin[theta]) + r*(-Cos[theta] - Sin[theta])*Sin[theta] +   2*r*Sin[theta]*(Cos[theta] + Sin[theta])))/r^2

而实际上经过化简后可得:Csc[theta]/r。
所以在进行计算时最好强制其进行化简,如上式可写成如下:
Laplacian[r(Cos[theta]+Sin[theta]),Spherical[r,theta,phi]]//Simpilfy。</P>
<P>还有其他一些的函数如JacobianMatrix[]等。我还没有用到过,但是在解决有些问题应该还是很有用的,只是限于个人水平就不介绍了,免得写错了误导大家。
</P>
发表于 2004-8-6 18:44:41 | 显示全部楼层
顶!
您需要登录后才可以回帖 登录 | 注-册-帐-号

本版积分规则

小黑屋|手机版|Archiver|数学建模网 ( 湘ICP备11011602号 )

GMT+8, 2019-9-17 17:47 , Processed in 0.248660 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表