用python的库 sympy 求积分

scipy求一重积分:点击跳转.

scipy求二重(多重)积分:点击跳转.
  ~

i n t e g r a t e ( ) integrate() 可以计算定积分和不定积分:

  • i n t e g r a t e ( f ( x ) , x ) : integrate(f(x), x): 计算不定积分 f ( x ) d x \int f(x) dx
  • i n t e g r a t e ( f ( x ) , ( x , a , b ) ) : integrate(f(x), (x, a, b)): 计算定积分 0 a f ( x ) d x \int_{0}^{a} f(x) dx

如果要对多个变量计算多重积分,只需要将被积分的变量依次列出即可

  • i n t e g r a t e ( f ( x , y ) , x , y ) : integrate(f(x, y), x, y): 计算双重不定积分 f ( x , y ) d x d y \int\int f(x, y) dxdy
  • i n t e g r a t e ( f ( x , y ) , ( x , a , b ) , ( y , c , d ) : integrate(f(x, y), (x, a, b), (y, c, d): 计算双重定积分 c d a b f ( x , y ) d x d y \int_{c}^{d}\int_{a}^{b} f(x, y) dxdy

更高重积分同理

1.一重积分

问题1:求解如下一重定积分:

F ( x ) = 0 1 x 2 + e x + 1   d x . F(x) = \int_0^1 x^{2}+e^{x}+1 ~dx\,.
程序, 如下

from sympy import *
x = symbols('x')
print(integrate(x**2 + exp(x) + 1, (x, 0, 1)))

结果:

1/3 + E

问题2:求解如下一重不定积分:

F ( x ) = x e x ( e x + 1 ) 2 F(x)=\int \frac{xe^{x}}{(e^{x}+1)^{2}}

程序, 如下

from sympy import *
x = symbols('x')
print(integrate(x*exp(x)/(exp(x)+1)**2, x))

结果

x - x/(exp(x) + 1) - log(exp(x) + 1)

2.二重积分(多重积分)

问题1:求解如下二重定积分

F ( x , y ) = 0 1 / 2 0 1 x y   d x d y . F(x, y)= \int_{0}^{1/2}\int_{0}^{1} xy~dxdy .
程序1,如下:

from sympy import *
x, y = symbols('x y')
print(integrate(x*y, (x, 0, 1), (y, 0, 1/2)))

结果:

0.0625000000000000
发布了23 篇原创文章 · 获赞 32 · 访问量 4473

猜你喜欢

转载自blog.csdn.net/t4ngw/article/details/105770161
今日推荐