How to apply numerical integration on a symbolic matrix?

2 views (last 30 days)
Can I use integral2 to calculate the matrix below on the domain[0,1]*[0,1];
My matrix is much more complicated than this one, and I do not want to calculate the symbolic expression one by one~

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 26 Sep 2016
Edited: Andrei Bobrov on 26 Sep 2016
Please try this is code:
fun = {@(x,y)x+y,@(x,y)x.^2+y.^2;@(x,y)x-y,@(x,y)x.^2-y.^2}
q = cellfun(@(z)integral2(z,0,1,0,1),fun);
or let fs - a your symbolic matrix, then
fun = zeros(size(fs));
for jj = 1:numel(fs)
fun = matlab2Function(fs(jj));
out(jj) = integral2(fun, 0, 1, 0, 1);
end
  2 Comments
Ali SeyedKavoosi
Ali SeyedKavoosi on 24 Jun 2018
my Matlab does not recognize matlab2Function. Is it in any update or app?
Hadi alimohammadi
Hadi alimohammadi on 4 Nov 2021
i have same problem!!!
Matlab2Function is not known function for matlab.

Sign in to comment.

More Answers (1)

KSSV
KSSV on 26 Sep 2016
syms x y
A = [x+y x^2+y^2 ; x-y x^2-y^2] ;
X = int(A,x,0,1); % integrate w.r.t x between limits 0 and 1
Y = int(A,y,0,1) ; % integrate w.r.t y between limits 0 and 1

Community Treasure Hunt

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

Start Hunting!