博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
利用Sympy计算sin1°的最小多项式
阅读量:7080 次
发布时间:2019-06-28

本文共 830 字,大约阅读时间需要 2 分钟。

  首先我们有cos36=5+14,可以利用顶角为36 的等腰三角形求出,它满足方程4x22x1=0.

  利用二倍角公式cos2x=2cos2x1 迭代两次,求出cos9 满足的多项式,可以发现它是一个关于cos29 的多项式,因此我们可以求出sin29 满足的多项式。
  接着,我们利用三倍角公式sin3x=3sinx4sin3x 迭代两次即可求出sin1 满足的多项式,在此基础上因此分解,并代入求值即可得到sin1 的最小多项式。
  上Python代码~~

from sympy import *import mathinit_printing()x = symbols('x')t1=4*x**2-2*x-1t2=t1.subs({
x:2*x**2-1})t3=t2.subs({
x:2*x**2-1})t4=t3.subs({
x**2:(1-x**2)})t5=t4.subs({
x:3*x-4*x**3})t6=t5.subs({
x:3*x-4*x**3})factor(t6)

  t6即为sin1 满足的多项式,因式分解的结果如下:

  sin1因式分解
  我们只要依次将sin1 代入以上三个多项式中验证即可。
  sin1代入1
  sin1代入2
  只需验证sin1 满足上述的48次多项式即可。

s=factor(t6)/(256*x**8-512*x**6+304*x**4-48*x**2+1)r=s/(65536*x**16-262144*x**14+430080*x**12-372736*x**10+182784*x**8-50176*x**6+7040*x**4-384*x**2+1)r.subs({
x:math.sin(math.pi/180)})

运行结果如下:

sin1代入2

  因此,sin1 的最小多项式次数为48.


  如有不足之处,还望批评指正。期待下一次分享~~

你可能感兴趣的文章
MySQL导入SQL文件及常用命令
查看>>
c#(.Net)解析xml
查看>>
调整Virtual Box硬盘大小
查看>>
社会实体经济不断下滑的个人思考
查看>>
Pytorch多GPU并行处理
查看>>
【定制Android系统】Android O 在ROM中添加自己的 so 库(1)——Android.mk 与 Android.bp 的区别【转】...
查看>>
C#中把货币、日期转换成中文大写
查看>>
最近累死人的校园招聘20110928
查看>>
数字信号处理实验(零)—— 一维声音信号处理和二维图像处理
查看>>
HTTP请求:GET与POST方法的区别
查看>>
使用CDN对动态网站内容加速有效果吗
查看>>
iOS -view横向变成竖向
查看>>
关于INTRAWEB ISAPI DLL发布
查看>>
解决ASP.NET MVC4中使用Html.DropDownListFor显示枚举值默认项问题
查看>>
数据挖掘10大算法介绍
查看>>
《程序员的修炼——从优秀到卓越》
查看>>
sql2005 COM+ 目录要求 (警告)
查看>>
恋恋风尘
查看>>
mongodb - collMod
查看>>
学生如何提高专业英文阅读能力--施一公教授
查看>>