Matlab 两个变量和参数列表的数值积分?

Matlab 两个变量和参数列表的数值积分?,matlab,integration,numerical-methods,calculus,numerical-integration,Matlab,Integration,Numerical Methods,Calculus,Numerical Integration,在MATLAB文档中,他们有一个单一变量的数值积分示例,该变量具有一个参数c,如下所示: fun = @(x,c) 1./(x.^3-2*x-c); q = integral(@(x)fun(x,5),0,2) 如果我想用两个变量或者两个参数进行数值积分,该怎么办?如果你想用两个变量进行积分,你需要使用 有两个变量的示例: fun = @(x,y) 1./( sqrt(x + y) .* (1 + x + y).^2 ); ymax = @(x) 1 - x; q = integral2(fu

在MATLAB文档中,他们有一个单一变量的数值积分示例,该变量具有一个参数
c
,如下所示:

fun = @(x,c) 1./(x.^3-2*x-c);
q = integral(@(x)fun(x,5),0,2)

如果我想用两个变量或者两个参数进行数值积分,该怎么办?

如果你想用两个变量进行积分,你需要使用

有两个变量的示例:

fun = @(x,y) 1./( sqrt(x + y) .* (1 + x + y).^2 );
ymax = @(x) 1 - x;
q = integral2(fun,0,1,0,ymax)

q =
    0.2854
如果需要多个参数和两个变量:

fun = @(x,y,c,d) c./(sqrt(x + d*y) .* (1 + x + y).^2);
ymax = @(x) 1 - x;
q = integral2(@(x,y) fun(x,y,3,4),0,1,0,ymax)

q =
0.5708
或者简单地说:

c = 3; d = 4;
fun = @(x,y) c./( sqrt(x + d*y) .* (1 + x + y).^2 )
ymax = @(x) 1 - x;
q = integral2(fun,0,1,0,ymax)

q = 
    0.5708

如果你想与两个变量进行集成,你需要使用

有两个变量的示例:

fun = @(x,y) 1./( sqrt(x + y) .* (1 + x + y).^2 );
ymax = @(x) 1 - x;
q = integral2(fun,0,1,0,ymax)

q =
    0.2854
如果需要多个参数和两个变量:

fun = @(x,y,c,d) c./(sqrt(x + d*y) .* (1 + x + y).^2);
ymax = @(x) 1 - x;
q = integral2(@(x,y) fun(x,y,3,4),0,1,0,ymax)

q =
0.5708
或者简单地说:

c = 3; d = 4;
fun = @(x,y) c./( sqrt(x + d*y) .* (1 + x + y).^2 )
ymax = @(x) 1 - x;
q = integral2(fun,0,1,0,ymax)

q = 
    0.5708