matlab - 在matlab中拟合3D曲面后如何找到z方向的峰值点
问题描述
我已经拟合了 3D 表面,只是想知道如何在拟合后找到 z 方向的最大值,而不是我给出的最大值,它只是噪声。代码如下。
x=[0 6.8 18.6 21.3 3 12.5 13 20.7 17.7 20.8 1.1 6.3 13.2 3.4 3.5 18.9 11.3 13.1];
y=[1.7 1.1 0.8 1.2 3.1 3 3.1 4.2 4.1 5.8 6.4 5.8 7.4 5.3 5.9 9.7 7.6 10.7];
z=[0.59 0.58 0.53 1.25 1.26 0.2 0.18 0.14 0.64 0. 1.06 0.73 0.15 0.15 0.1 0.08 0.17 0.8];
scatter3(x,y,z)
x=x';
y=y';
z=z';
hold on
Z=[ones(length(x),1),x,y,x.^2,x.*y,y.^2,x.^3,x.^2.*y,x.*y.^2,y.^3];
A=Z\z;
X=min(x)-1:0.2:max(x)+1;
Y=min(y)-1:(max(y)-min(y)+2)/(length(X)+1):max(y)+1;
[x y]=meshgrid(X,Y);
z=A(1)+A(2)*x+A(3)*y+A(4)*x.^2+A(5)*x.*y+A(6)*y.^2+A(7)*x.^3+A(8)*x.^2.*y+A(9)*x.*y.^2+A(10)*y.^3;
mesh(x,y,z)
解决方案
推荐阅读
- php - 为什么在 Shopify 购物车/添加 API 中使用警报仅在 Firefox 浏览器的购物车中添加产品?
- arrays - 如何将形状 (N , N) 维度的数组重塑为 (N , N , 3)
- swift - 无法通过将 cookieAcceptPolicy 设置为 .never 来禁用 cookie
- ios - UitableView 不滚动超过第一个单元格
- thorntail - What is the simplest way to add application users in a Thorntail WildFly server?
- unity3d - ML-AGENTS tensorflow 模型未在推理模式下运行
- c - How to change signal handler in child-process?
- cron - 本月第 n 个星期六的 Linux crontab
- android - 单击标记谷歌地图sdk后如何向下移动相机视图
- javascript - 如何使用 localStorage 缓存按钮结果?