How to double integral in MATLAB

3 views (last 30 days)
kun zhou
kun zhou on 7 Oct 2016
Commented: Walter Roberson on 7 Oct 2016
I want double integrate the following
a = 0.3555;
b = 0.3985;
n = 2.343;
f = @(x,y)(1-abs(x/(a*(1-abs(y/b).^n).^(1/n))).^1.745);
integral2(f,-0.3555,0.3985,-0.3555,0.3985)
but it did not work, anybody can help me on this? thanks
  2 Comments
Torsten
Torsten on 7 Oct 2016
Edited: Walter Roberson on 7 Oct 2016
Use
f = @(x,y)(1-abs(x./(a*(1-abs(y/b).^n).^(1/n))).^1.745);
If this does not work either, please include the complete error message.
Best wishes
Torsten.
Walter Roberson
Walter Roberson on 7 Oct 2016
The denominator of that is 0 at y = +/- b, which is going to lead to difficulties in integrating. The integral would perhaps be well-defined theoretically if you could well-define what it meant to raise a value to a floating point number.

Sign in to comment.

Answers (1)

Pritesh Shah
Pritesh Shah on 7 Oct 2016
Try dblquad function

Categories

Find more on Programming in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!