How to double integral in MATLAB

1 回表示 (過去 30 日間)
kun zhou
kun zhou 2016 年 10 月 7 日
コメント済み: Walter Roberson 2016 年 10 月 7 日
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 件のコメント
Torsten
Torsten 2016 年 10 月 7 日
編集済み: Walter Roberson 2016 年 10 月 7 日
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 2016 年 10 月 7 日
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.

サインインしてコメントする。

回答 (1 件)

Pritesh Shah
Pritesh Shah 2016 年 10 月 7 日
Try dblquad function

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by