【MATLAB】绘制矢量场图

Step 1 

在MATLAB中绘制矢量场图的函数是quiver,利用help命令查看该函数的解释。 

一般来说,输入参数可以是四个(x,y,u,v),也可以是两个参数(u,v),要求是这些参数都大小相同的矩阵

注意:在输入参数只有两个(u,v),实际上是默认[x,y]=meshgrid(0:length(u),0:length(u))

Step 2 

参数:(x,y)表示矢量的起点,\vec{a}=u\vec{i}+v\vec{j},(u,v)表示矢量的大小和方向。

描述:1、数学上可以描述二元函数的梯度,梯度是一个矢量哦。

                               (u,v)=({\frac{\partial f }{\partial x}},{\frac{\partial f }{\partial y}})

           2、物理学上可以描述电场线、磁场线。

               点电荷的电势:U=q/4\pi \varepsilon \sqrt{x^2+y^2},电势的梯度实际上就是电场强度\vec{E}

Step 3

例子1:描述圆锥的二元函数f(x,y)=\sqrt{x^2+y^2},矢量图表示梯度。

[x,y]=meshgrid(-2:0.1:2,-2:0.1:2);
z=sqrt(x.^2+y.^2);
mesh(x,y,z);
u=x./sqrt(x.^2+y.^2);
v=y./sqrt(x.^2+y.^2);
figure;
quiver(x,y,u,v,1);

     三维图

 矢量场图

例子2:Plot the gradient (梯度) of the function .。

[X,Y] = meshgrid(-2:.2:2);
Z = X.*exp(-X.^2 - Y.^2);
[DX,DY] = gradient(Z,.2,.2);
//求梯度
figure
contour(X,Y,Z)//求等势线
hold on
quiver(X,Y,DX,DY)//求矢量图
hold off

 三维图

矢量场图

如果把这个函数看做电势的函数,矢量图实际上就是电场线。 

例子三:点电荷的电势:U=q/4\pi \varepsilon \sqrt{x^2+y^2},简单化,假如U=1/\sqrt{x^2+y^2},求电场线分布。

[X,Y] = meshgrid(-2:.2:2);
Z = 1./sqrt(X.^2 + Y.^2);
DX=-X./(X.^2+Y.^2).^(3/2);
DY=-Y./(X.^2+Y.^2).^(3/2);
figure;
quiver(X,Y,DX,DY);

Step 4:

LineStyle连接https://ww2.mathworks.cn/help/matlab/ref/linespec.html

  • 15
    点赞
  • 128
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Matlab绘制矢量场图,你可以使用quiver函数。这个函数可以根据给定的坐标和矢量绘制箭头,表示矢量的方向和大小。 首先,你需要定义要绘制的坐标和矢量。你可以使用meshgrid函数创建网格坐标,并计算出每个坐标点上的矢量值。例如,以下代码创建了一个网格坐标和一个与之对应的梯度矢量: [X,Y] = meshgrid(-2:.2:2); Z = X.*exp(-X.^2 - Y.^2); [DX,DY] = gradient(Z,.2,.2); 然后,你可以使用contour函数绘制函数的等势线,以显示函数的曲面形状: figure contour(X,Y,Z) 接下来,你可以使用quiver函数绘制矢量场图。quiver函数接受四个参数,分别是x坐标,y坐标,x方向上的矢量分量,y方向上的矢量分量。例如,以下代码绘制了梯度矢量图: hold on quiver(X,Y,DX,DY) hold off 最后,你可以使用hold on和hold off来在同一个图形窗口中同时显示等势线和矢量场图。 综上所述,要在Matlab绘制矢量场图,你可以先使用meshgrid函数创建坐标和计算矢量,然后使用contour函数绘制等势线,最后使用quiver函数绘制矢量场图。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [【MATLAB绘制矢量场图](https://blog.csdn.net/qq_44960956/article/details/107519225)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [MATLAB矢量箭头图(含MATLAB代码)](https://blog.csdn.net/weixin_46204734/article/details/125542796)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值