Как интегрировать вектор-функцию в MATLAB? - PullRequest
0 голосов
/ 30 апреля 2020

Я пытаюсь вычислить следующий интеграл в MATLAB:

enter image description here

У меня есть данные как векторы r, x и f (r). Правильно ли следующее? Я не уверен, как мне следует учитывать тот факт, что f (r) является функцией от r, или как интеграл также зависит от x.

Я пытаюсь

fun = @(x,r) (r.^2).*(fr-1).*sin(x.*r)./(x.*r);

eq1 = integral(@(r) fun(x,r),0,r(end),'ArrayValued',1);

eq2 = cumtrapz(r,(r.^2).*(fr-1).*sin(x.*r)./(x.*r));

Но Я получаю два разных ответа. Опять же, x, r и fr (= f (r)) - все векторы чисел. Или eq1 или eq2 один правильный? Нет ни одного? У меня ограниченное понимание анонимных функций и числовой интеграции в MATLAB.

...