Python Scipyで積分ができる。いきなり二重積分の例ざんす
import numpy as np
from scipy import integrate
f = lambda y, x: x * y**2
val = integrate.dblquad(f, 0, 2, 0, 1) # xの範囲、yの範囲
print(val)
ま~なんて簡単なんざんしょ。では関数が f(x,a,b,c)のように変数がxでパラメータがa,b,cの場合にはどないするざんしょ?
# 積分する関数を定義します。ここでは例としてf(x, a, b, c) = ax^2 + bx + cを使用します。
def f(x, a, b, c):
return a*x**2 + b*x + c
# 積分範囲を定義します。
x_bounds = (0, 1) # xの積分範囲
# パラメータの値を定義します。
a = 1
b = 2
c = 3
# 積分を計算します。
result, error = integrate.quad(f, x_bounds[0], x_bounds[1], args=(a, b, c))
print(result) # 積分結果を表示します。
ま~、args = () ってのを使うざんすね。
quad()の中で、 f と書くのがミソざますねえ。ワタクシ、f(x)とかf()とか書いたらエラー出たざます。
てなわけだ。
一日一項目一項目 父として母です。ちがーーーーう!! 遅々としてでも進みたまへ!!