How to double integral in MATLAB

3 Ansichten (letzte 30 Tage)
kun zhou
kun zhou am 7 Okt. 2016
Kommentiert: Walter Roberson am 7 Okt. 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 Kommentare
Torsten
Torsten am 7 Okt. 2016
Bearbeitet: Walter Roberson am 7 Okt. 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 am 7 Okt. 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.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Pritesh Shah
Pritesh Shah am 7 Okt. 2016
Try dblquad function

Kategorien

Mehr zu Programming finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by