使用Matlab(R2018b)画复杂函数的图形(网格图meshgrid)及等高线contour

您所在的位置:网站首页 如何用matlab输入一个复杂的矩阵函数 使用Matlab(R2018b)画复杂函数的图形(网格图meshgrid)及等高线contour

使用Matlab(R2018b)画复杂函数的图形(网格图meshgrid)及等高线contour

2024-07-17 02:47| 来源: 网络整理| 查看: 265

1、函数

这里使用2D Michalewicz 函数,其表达式为:

2、画图 2.1 编写2D Michalewicz 函数 f=@(x,y)(-sin(x).*(sin(x.^2/3.1415926)).^(2*m)... -sin(y).*(sin(2*y.^2/3.1415926)).^(2*m));

上述代码使用到了Anonymous Functions, 相关变量的数据类型为function_handle.

仔细一看,代码比数学表达式多了几个点,这里点的作用是把矩阵里的每一个数字进行处理,而不是对矩阵相乘。

因为画图时,代入函数自变量x,y 中的数据格式为矩阵,下文将会详细介绍这一点。

2.1 生成网格矩阵 range=[0 4 0 4]; Ngrid=100; dx=(range(2)-range(1))/Ngrid; dy=(range(4)-range(3))/Ngrid; xgrid=range(1):dx:range(2); ygrid=range(3):dy:range(4); [x,y]=meshgrid(xgrid,ygrid);

meshgrid函数生成网格矩阵,x,y 均为矩阵

2.3 画图 z=f(x,y); figure(1); surfc(x,y,z);



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3