Double integrals with matlab

  • MATLAB
  • Thread starter Moly
  • Start date
  • #1
21
0
Hi Everyone.

I would like to integrate the following using matlab:
[tex] \int_0^1 ~\int_0^x e^{-x^2} ~dy ~dx [/tex]
looks pretty simple but don't know how to set up the embedded for loops for the integral with in the integral especially that the upper limit of the inner integral is x and not a number.
My actual assignment is much more complicated than this but i thought trying to work it out for a simpler function might help me with the more complex one.
Thanks for your help
 

Answers and Replies

  • #2
21
0
the program that i put together is giving me the integral=24.8427 and the answer is actually 0.316... my program is copied below, what am i doing wrong:

x0=0; xt=1; xstep=11; dx=1/(xstep-1);
y0=0; yt=1; ystep=11; dy=1/(ystep-1);

sum2=0;
for i1=1:xstep
sum1=0;
y=(i1-1)*dy;
x2step=floor(y*xstep);
for i=1:xstep
if i>=x2step
sum1=sum1+dx*exp(-y^2)/2
%pause
end
x=(i-1)*dx;
end
sum2=sum2+sum1
end
sum3=sum2*dx
 
Last edited:
  • #3
21
0
oh... forgot to say that I am using trapazoidal rule for the integration
 
  • #4
21
0
Now, this is giving me the corrrect answer but not sure if i cheated in a way or not... what do you think:
close all
clear all

x0=0; xt=1; xstep=110; dx=1/(xstep-1);
y0=0; yt=1; ystep=110; dy=1/(ystep-1);

sum2=0;
for i1=1:ystep+1
sum1=0;
y=(i1-1)*dy;
x2step=floor(y/dx);
for i=1:xstep+1
if i<=x2step
sum1=sum1+dx*exp(-y^2);
end
x=(i-1)*dx;
end
sum2=sum2+sum1;
end
sum3=sum2*dy
 

Related Threads on Double integrals with matlab

  • Last Post
Replies
5
Views
17K
Replies
4
Views
3K
Replies
13
Views
5K
Replies
3
Views
1K
  • Last Post
Replies
1
Views
2K
  • Last Post
Replies
4
Views
5K
Replies
2
Views
147K
Replies
1
Views
2K
Replies
1
Views
2K
Replies
2
Views
9K
Top