本文内容来自于学习麻省理工学院公开课:单变量微积分-三角函数的积分及三角替换-网易公开课

开发环境准备:CSDN

目录

一、三角学中的基本知识

1、三角学公式:

(1) ​倍角公式

(2) ​ 半角公式

(3) 求导、求积

二、三角函数的积分

1、 简单的情况: m,n 至少有一个是奇数

2、 困难的情况: m,n 都是偶数 (用半角公式)

三、例子

1、求上图中浅蓝色线条包裹部分的面积


一、三角学中的基本知识

import numpy as np
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)    theta = 45angle = np.linspace( 0 , 2 * np.pi , 150 ) radius = 1xarr = 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)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() 

​三角学中所有知识都是基于圆心在 ( 0, 0 ), 半径为1的⚪。

1、三角学公式:

(倍角公式)

(倍角公式)

(1) ​倍角公式

x = symbols('x')
expr = cos(2*x)
DrawXY(-2,0,20,expr,color = 'c',label='cos(2x)',plt=plt)expr = cos(x)**2-sin(x)**2
DrawXY(0,2,20,expr,color = 'r',label='cos(x)**2+sin(x)**2',plt=plt)expr = sin(2*x)
DrawXY(-2,0,20,expr,color = 'b',label='sin(2x)',plt=plt)expr = 2*sin(x)*cos(x)
DrawXY(0,2,20,expr,color = 'g',label='2*sin(x)*cos(x)',plt=plt)plt.legend(loc='upper left')
plt.show() 

(半角公式)

(半角公式)

(2) ​ 半角公式

x = symbols('x')
expr = cos(x)**2
DrawXY(-2,0,20,expr,color = 'c',label='cos(x)**2',plt=plt)expr = (1+cos(2*x))/2
DrawXY(0,2,20,expr,color = 'r',label='(1+cos(2*x))/2',plt=plt)expr = sin(x)**2
DrawXY(-2,0,20,expr,color = 'b',label='sin(x)**2',plt=plt)expr = (1-cos(2*x))/2
DrawXY(0,2,20,expr,color = 'g',label='(1+cos(2*x))/2',plt=plt)plt.legend(loc='upper left')
plt.show() 


(3) 求导、求积

二、三角函数的积分

.......( m, n = 0, 1, 2, 3,.... )

1、 简单的情况: m,n 至少有一个是奇数

当m = 1时

设 u = sin(x) , du 同 sin'(x) = cos(x)dx

当m=2, n=3时

设 u = cos(x) , du 同 cos'(x) = -sin(x)

当m = 0, n =3时

设 u = cos(x) , du 同 cos'(x) = -sin(x)

2、 困难的情况: m,n 都是偶数 (用半角公式)

m = 2, n = 0

m = 2, n = 2

(半角公式)

(半角公式)

(倍角公式)

三、例子

theta = 45r = 1
figure, axes = plt.subplots( 1 )
radius = rangle = np.linspace( theta/180*np.pi , 2 * np.pi , 150 )
xarr = radius * np.cos( angle )
yarr = radius * np.sin( angle )
axes.plot( xarr, yarr, label='radius=r',color = 'b') angle = np.linspace( 0 , theta/180*np.pi , 150 )
xarr = radius * np.cos( angle )
yarr = radius * np.sin( angle )
axes.plot( xarr, yarr, label='' ,color = 'c') 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)axes.set_aspect( 1 ) x1 = np.cos( theta/180*np.pi )
y1 = np.sin( theta/180*np.pi ) plt.plot([0,0], [0,y1],'c')
plt.plot([0,0], [y1,1],'b')
plt.text( -0.2, y1, 'y=b', fontsize=9)xarr1 = [0,1]
yarr1 = [0,0]
plt.plot(xarr1, yarr1,'c',linestyle='-',marker='')plt.plot([0,x1], [y1,y1],'c')xarr2 = [0,x1]
yarr2 = [0,y1]
plt.plot(xarr2, yarr2,'orange',label = '')plt.plot([x1,x1], [0,y1],'green',linestyle='-',marker='')
plt.plot([0,x1], [0,0],'c')plt.text(x1+0.05, y1+0.05, '(r*cosθ ,r*sinθ)', fontsize=9)
plt.text(-0.1, -0.1, 'O', fontsize=9)plt.legend(loc='upper left')
plt.show() 

1、求上图中浅蓝色线条包裹部分的面积

一般来说是列如: 求体积,这个例子比较麻烦,需要分开两段计算,因为f(x) 在 点前后,有不同的定义。

因为这例子中 f(y) 对 y 轴的包裹面积可以用一个式子表达, 所以考虑用如下算式计算面积:

由前面例子可知:

所以:

上面红色三角形的面积正是计算公式这部分

由扇形面积公式: (l为弧长), 弧长公式: ( \theta 为弧度),

