微积分基础(python)
1 函数与极限
# 导入sympy库
from sympy import *
# 将x符号化
x = Symbol("x")
x
x \displaystyle x x
# 利用sympy中solve函数求解方程
X = solve(x**2-10*x+21,x)
X
print("原方程的解为:",X)
原方程的解为: [3, 7]
# 定义集合
A = set("12345")
B = set("123")
print("集合AB的并为:",A | B)
print("集合AB的交为:",A & B)
print("集合AB的差为:",A - B)
集合AB的并为: {'4', '2', '1', '5', '3'}
集合AB的交为: {'1', '3', '2'}
集合AB的差为: {'4', '5'}
# 自变量趋近无穷
n = Symbol("n")
s = n**2/(n**2+1)
result = limit(s,n,oo)
print("数列极限为:",result)
数列极限为: 1
# 自变量趋近有限值
x = Symbol("x")
s = (2-5*x**2)/(2*x+1)
print("函数极限为:",limit(s,x,-1/2))
函数极限为: oo
# 自变量趋近无穷大
x = Symbol("x")
s = (x+x**3)/(6*x**3)
print("函数极限为:",limit(s,x,oo))
函数极限为: 1/6
2 求导与微分
# 导入sympy库
from sympy import *
# 常数导数
x = Symbol("x")
C = 2
y = C
diff(y,x)
0 \displaystyle 0 0
# 幂函数导数
x = Symbol("x")
mu = Symbol("mu")
y = x**mu
diff(y,x)
μ x μ x \displaystyle \frac{\mu x^{\mu}}{x} xμxμ
# 指数函数求导
a = Symbol("a")
x = Symbol("x")
y = a**x
diff(y,x)
a x log ( a ) \displaystyle a^{x} \log{\left(a \right)} axlog(a)
# 对数函数求导
a = Symbol("a")
x = Symbol("x")
y = log(x,a)
diff(y,x)
1 x log ( a ) \displaystyle \frac{1}{x \log{\left(a \right)}} xlog(a)1
# 正弦求导
x = Symbol("x")
y = sin(x)
diff(y,x)
cos ( x ) \displaystyle \cos{\left(x \right)} cos(x)
# 反正弦函数求导
x = Symbol("x")
y = asin(x)
diff(y,x)
1 1 − x 2 \displaystyle \frac{1}{\sqrt{1 - x^{2}}} 1−x21
# 求导四则运算
x = Symbol("x")
u = log(x,a)
v = x**2+1
y = u+v
diff(y,x)
2 x + 1 x log ( a ) \displaystyle 2 x + \frac{1}{x \log{\left(a \right)}} 2x+xlog(a)1
y = u - v
diff(y,x)
− 2 x + 1 x log ( a ) \displaystyle - 2 x + \frac{1}{x \log{\left(a \right)}} −2x+xlog(a)1
y = u*v
diff(y,x)
2 x log ( x ) log ( a ) + x 2 + 1 x log ( a ) \displaystyle \frac{2 x \log{\left(x \right)}}{\log{\left(a \right)}} + \frac{x^{2} + 1}{x \log{\left(a \right)}} log(a)2xlog(x)+xlog(a)x2+1
y = u/v
diff(y,x)
− 2 x log ( x ) ( x 2 + 1 ) 2 log ( a ) + 1 x ( x 2 + 1 ) log ( a ) \displaystyle - \frac{2 x \log{\left(x \right)}}{\left(x^{2} + 1\right)^{2} \log{\left(a \right)}} + \frac{1}{x \left(x^{2} + 1\right) \log{\left(a \right)}} −(x2+1)2log(a)2xlog(x)+x(x2+1)log(a)1
# 复合函数求导
x = Symbol("x")
u = Symbol("u")
u = x**2
y =sin(u)
diff(y,x)
2 x cos ( x 2 ) \displaystyle 2 x \cos{\left(x^{2} \right)} 2xcos(x2)
# 链式求导
x = Symbol("x")
u = Symbol("u")
v = Symbol("v")
v = sin(x)**2
u = tan(v)**2
y = log(u)**2
diff(y,x)
8 ( tan 2 ( sin 2 ( x ) ) + 1 ) log ( tan 2 ( sin 2 ( x ) ) ) sin ( x ) cos ( x ) tan ( sin 2 ( x ) ) \displaystyle \frac{8 \left(\tan^{2}{\left(\sin^{2}{\left(x \right)} \right)} + 1\right) \log{\left(\tan^{2}{\left(\sin^{2}{\left(x \right)} \right)} \right)} \sin{\left(x \right)} \cos{\left(x \right)}}{\tan{\left(\sin^{2}{\left(x \right)} \right)}} tan(sin2(x))8(tan2(sin2(x))+1)log(tan2(sin2(x)))sin(x)cos(x)
# 二阶求导
diff(y,x,2)
( tan 2 ( sin ( x ) ) + 1 ) ( − ( tan 2 ( sin ( x ) ) + 1 ) cos 2 ( x ) tan 2 ( sin ( x ) ) − sin ( x ) tan ( sin ( x ) ) + 2 cos 2 ( x ) ) \displaystyle \left(\tan^{2}{\left(\sin{\left(x \right)} \right)} + 1\right) \left(- \frac{\left(\tan^{2}{\left(\sin{\left(x \right)} \right)} + 1\right) \cos^{2}{\left(x \right)}}{\tan^{2}{\left(\sin{\left(x \right)} \right)}} - \frac{\sin{\left(x \right)}}{\tan{\left(\sin{\left(x \right)} \right)}} + 2 \cos^{2}{\left(x \right)}\right) (tan2(sin(x))+1)(−tan2(sin(x))(tan2(sin(x))+1)cos2(x)−tan(sin(x))sin(x)+2cos2(x))
# 计算函数拐点
from sympy import *
x = Symbol("x")
y = 2*x**3-12*x**2+18*x-2
# 一阶导数
df1 = diff(y,x)
df1
6 x 2 − 24 x + 18 \displaystyle 6 x^{2} - 24 x + 18 6x2−24x+18
# 二阶导数
df2 = diff(y,x,2)
df2
12 ( x − 2 ) \displaystyle 12 \left(x - 2\right) 12(x−2)
print("二阶导数取值为0的点为",solve(df2))
print("拐点值为",y.subs(x,2))
二阶导数取值为0的点为 [2]
拐点值为 2
# 第一充分条件求极值点
from sympy import *
x = Symbol("x")
y = (x+3)**2*(x-1)**3
df = diff(y,x)
print("函数驻点为:",solve(df,x))
函数驻点为: [-3, -7/5, 1]
print("函数极值为",y.subs(x,-3),y.subs(x,-7/5),y.subs(x,1))
函数极值为 0 -35.3894400000000 0
# 第二充分条件求极值点
from sympy import *
y = 2*x**3-6*x**2+7
df = diff(y,x)
print("函数极值点为",solve(df,x))
函数极值点为 [0, 2]
df2 = diff(y,x,2)
print("二阶导数驻点的值为:",df2.subs(x,0),df2.subs(x,2))
二阶导数驻点的值为: -12 12
print("函数的极值为",y.subs(x,0),y.subs(x,2))
函数的极值为 7 -1
3 不定积分
x = Symbol("x")
f = cos(x)
integrate(f,x)
sin ( x ) \displaystyle \sin{\left(x \right)} sin(x)
x = Symbol("x")
f = 1/(1+x**2)
integrate(f,x)
atan ( x ) \displaystyle \operatorname{atan}{\left(x \right)} atan(x)
x = Symbol("x")
f = exp(x)*sin(x)
integrate(f,x)
e x sin ( x ) 2 − e x cos ( x ) 2 \displaystyle \frac{e^{x} \sin{\left(x \right)}}{2} - \frac{e^{x} \cos{\left(x \right)}}{2} 2exsin(x)−2excos(x)
4 定积分
x = Symbol("x")
a = Symbol("a")
b = Symbol("b")
y = sin(a*x)*cos(b*x)
integrate(y,(x,a,b))
{ 0 for ( a = 0 ∧ b = 0 ) ∨ ( a = 0 ∧ a = b ∧ b = 0 ) ∨ ( a = 0 ∧ a = − b ∧ b = 0 ) ∨ ( a = 0 ∧ a = − b ∧ a = b ∧ b = 0 ) cos 2 ( b 2 ) 2 b − cos 2 ( a b ) 2 b for ( a = 0 ∧ a = − b ) ∨ ( a = − b ∧ a = b ) ∨ ( a = − b ∧ b = 0 ) ∨ ( a = 0 ∧ a = − b ∧ a = b ) ∨ ( a = − b ∧ a = b ∧ b = 0 ) ∨ a = − b − cos 2 ( b 2 ) 2 b + cos 2 ( a b ) 2 b for ( a = 0 ∧ a = b ) ∨ ( a = b ∧ b = 0 ) ∨ a = b a cos ( a 2 ) cos ( a b ) a 2 − b 2 − a cos ( b 2 ) cos ( a b ) a 2 − b 2 + b sin ( a 2 ) sin ( a b ) a 2 − b 2 − b sin ( b 2 ) sin ( a b ) a 2 − b 2 otherwise \displaystyle \begin{cases} 0 & \text{for}\: \left(a = 0 \wedge b = 0\right) \vee \left(a = 0 \wedge a = b \wedge b = 0\right) \vee \left(a = 0 \wedge a = - b \wedge b = 0\right) \vee \left(a = 0 \wedge a = - b \wedge a = b \wedge b = 0\right) \\\frac{\cos^{2}{\left(b^{2} \right)}}{2 b} - \frac{\cos^{2}{\left(a b \right)}}{2 b} & \text{for}\: \left(a = 0 \wedge a = - b\right) \vee \left(a = - b \wedge a = b\right) \vee \left(a = - b \wedge b = 0\right) \vee \left(a = 0 \wedge a = - b \wedge a = b\right) \vee \left(a = - b \wedge a = b \wedge b = 0\right) \vee a = - b \\- \frac{\cos^{2}{\left(b^{2} \right)}}{2 b} + \frac{\cos^{2}{\left(a b \right)}}{2 b} & \text{for}\: \left(a = 0 \wedge a = b\right) \vee \left(a = b \wedge b = 0\right) \vee a = b \\\frac{a \cos{\left(a^{2} \right)} \cos{\left(a b \right)}}{a^{2} - b^{2}} - \frac{a \cos{\left(b^{2} \right)} \cos{\left(a b \right)}}{a^{2} - b^{2}} + \frac{b \sin{\left(a^{2} \right)} \sin{\left(a b \right)}}{a^{2} - b^{2}} - \frac{b \sin{\left(b^{2} \right)} \sin{\left(a b \right)}}{a^{2} - b^{2}} & \text{otherwise} \end{cases} ⎩ ⎨ ⎧02bcos2(b2)−2bcos2(ab)−2bcos2(b2)+2bcos2(ab)a2−b2acos(a2)cos(ab)−a2−b2acos(b2)cos(ab)+a2−b2bsin(a2)sin(ab)−a2−b2bsin(b2)sin(ab)for(a=0∧b=0)∨(a=0∧a=b∧b=0)∨(a=0∧a=−b∧b=0)∨(a=0∧a=−b∧a=b∧b=0)for(a=0∧a=−b)∨(a=−b∧a=b)∨(a=−b∧b=0)∨(a=0∧a=−b∧a=b)∨(a=−b∧a=b∧b=0)∨a=−bfor(a=0∧a=b)∨(a=b∧b=0)∨a=botherwise
x = Symbol("x")
f = sin(x)
integrate(f,(x,0,pi))
2 \displaystyle 2 2