求教matlab四重积分我打算用int函数做四重积分,如果是可分的比如被积函数是(1/s^2+1/t^2+n+m)一类的速度就很快,但是如果不可分就非常慢,比如我算syms s t m n;int(int(int(int((1/(s^2+1+t^2)+n+m),s,-0.15,0.15)

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/02 20:01:33
求教matlab四重积分我打算用int函数做四重积分,如果是可分的比如被积函数是(1/s^2+1/t^2+n+m)一类的速度就很快,但是如果不可分就非常慢,比如我算syms s t m n;int(int(int(int((1/(s^2+1+t^2)+n+m),s,-0.15,0.15)

求教matlab四重积分我打算用int函数做四重积分,如果是可分的比如被积函数是(1/s^2+1/t^2+n+m)一类的速度就很快,但是如果不可分就非常慢,比如我算syms s t m n;int(int(int(int((1/(s^2+1+t^2)+n+m),s,-0.15,0.15)
求教matlab四重积分
我打算用int函数做四重积分,如果是可分的比如被积函数是(1/s^2+1/t^2+n+m)一类的速度就很快,但是如果不可分就非常慢,比如我算
syms s t m n;
int(int(int(int((1/(s^2+1+t^2)+n+m),s,-0.15,0.15),t,-0.15,0.15),n,-7,7),m,-9,9);
就用了129秒,如果四个变量都在分母上时间无法估量.不知道有没有什么更好的方法.

求教matlab四重积分我打算用int函数做四重积分,如果是可分的比如被积函数是(1/s^2+1/t^2+n+m)一类的速度就很快,但是如果不可分就非常慢,比如我算syms s t m n;int(int(int(int((1/(s^2+1+t^2)+n+m),s,-0.15,0.15)
我仿照dblquad和triplequad编了个四重积分的函数quad4:

function Q = quad4(intfcn,xmin,xmax,ymin,ymax,zmin,zmax,tmin,tmax,tol,quadf,varargin)% QUAD4 计算四重积分
if nargin < 9, error('Requires at least seven inputs'); end
if nargin < 10 | isempty(tol), tol = 1.e-6; end
if nargin < 11 | isempty(quadf), quadf = @quad; end
intfcn = fcnchk(intfcn);
trace = [];
Q = triplequad(@innerintegral, ymin, ymax, zmin, zmax, tmin, tmax, tol, trace, intfcn, ...
xmin, xmax, tol, quadf, varargin{:});
function Q = innerintegral(y, z, t, intfcn, xmin, xmax, tol, quadf, varargin)
Q = zeros(size(z));
trace = [];
for i = 1:length(y)
Q(i) = feval(quadf, intfcn, xmin, xmax, tol, trace, y(i), z, t, varargin{:});
end

使用这个函数计算1/(s^2+1+t^2)+n+m的积分比较容易:
f=inline('1./(s.^2+1+t.^2)+n+m','s','t','n','m')
quad4(f,-0.15,0.15,-0.15,0.15,-7,7,-9,9)
得到的结果是22.3468,和你使用四个int计算得到的结果相同(在6.5版上计算很快):
int(int(int(int((1/(s^2+1+t^2)+n+m),s,-0.15,0.15),t,-0.15,0.15),n,-7,7),m,-9,9)
double(ans)

但计算四个变量都在分母上的函数会遇到困难:
f=inline('1./(s.^2+1+t.^2+n+m)','s','t','n','m')
quad4(f,-0.15,0.15,-0.15,0.15,-7,7,-9,9)

限于时间精力,我没有做进一步研究,给你两个建议,供参考:
(1)确信你的这个积分有意义(积分给出的警告信息说可能因奇异点引起);
(2)必要的话可跟踪程序运行,看为什么出这样的错,再想解决办法.

求教matlab四重积分我打算用int函数做四重积分,如果是可分的比如被积函数是(1/s^2+1/t^2+n+m)一类的速度就很快,但是如果不可分就非常慢,比如我算syms s t m n;int(int(int(int((1/(s^2+1+t^2)+n+m),s,-0.15,0.15) matlab计算四重积分问题,如何比较简单的计算四重积分呢?必有重谢>> x=14*sin(pi/8);>> y=15-14*cos(pi/8);>> syms s t m n;>> int(int(int(int('1./((((x-m).^2+y.^2+n.^2).^0.5).*(((s-m).^2+225+(t-n).^2).^1.5))',s,-0.15,0.15),t,-0.15,0 求教大神用matlab数值解积分方程 matlab怎么对矩阵表示的多项式求定积分?我要对legendre多项式求积分、但是matlab的legendre函数返回的是一个矩阵(行矢)表示的多项式、用int没有办法积分. 求一个matlab带参数的积分,其中c为一个常数,由于用int积不出来相应的表达式,所以打算用数值积分算该式算出来的要是c的表达式.求助啊,本人初用matlab,求助求助 存在四重积分吗 MATLAB求积分int('x.*log(1+x)',0,1) 用Matlab求不定积分算出来的结果怎么不对?如题,我用matlab试算了一个简单的积分:对 1-x 进行积分,方法是 int('1-x','x').很明显结果应该是 x-0.5*x^2但是matlab算出来却是:-(x - 1)^2/2求问这是为什么 用matlab计算积分,int((1-1.2*x)^(-2),x,0,1)得到inf,为什么?手动计算应该是-5. 求教 matlab 用MATLAB对函数r.*x.*exp((p*b-p*b.*exp(-v.*x))/(v+u*b*v)-v.*x)关于x求积分,积分上下限为0,关于这个积分 用int显示没有原函数 我已经纠结了两天了 求源代码和结果 这种带符号的积分能不能求数值解啊 用matlab做了个积分,算出的结果我看不懂,希望知情人士能帮小弟个帮>> int(int(int(l1,'p','0','pi'),'q','0','2*pi'),'c','0','t')ans =(-4)*pi*(log(-t)*(t - x2) - limit(c + log(c - t)*(t - x2),c = t,Left)) matlab怎样用int法求解定积分exp(-x^2/2)/sqrt(2*pi)这是函数,求0到1的定积分,用int法,为啥我求出来是1/2*erf(1/2*2^(1/2)),这是什么东西?erf是什么? 求教 积分 matlab中,怎样求一个增函数的不定积分?我用得是 matlab2012b.感谢你的回答,亲.比如t=int(x.^2,x,0,x),x范围是(20,30),怎么积分? matlab 求积分如和用matlab求如下积分(p>0)不好意思,我图片粘错了 本人matlab新手,求教指数积分函数的性质,并通过matlab如何画出指数积分函数Ei曲线图, matlab二重数值积分 第一重积分还有符号积分上限