How can I calculate the integral2 using sum of prod?

1 view (last 30 days)
syms m r theta
xm = 1:29;
ym = 1:29;
fun = @(r,theta) (...
symprod((1 - exp(((1 - sqrt((r.*cos(theta)-(xm(m))).^2 + (r.*sin(theta)-(ym(m))).^2))))),m, 1, 29 )...
);
solve = integral2(fun,0,30,0,2 * pi);
How can I solve this problem?

Accepted Answer

Vladimir Sovkov
Vladimir Sovkov on 5 Jan 2020
Edited: Vladimir Sovkov on 5 Jan 2020
symprod does not support the element-wise multiplication, which is needed for integral2.
You sholuld probably define your fun via a little longer code with the element-wise operations, e.g.
xm = 1:29;
ym = 1:29;
fun = @(r,theta)(1-exp(((1-sqrt((r.*cos(theta)-(xm(1))).^2+(r.*sin(theta)-(ym(1))).^2)))));
for k=2:numel(xm)
fun = @(r,theta) fun(r,theta) .* (1-exp(((1-sqrt((r.*cos(theta)-(xm(k))).^2+(r.*sin(theta)-(ym(k))).^2)))));
end
solve = integral2(fun,0,30,0,2 * pi)

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!