nnpc.net
当前位置:首页 >> 求高手用mAtlAB编程计算下面一个三重积分 >>

求高手用mAtlAB编程计算下面一个三重积分

符号积分 >> syms x y z>> int(int(int(x+y+z,y,0,1-x-z),x,0,1-z),z,0,1) ans = 1/8数值积分 >> triplequad(@(x,y,z)(x+y+z).*(x+y+z

syms x y z F2=int(int(int(x^2+y^2+z^2,z,sqrt(x*y),x^2*y),y,sqrt(x),x^2),x,1,2); VF2=vpa(F2) VF2 = 224.92153573331143159790710032805 迈特莱博

用triplequad或者integral3函数(后者需2012a之后的版本)。 如果需要帮你做,请把具体函数贴出来。

高中数学,你应该先把公式写出来,在用matlab求解 这个不是三重积分,底面积*高/3 帮你到底吧 syms alpha a height = a/tan(alpha/2); V = pi*a^2*height

我不清楚你说的简单的三次积分指的是什么方法,Matlab进行三次积分的话常用的应该有符号积分和数值积分两种方式。数值积分的话用triplequad函数就好了,符号积分的话用嵌套int函数也可以实现。

假设球的半径为1,则三重数值积分: >> f = @(x,y,z) 1.0 * (x.^2+y.^2+z.^2> triplequad(f,-1,1,-1,1,-1,1) ans = 4.1888 >> V = 4/3*pi*1^3 % 理论值 V = 4.1888

用mathematica进行计算啊,有功能强大的符号计算功能

syms x y z f = y * sin(x) + z * cos(x); int1 = int(f,z, z_1, z_2); % z_1, z_2 分别为z的上下限 int2 = int(int1, y, y_1, y_2); % y_1, y_2 分别为y的上下限 int_f = int(int2, x, x_1, x_2); % x_1, x_2 分别为x的上下限

好像没有三重积分函数,但有对区域内二元函数的二重积分函数。 是否可以根据区域情况化为三次int积分.

这主要看你的积分域形状了,如果形状规则,例如是立方体形,那么非常好办,如果有表达式的话直接用matlab的符号积分功能就好了,三重的int就行了。 如果积分域不规则,一般会使用Mote-Carlo方法来求多重积分,你最好把你要算的例子贴出来。

网站首页 | 网站地图
All rights reserved Powered by www.nnpc.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com