上面绿色扇形的面积正是计算公式这部分

第四单元 用python学习微积分(二十四)三角函数的积分以及三角替换相关推荐

  1. 第四单元 用python学习微积分(二十七)积分-部分分式-分部积分

    本文内容来自于学习麻省理工学院公开课:单变量微积分-分部积分-网易公开课 开发环境准备:CSDN 目录 一.多项式部分分式方法求积分 1.效果 2.步骤 (1)  长除法 (2)  分解因式 (fac ...

  2. 第四单元 用python学习微积分(二十六)积分-部分分式-掩盖法及它的组合应用

    本文内容来自于学习麻省理工学院公开课:单变量微积分-部分分式-网易公开课 开发环境准备:CSDN 部分分式方法(Partial Fractions) = 有理函数(rational function) ...

  3. 第二单元 用python学习微积分(十)曲线构图下和最值问题

    本文内容来自于学习麻省理工学院公开课:单变量微积分-最值问题-网易公开课 开发环境准备:CSDN 目录 一.曲线构图例子 二.曲线构图总结: 1.描点 a 找到函数的不连续点(尤其是函数值趋向于无穷的 ...

  4. Python学习日记(二十四) 继承

    继承 什么是继承?就是一个派生类(derived class)继承基类(base class)的字段和方法.一个类可以被多个类继承;在python中,一个类可以继承多个类. 父类可以称为基类和超类,而 ...

  5. 【Python学习系列二十四】scikit-learn库逻辑回归实现唯品会用户购买行为预测

    1.背景:http://www.datafountain.cn/#/competitions/260/intro DataFountain上的唯品会用户购买行为预测比赛题目,笔者用逻辑回归实现,分数是 ...

  6. python接口自动化测试二十四:上传多个附件,参数化

    python接口自动化测试二十四:上传多个附件,参数化 # 添加多个附件参数化files = [("1.png", "1.png") ("2.png& ...

  7. Stduino学习(二十四)敲击传感器模块

    37种传感器(二十四)敲击传感器模块+Stduino Nano&UNO 本文转载自:http://www.stduino.com/forum.php?mod=viewthread&ti ...

  8. STM32学习心得二十四:内部温度传感器原理及实验

    记录一下,方便以后翻阅~ 主要内容: 1) STM32内部温度传感器概述: 2) 相关实验代码解读. 实验功能:系统启动后,实时将内部温度传感器的值传至串口助手上. 官方资料:<STM32中文参 ...

  9. 第三单元 用python学习微积分(二十二)功、平均值、概率(下)和 数值积分(1)

    本文内容来自于学习麻省理工学院公开课:单变量微积分-数值积分-网易公开课 用python解方程组_星-耀的博客-CSDN博客_python解方程组 做功_百度百科 开发环境准备:CSDN 目录 一.概 ...

最新文章

  1. leetcode-53 最大子序和
  2. java 连接 pgsql
  3. 自定义导航栏,实现缓存,更新缓存,提高效率
  4. 深入了解WM_SIZE
  5. PHP复杂度,php 算法复杂度 时间复杂度 空间复杂度
  6. 用JS的正则表达式如何判断输入框内为中文或者是英文
  7. mysql int类型的长度值
  8. 在虚拟机中ftp服务器的配置,ftp服务器在虚拟机中配置文件
  9. TextView图文混排
  10. I have no name !;sudo: unknown uid 1000: who are you?
  11. java中有jar连接数据库 SqlHelper配置
  12. 百度编辑器ueditor中的表格添加边框和颜色
  13. 五子棋(机器人随机下棋简单版本)
  14. gps经纬度坐标 c语言,测试百度地图输入GPS经纬度显示位置API
  15. 【软件工程】——软工视频总结
  16. 词干提取(stemming)与词形还原(lemmatization)
  17. 聊聊旷厂黑科技 | 手机多摄的终极奥义是“多”吗?
  18. 字节跳动测试岗薪酬体系曝光,我承认真的酸了
  19. 祝我亲爱的天蝎GG生日快乐!+相识3周年小纪念【转载】
  20. 什么是网站备案?如何查询网站是否备案?

热门文章

  1. “三只老鼠偷油”的管理学
  2. 【SEUSE】软件测试及应用课程笔记
  3. Android_textView验证码倒计时
  4. Python 利用 pyecharts 做数据分析绘图
  5. 2017国际脑信息学大会即将开幕(附免费参会攻略)
  6. React类组件里面的各种问题浅析
  7. Scala 系列(六)—— 常用集合类型之 List Set
  8. ERP系统集成实例 - 适应新常态
  9. ssm+java计算机毕业设计高校毕业生就业可视分析平台5w80y(程序+lw+源码+远程部署)
  10. oracle数据库的访问控制,数据库角色访问控制