第一单元 用python学习微积分(五) 隐函数微分法和逆函数导数(下)- 反函数
本文内容来自学习麻省理工学院公开课:单变量微积分-隐函数微分法和逆函数导数-网易公开课和麻省理工学院公开课:单变量微积分习题课-除法法则-网易公开课一、反函数1、定义通常这些就是反函数了例子:, 怎么知道?方法是,交换x和y的值。 画出的图,两个不同的函数将通过x=y对称, 分别是from sympy import *import numpy as npimport matplotlib.pypl
·
本文内容来自学习麻省理工学院公开课:单变量微积分-隐函数微分法和逆函数导数-网易公开课
和麻省理工学院公开课:单变量微积分习题课-除法法则-网易公开课
开发环境准备:CSDN
目录
二、只要有原函数的导数, 用隐函数微分法可以求导任意反函数,
一、反函数
1、定义
通常
这些就是反函数了
2、例子:
, 怎么知道 ?
方法是,交换x和y的值。 画出的图,两个不同的函数将通过x=y对称, 分别是
from sympy import *
import numpy as np
import matplotlib.pyplot as plt
x= symbols('x')
y = x**0.5
yarr = []
xarr = np.linspace(0 , 3 , 100 )
for xval in xarr:
yval = y.subs(x,xval)
yarr.append(yval)
y_nparr = np.array(yarr)
plt.plot(xarr, y_nparr, color='b', label='y = x^0.5')
plt.plot(y_nparr,xarr , color='r', label='inverse function of "y = x^0.5"')
plt.plot(xarr, xarr, color='b', label='symmetric line')
plt.legend(loc='upper right')
plt.show()
二、只要有原函数的导数, 用隐函数微分法可以求导任意反函数,
1、例子:
(1)
y = tan(x) (-pi/2 < x< pi/2 )
注意看绿色的曲线:( )
求导:
(注:用到三角函数公式 )
x = symbols('x')
z1 = sin(x)/cos(x)
derivative_f = z1.diff(x)
继续推导:
.............. (太复杂了...)
简化: 由于 ->
import numpy as np
from sympy import *
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)
ax.spines['left'].set_position('zero')
ax.spines['bottom'].set_position('zero')
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.xaxis.set_ticks_position('bottom')
ax.yaxis.set_ticks_position('left')
ax.set_aspect( 1 )
angle = np.linspace( 0 , 2 * np.pi , 150 )
y = 60/180 * np.pi
angleArc = np.linspace( 0 , y , 150 )
radius = (tan(y))**2 + 1
xArc = radius * np.cos( angleArc ) /20
yArc = radius * np.sin( angleArc ) /20
ax.plot( xArc, yArc,color='r')
plt.text(tan(y)/10, tan(y)/10, 'y', fontsize=12)
ax.plot( [0,1,1,0], [0,tan(y),0,0],color='b',label='x=tany, y='+format(y))
plt.text(1.1, tan(y)/2, 'x', fontsize=12)
plt.text(0.3, tan(y)/13, 'bottom line length = 1', fontsize=12)
plt.text(-0.34, 0, 'A', fontsize=12)
plt.text(1.2, 0, 'B', fontsize=12)
plt.text(1.1,tan(y)+0.1 , 'C', fontsize=12)
plt.text(0.3, tan(y)/13, 'bottom line length = 1', fontsize=12)
plt.text(0.3, tan(y)/13+0.1, 'tany = x/1 (BC : AC)', fontsize=12)
plt.text(0.3, tan(y)/13+0.2, 'cosy = 1/(1-x^2)^{1/2}', fontsize=12)
plt.legend(loc='upper right')
plt.show()
由图可知:
(2)
由于 x= sin(y)
更多推荐
已为社区贡献2条内容
所有评论(0)