Числовое интегрирование для двух переменных и списка параметров?

В документации MATLAB есть пример числового интегрирования для одной переменной с одним параметром c как:

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

Что делать, если я хочу выполнить числовое интегрирование с двумя переменными и, возможно, двумя параметрами?


person aswa09    schedule 21.04.2016    source источник


Ответы (1)


Если вы хотите выполнить интеграцию с двумя переменными, вам нужно использовать integral2.

Пример с двумя переменными:

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
person Stewie Griffin    schedule 21.04.2016