声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1334|回复: 9

[绘图技巧] 求救:已知曲面函数,但用数组绘制曲面错误

[复制链接]
发表于 2006-11-13 14:48 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
执行以下命令绘图:
x=linspace(30.47625713,30.57531608);
y=linspace(90.56463428,90.63957482);
[X,Y]=meshgrid(x,y)
Z=179925172.76988-6936387.54914148.*X+6991.38179131672.*(X.^2)+2337.85299605506.*(X.^3)-1.72775307890517.*Y-6.76736183768652.*(Y.^2)-176.033731893418.*(Y.^3)+0.802988154617374.*(Y.^4)+0.00584382959709739.*(Y.^5)

结果得到的Z数组结果不对(用标量值x、y带入以上多项式得到正确的结果,证明该多项式没有问题)。
请教高手Z数组的错误原因,不胜感激!
回复
分享到:

使用道具 举报

发表于 2006-11-13 15:48 | 显示全部楼层

回复

看来你还是没有搞懂"点"运算,Z的表达式中有点乱用"点"的感觉.虽然此例中并不影响结果.
后一句话"Z数组的错误原因"没听懂是什么意思.

[ 本帖最后由 xjzuo 于 2006-11-13 15:53 编辑 ]
 楼主| 发表于 2006-11-13 15:54 | 显示全部楼层
对呀,我也觉得是表达式的问题。能给指点一下错误的地方吗?已经查了两天的资料了。多谢了!
 楼主| 发表于 2006-11-13 15:58 | 显示全部楼层
"Z数组的错误原因"是指我在workspace中打开Z这个数组时发现各个元素偏离测量值较大。
发表于 2006-11-13 16:16 | 显示全部楼层

回复

如果模型已经选定为你给的Z表达式,那么如下计算本身并没有任何错误:

%%%稍微修改了一下:
x=linspace(30.47625713,30.57531608);
y=linspace(90.56463428,90.63957482);
[X,Y]=meshgrid(x,y);
Z=179925172.76988-6936387.54914148*X+6991.38179131672*X.^2+2337.85299605506*X.^3-1.72775307890517*Y-6.76736183768652*Y.^2-176.033731893418*Y.^3+0.802988154617374*Y.^4+0.00584382959709739*Y.^5;
mesh(X,Y,Z)

但你说的"测量数据"我不知道是否仍然以该模型Z为基础,还是...?
可能要稍微说一下你的测量过程.

[ 本帖最后由 xjzuo 于 2006-11-13 16:19 编辑 ]
 楼主| 发表于 2006-11-13 17:23 | 显示全部楼层
非常感谢你给的改正。
Z表达式是我根据GPS测量数据用1stopt拟和出来的,“测量数据”不是以该模型为基础,而是原始采集数据。根据Z表达式计算单个点的高程值,然后与该测量数据中的高程值作比较,差值很小。4800米左右的测量值误差为2~3米。
 楼主| 发表于 2006-11-13 17:34 | 显示全部楼层
照你的修改充作了一下,但结果还是那样。
我在workspace中打开Y时,当"numeric format"为shortG时,某些相邻行数值一样,当将"numeric format"改为shortG时,数值没有相同的行。
X数组没有这种现象,一切正常。
请问这是什么原因?是因为只是显示的问题吗?我实在找不出别的原因了。
发表于 2006-11-13 19:07 | 显示全部楼层

回复

我在第一次回复中已经讲了“虽然此例中并不影响结果”,所以修改后结果不变。

按你的意思是,好象是先采样,用1stopt拟合出了Z的表达式;然后再采样,与模型Z比较,发现不是很相符,是这个意思吗?
还是说拟合得到的模型Z给出的数据与原来的采样数据偏差太大?如果是这样,那只能说“拟合得到的模型Z”并不好,应该试试其它模型了.
另:拟合模型给出的数据与原数据有一定的小偏差是正常的.

如果可以的话,可以把你的数据传上来,看看是否可以找到其它模型。

[ 本帖最后由 xjzuo 于 2006-11-13 19:11 编辑 ]
 楼主| 发表于 2006-11-13 19:15 | 显示全部楼层
当用数组计算时拟合得到的模型Z给出的数据与原来的采样数据偏差太大,用单个点的x、y坐标代入模型得到的数据与原测量数据的偏差很小。
 楼主| 发表于 2006-11-15 11:10 | 显示全部楼层
问题解决了,是将模型应用到错误的数据上了,谢谢xjzuo的提示。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-25 01:19 , Processed in 0.057151 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表