查看单个帖子
旧 2008-11-06, 16:04   #1
cross
初级会员
 
注册日期: 2008-11-06
年龄: 42
帖子: 7
声望力: 0
cross 正向着好的方向发展
默认 求教 Matlab 三维数值积分

求教数值积分

对于3D空间中100k个坐标点及其上面数据值使用matlab进行数值积分, 有没有成熟的程序段哪? 我一直没有找到. 自己采用类似复化梯形法划分坐标网格,对网格内数据求平均计算可以较快解决, 但是精度很低. 如果采用插值, 用interp3, 又会对3维矩阵的大小产生限制, 无法引入足够多的原始数据点, 精度依然无法提高. 对于采用单元内平均值的方法,用一维验证,类似于梯形法,积分sin(x)在-pi到pi之间,结果在0.01和0.001之间,很难说趋近于0. 第三种我采用的办法是划分坐标网格(其实我的模型是柱体)后,对每个单元单元内部点上的数据拟合出 f=a0+a1*x+a2*y+a3*z 在每个单元内求积分解析解,然后对全部单元求和, 这样仍然大量消耗内存. (刚刚经过每次将近一个小时的运算, 发现随着剖分单元增加, 积分结果并不收敛,收敛曲线见附件, 同时附上程序草稿)
请教大家有没有什么好办法. 急!!!!!!!!!!! 感谢.

各位如果有时间, 也可以帮忙回答到这个邮箱里面 [email protected]
不胜感激.
cross 当前离线   回复时引用此帖