利用Matlab绘制梯度图、散度图、旋度图。.doc

题 目电磁场理论实验姓 名学 号班 级任课老师实验日期2013年 10月 19日

一、实验目的:

1、利用Matlab绘制梯度图;

2、利用Matlab绘制散度图;

3、利用Matlab绘制旋度图。

二、实验原理:

1.梯度(gradient)

在二元函数的情形,设函数z=f(x,y)在平面区域D内具有一阶连续偏导数,则对于每一点P(x,y)∈D,都可以定出一个向量:(δf/x)*i+(δf/y)*j。这向量称为函数z=f(x,y)在点P(x,y)的梯度,记作gradf(x,y)。类似的对三元函数也可以定义一个:(δf/x)*i+(δf/y)*j+(δf/z)*k 。记为grad[f(x,y,z)]。

2.散度(divergence)

设某量场由 A(x,y,z) = P(x,y,z)i + Q(x.y,z)j + R(x,y,z)k 给出,其中 P、Q、R 具有一阶连续偏导数,∑ 是场内一有向曲面,n 是 ∑ 在点 (x,y,z) 处的单位法向量,则 ∫∫A?ndS 叫做向量场 A 通过曲面 ∑ 向着指定侧的通量,而 δP/δx + δQ/δy + δR/δz 叫做向量场 A 的散度,记作 div A,即 div A = δP/δx + δQ/δy + δR/δz。上述式子中的 δ 为偏微分(partial derivative)符号。

3.旋度(rotation)

表示曲线、流体等旋转程度的量。设有向量场 A(x,y,z)=P(x,y,z)i+Q(x,y,z)j+R(x,y,z)k 用行列式来表示的话,若 A=Ax?i+Ay?j+Az?k。则旋度rotA=(dAz/dy-dAy/dz)i+(dAx/dz-dAz/dx)j+(dAy/dx-dAx/dy)k。旋度的物理意义:设想将闭合曲线缩小到其内某一点附近,那么以闭合曲线L为界的面积也将逐渐减小.一般说来,这两者的比值有一极限值,记作即单位面积平均环流的极限。它与闭合曲线的形状无关,但显然依赖于以闭合曲线为界的面积法线方向且通常L的正方向与规定要构成右手螺旋法则,旋度的重要性在于,可用通过研究表征矢量在某点附近各方向上环流强弱的程度,进而得到其单位面积平均环流的极限的大小程度。

总之,梯度是函数变化率最大的方向向量。散度描述向量沿闭曲面积分,若散度>0,流出大于流入,说明闭曲面内有源泉,散度<0则闭曲面内有漏洞,散度=0则出入平衡。旋度描述向量沿闭曲线积分环量最大的方向及强度。

梯度表达式:grad[f(x,y,z)]=(δf/x)*i+(δf/y)*j+(δf/z)*k

散度表达式:div A=δP/δx + δQ/δy + δR/δz

旋度表达式:rotA=(dAz/dy-dAy/dz)i+(dAx/dz-dAz/dx)j+(dAy/dx-dAx/dy)k

在建立了指定函数的数学模型后,依据上面的分析与所建立的数学模型可以在Matlab环境下编制可仿真,可执行的仿真程序。

三、实验内容:

1.分别用mesh()和surf()绘制出函数xx.*exp(-xx.^2-yy.^2)的立体曲面图。

>>>>>

x=linspace(-2,2,25);

y=linspace(-2,2,25);

[xx,yy]=meshgrid(x,y);

zz=xx.*exp(-xx.^2-yy.^2);

mesh(xx,yy,zz);

colorbar;

>>>>>

>>>>>

x=linspace(-2,2,25);

y=linspace(-2,2,25);

[xx,yy]=meshgrid(x,y);

zz=xx.*exp(-xx.^2-yy.^2);

surf(xx,yy,zz);

colorbar;

>>>>>

1.2.分别用mesh()和surf()绘制出函数sqrt(xx.^2+yy.^2) 的立体曲面图。

>>>>>

x=linspace(-2,2,25);

y=linspace(-2,2,25);

[xx,yy]=meshgrid(x,y);

zz=sqrt(xx.^2+yy.^2);

mesh(xx,yy,zz);

colorbar;

>>>>>

>>>>>

x=linspace(-2,2,25);

y=linspace(-2,2,25);

[xx,yy]=meshgrid(x,y);

zz=sqrt(xx.^2+yy.^2);

surf(xx,yy,zz);

colorbar;

>>>>>

2.分别画出以上两个函数的等高线,并标注等高线值。

>>>>>

x=linspace(-2,2,25);

y=linspace(-2,2,

更多推荐