Iは数値scipy.integrate.fixed_quadは関数境界との積分を計算できますか?
import scipy.integrate as integrate
inside = lambda x: integrate.quad(lambda x,y: 1, 0, x, args=(x))[0]
outside = integrate.quad(inside, 0, 1)[0]
print(outside)
0.5
なく(パラメータとして統合順序n
を有する)scipy.integrate.fixed_quad
関数を使用してと同様に三角形の上に機能を統合したいです。しかし、私は
inside = lambda x: integrate.fixed_quad(lambda x,y: 1, 0, x, args=(x), n=5)
print(inside(5))
Traceback (most recent call last): File "", line 1, in File "", line 1, in File "/Users/username/anaconda/lib/python3.5/site-packages/scipy/integrate/ quadrature.py", line 82, in fixed_quad return (b-a)/2.0 * np.sum(w*func(y, *args), axis=0), None
TypeError:() argument after * must be an iterable, not int
を書くとき、私は私がscipy.integrate.fixed_quadのドキュメントを以下だと、私が間違ってやっているのか分かりません。
興味深いことに、それがコンマなしでintegrate.quadのために働いたとは思いませんでした。しかし、 'outside = integrate.fixed_quad(inside、0,1、n = 5)[0]'を実行すると、別のValueErrorが返されるため、二重積分を計算することができません。それは 'integrate.quad(inside、0、1)'で動作しますが、両方の積分でn(ガウス積分次数)パラメータを持つことをお勧めします。 – Jan
@Jan:「quad」が呼び出されたときにクラッシュしない理由についての情報を投稿に編集しました。 – Cleb