返回首页

如何用Matlab拟合曲面成zernike多项式的形式?

来源:www.ahlulin.com   时间:2023-02-19 01:47   点击:232  编辑:蔡风   手机版

如何用Matlab拟合曲面成zernike多项式的形式?

可用最小二乘法拟合。建议直接用matlab的拟合其中x,y,Z的值都是给出的,Z xy 0 20 40 60 80 1000 -2.3 -3.2 -3.3 -4.1 -3.8 -2.950 -1.2 -3.1 -3.5 -4.2 -3.9 -2.8100 -2.6 -3 -3.6 -4.1 -3.9 -2.3150 -2.6 -2.9 -3.7 -4 -3.5 -2.2200 -1.6 -3.2 -3.8 -3.9 -3.6 -1.9250 -1.6 -3.3 -3.9 -4.3 -3.8 -1.9300 -2.3 -2.9 -4 -3.9 -3.7 -1.7麻烦高手写出具体的编程啊,谢谢~问题补充:不好意思x=[0 20 40 60 80 100]y=[0 50 100 150 200 250 300]z=[-2.3 -3.2 -3.3 -4.1 -3.8 -2.9;-1.2 -3.1 -3.5 -4.2 -3.9 -2.8;-2.6 -3 -3.6 -4.1 -3.9 -2.3;-2.6 -2.9 -3.7 -4 -3.5 -2.2;-1.6 -3.2 -3.8 -3.9 -3.6 -1.9;-1.6 -3.3 -3.9 -4.3 -3.8 -1.9; -2.3 -2.9 -4 -3.9 -3.7 -1.7]拟合成z=f(x,y)= a20x2+a02y2+a11xy+a10x+a01y+a00的形式谢谢~

cftool

matlab中用插值对三维离散数据拟合出三维曲面后,怎样求曲面的极值

你拟合出来的曲面应该是一个矩阵吧,用max函数就可以找最大值。

要极值点的话可以试试用gradient。不过应该找梯度向量的模长小于某个阈值的点(而不是正好为0),因为数值计算是有误差的。

顶一下
(0)
0%
踩一下
(0)
0%