本文内容来自于学习麻省理工学院公开课:单变量微积分-反向变量替换,配方-网易公开课
开发环境准备:CSDN
目录
一、公式梳理
1、 (secant)
2、 (cosecant)
3、 (tangent)
4、 (cotangent)
5、
6、
7、
8、
9、
二、例题
1、
2、
3、如上题去除表达式 " tan(arccsc(x)) " 中三角函数
三、三角替换的小结
1、表
2、例题
一、公式梳理
1、 
讯享网 (secant)
2、
(cosecant)
3、
(tangent)
4、
(cotangent)
5、 
6、 
7、 
8、 
设 u = cos(x), u' =du = -sin(x)dx

9、 
设 
由公式 6, 7



二、例题
1、 


用定积分做个简单的验算,取值
,结果是符合的
import numpy as np from sympy import * import matplotlib.pyplot as plt def DrawXY(xFrom,xTo,steps,expr,color,label,plt): yarr = [] xarr = np.linspace(xFrom ,xTo, steps) for xval in xarr: yval = expr.subs(x,xval) yarr.append(yval) y_nparr = np.array(yarr) plt.plot(xarr, y_nparr, c=color, label=label) def DrawTrapezoidal(xFrom,xTo,steps,expr,color,plt, label=''): width = (xTo - xFrom)/steps xarrRect = [] yarrRect = [] area = 0 xprev = xFrom yvalAll = 0 for step in range(steps): yval1 =expr.subs(x,xprev) yval2 = expr.subs(x,xprev + width) xarrRect.append(xprev) xarrRect.append(xprev) xarrRect.append(xprev + width) xarrRect.append(xprev + width) xarrRect.append(xprev) yarrRect.append(0) yarrRect.append(yval1) yarrRect.append(yval2) yarrRect.append(0) yarrRect.append(0) area += width * (yval1+yval2)/2 plt.plot(xarrRect, yarrRect, c=color) xprev= xprev + width print('============================') if len(label)!=0: print(label) print('============================') print('width = ', width) print('area = ',area) x = symbols('x') expr = sec(x)4 DrawXY (0,np.pi/3,1000, expr, 'c', label='sec(x)',plt=plt) print(integrate(expr,(x,0,np.pi/3))) print(tan(np.pi/3)+tan(np.pi/3)3/3 - tan(0)+tan(0)3/3) plt.legend(loc='upper left') plt.show()
讯享网

添加图片注释,不超过 140 字(可选)
2、 
由于tan取值范围从负无穷一直到正无穷, 所以可以进行三角替换
设 
另由



设 

还原三角替换


在上图中直角三角形中, 设
的对边长为x, 则根据前面假设tan(\theta) = x , 有 临边长为1,另斜边长则为

或由 

用定积分验算下, 用梯形法得到的结果和计算出的结果近似。
讯享网x = symbols('x') expr = 1/ (x2*(1+x2)0.5) DrawXY (2,5,100, expr, 'c', label='',plt=plt) DrawTrapezoidal(2,5,100,expr,'c',plt, label='1/ (x2*(1+x2)0.5)') #print(integrate(expr,(x,2,5))) print('result with arc tangent=', float(-csc(atan(5)) + csc(atan(2)))) print('result = ', -((1+52)0.5)/5 + ((1+22)0.5)/2 )

3、如上题去除表达式 " tan(arccsc(x)) " 中三角函数
theta = 45 angle = np.linspace( 0 , 2 * np.pi , 150 ) radius = 1 xarr = radius * np.cos( angle ) yarr = radius * np.sin( angle ) figure, axes = plt.subplots( 1 ) axes.plot( xarr, yarr, label='radius='+format(radius) ) angleInner = np.linspace( theta/180*np.pi , 0 , 150 ) xArcInner = radius /10 * np.cos( angleInner ) yArcInner = radius /10 * np.sin( angleInner ) axes.plot( xArcInner, yArcInner,color='b') plt.text(0.18, 0.03, 'θ', fontsize=9) plt.text(cos(theta)-0.18, -0.08, 'adj', fontsize=9) plt.text(cos(theta)+0.22, sin(theta)-0.48, 'opp', fontsize=9) plt.text(cos(theta)-0.3, sin(theta)-0.48, 'hyp', fontsize=9) axes.set_aspect( 1 ) x1 = np.cos( theta/180*np.pi ) y1 = np.sin( theta/180*np.pi ) xarr1 = [0,1] yarr1 = [0,0] plt.plot(xarr1, yarr1,'r',linestyle='-',marker='') xarr2 = [0,x1] yarr2 = [0,y1] plt.plot(xarr2, yarr2,'orange',linestyle='-',marker='') plt.plot([x1,x1], [0,y1],'green',linestyle='-',marker='') plt.plot([0,x1], [0,0],'green',linestyle='-',marker='') plt.text(x1+0.05, y1+0.05, '(cosθ ,sinθ)', fontsize=9) plt.text(-0.1, -0.1, 'O', fontsize=9) plt.legend(loc='upper left') plt.show()



设斜边(hyp)为x,则对边(opp)为1, 临边(adj)为 

三、三角替换的小结
1、表
如果积分包含 -- 要做的替换 -- 得到
--
or
--
or 
当
,
当
,
--
--
-- 
--
--
--


2、例题

设 

设
,
由


由公式9:


由

由

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/72556.html