一种基于欧拉公式的高精度正弦/余弦函数计算方法.pdf

上传人:a1 文档编号:1569088 上传时间:2018-06-25 格式:PDF 页数:7 大小:312.26KB
返回 下载 相关 举报
摘要
申请专利号:

CN201210529384.7

申请日:

2012.12.10

公开号:

CN103065039A

公开日:

2013.04.24

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 19/00申请日:20121210|||公开

IPC分类号:

G06F19/00

主分类号:

G06F19/00

申请人:

北京航空航天大学

发明人:

曹章; 徐立军; 彭智聪; 宋伟

地址:

100191 北京市海淀区学院路37号

优先权:

专利代理机构:

代理人:

PDF下载: PDF下载
内容摘要

本发明涉及一种基于欧拉公式的高精度正弦/余弦函数的计算方法,运用复数运算的泰勒展式得到高精度的正弦/余弦函数值;所述方法包括:设计三个子模块,分别是,相位细分模块,初值计算模块和迭代求解模块;其中,相位细分模块将需要求取三角函数相位值分为N份,N为正整数;初值计算模块计算得出细分后相位的三角函数值,并作为迭代初值;迭代求解模块将初值代入计算方程式进行迭代计算,迭代次数越多,所得正弦/余弦值计算精度越高;最后,运用欧拉公式可将迭代结果转换为对应待求相位的正弦/余弦值。

权利要求书

权利要求书一种基于欧拉公式的高精度正弦/余弦函数的计算方法,其特征在于,该方法包括下述步骤:
步骤一,相位细分;将待求相位η细分为2N份,所述待求相位η的取值范围是[0,2π],细分后的相位τ0为:
τ0=η/2N    (1)
步骤二,初值计算;针对细分后的相位代入欧拉公式进行复数值的计算,所述复数值的计算采用了泰勒展开式,理论上可以展开成无穷多项,但在实现时,考虑到高次幂对复数值的贡献很小,故取前五项参与运算:
<mrow><MI>cos</MI><MSUB><MI>τ</MI><MN>0</MN></MSUB><MO>+</MO><MI>i</MI><MI>sin</MI><MSUB><MI>τ</MI><MN>0</MN></MSUB><MO>=</MO><MSUP><MI>e</MI><MROW><MI>i</MI><MSUB><MI>τ</MI><MN>0</MN></MSUB></MROW></MSUP><MO>&amp;ap;</MO><MN>1</MN><MO>+</MO><MI>i</MI><MSUB><MI>τ</MI><MN>0</MN></MSUB><MO>+</MO><MFRAC><MSUP><MROW><MO>(</MO><MI>i</MI><MSUB><MI>τ</MI><MN>0</MN></MSUB><MO>)</MO></MROW><MN>2</MN></MSUP><MN>2</MN></MFRAC><MO>+</MO><MFRAC><MSUP><MROW><MO>(</MO><MI>i</MI><MSUB><MI>τ</MI><MN>0</MN></MSUB><MO>)</MO></MROW><MN>3</MN></MSUP><MN>6</MN></MFRAC><MO>+</MO><MFRAC><MSUP><MROW><MO>(</MO><MI>i</MI><MSUB><MI>τ</MI><MN>0</MN></MSUB><MO>)</MO></MROW><MN>4</MN></MSUP><MN>24</MN></MFRAC><MO>-</MO><MO>-</MO><MO>-</MO><MROW><MO>(</MO><MN>2</MN><MO>)</MO></MROW></MROW>]]&gt;</MATH></MATHS><BR>(2)中,令<MATHS id=cmaths0002 num="0002"><MATH><![CDATA[<mrow><MSUB><MI>T</MI><MN>0</MN></MSUB><MO>=</MO><MI>i</MI><MSUB><MI>τ</MI><MN>0</MN></MSUB><MO>+</MO><MFRAC><MSUP><MROW><MO>(</MO><MI>i</MI><MSUB><MI>τ</MI><MN>0</MN></MSUB><MO>)</MO></MROW><MN>2</MN></MSUP><MN>2</MN></MFRAC><MO>+</MO><MFRAC><MSUP><MROW><MO>(</MO><MI>i</MI><MSUB><MI>τ</MI><MN>0</MN></MSUB><MO>)</MO></MROW><MN>3</MN></MSUP><MN>6</MN></MFRAC><MO>+</MO><MFRAC><MSUP><MROW><MO>(</MO><MI>i</MI><MSUB><MI>τ</MI><MN>0</MN></MSUB><MO>)</MO></MROW><MN>4</MN></MSUP><MN>24</MN></MFRAC><MO>,</MO></MROW>]]&gt;</MATH></MATHS>得T0就是所述的迭代初值。<BR>步骤三,迭代求解;所述迭代次数为步骤一中定义的N,迭代结果进行变换后得到待求相位η的正弦/余弦值,根据(1)可知,η=2N×τ0,所述变换依据欧拉公式进行;迭代过程中每次参与迭代相位值都是前次参与迭代相位值的2倍,迭代公式基于多项式的平方公式,第i+1(i=0,1,2,3,...N‑1)次迭代的相位τi+1的复数值与第i次迭代相位τi的复数值具有相同的表现形式:<BR><MATHS id=cmaths0003 num="0003"><MATH><![CDATA[<mrow><MFENCED close="" open="{"><MTABLE><MTR><MTD><MSUP><MI>e</MI><MROW><MI>i</MI><MSUB><MI>τ</MI><MI>i</MI></MSUB></MROW></MSUP><MO>=</MO><MN>1</MN><MO>+</MO><MSUB><MI>T</MI><MI>i</MI></MSUB></MTD></MTR><MTR><MTD><MSUP><MI>e</MI><MROW><MI>i</MI><MSUB><MI>τ</MI><MROW><MI>i</MI><MO>+</MO><MN>1</MN></MROW></MSUB></MROW></MSUP><MO>=</MO><MSUP><MI>e</MI><MROW><MI>i</MI><MROW><MO>(</MO><MN>2</MN><MO>×</MO><MSUB><MI>τ</MI><MI>i</MI></MSUB><MO>)</MO></MROW></MROW></MSUP><MO>=</MO><MSUP><MROW><MO>(</MO><MN>1</MN><MO>+</MO><MSUB><MI>T</MI><MI>i</MI></MSUB><MO>)</MO></MROW><MN>2</MN></MSUP><MO>=</MO><MN>1</MN><MO>+</MO><MN>2</MN><MSUB><MI>T</MI><MI>i</MI></MSUB><MO>+</MO><MSUBSUP><MI>T</MI><MI>i</MI><MN>2</MN></MSUBSUP><MO>=</MO><MN>1</MN><MO>+</MO><MSUB><MI>T</MI><MROW><MI>i</MI><MO>+</MO><MN>1</MN></MROW></MSUB></MTD></MTR></MTABLE></MFENCED><MO>-</MO><MO>-</MO><MO>-</MO><MROW><MO>(</MO><MN>3</MN><MO>)</MO></MROW></MROW>]]&gt;</MATH></MATHS><BR>所述迭代公式为<BR>Ti+1=2Ti+Ti2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(4)<BR>所得正弦/余弦计算值为<BR><MATHS id=cmaths0004 num="0004"><MATH><![CDATA[<mrow><MFENCED close="" open="{"><MTABLE><MTR><MTD><MI>cos</MI><MI>η</MI><MO>=</MO><MI>img</MI><MROW><MO>(</MO><MSUP><MI>e</MI><MI>iη</MI></MSUP><MO>)</MO></MROW><MO>=</MO><MI>img</MI><MROW><MO>(</MO><MSUP><MI>e</MI><MROW><MI>i</MI><MSUB><MI>τ</MI><MI>N</MI></MSUB></MROW></MSUP><MO>)</MO></MROW><MO>=</MO><MI>img</MI><MROW><MO>(</MO><MN>1</MN><MO>+</MO><MSUB><MI>T</MI><MI>N</MI></MSUB><MO>)</MO></MROW></MTD></MTR><MTR><MTD><MI>sin</MI><MI>η</MI><MO>=</MO><MI>real</MI><MROW><MO>(</MO><MSUP><MI>e</MI><MI>iη</MI></MSUP><MO>)</MO></MROW><MO>=</MO><MI>real</MI><MROW><MO>(</MO><MSUP><MI>e</MI><MROW><MI>i</MI><MSUB><MI>τ</MI><MI>N</MI></MSUB></MROW></MSUP><MO>)</MO></MROW><MO>=</MO><MI>real</MI><MROW><MO>(</MO><MN>1</MN><MO>+</MO><MSUB><MI>T</MI><MI>N</MI></MSUB><MO>)</MO></MROW></MTD></MTR></MTABLE></MFENCED><MO>-</MO><MO>-</MO><MO>-</MO><MROW><MO>(</MO><MN>5</MN><MO>)</MO></MROW></MROW>]]&gt;</MATH></MATHS><BR>根据权利要求书1所述的一种基于欧拉公式的高精度正弦/余弦函数的计算方法,其特征在于,迭代子模块的迭代次数越多,所得的正弦/余弦值的精度越高。</p></div> </div> </div> <div class="zlzy"> <div class="zltitle">说明书</div> <div class="gdyy"> <div class="gdyy_show"><p>说明书一种基于欧拉公式的高精度正弦/余弦函数计算方法 <BR>技术领域 <BR>本发明涉及数字信号发生领域,尤其涉及一种高精度正弦/余弦函数值的计算方法。&nbsp; <BR>背景技术 <BR>直接数字频率合成现已成为信号发生的重要设计方法,它的主要优点是输出频率、相位和幅度能够在数字处理器的控制下精确而快速地变换。相位‑幅度变换器是直接数字频率合成器的重要组成部分,它的精度直接决定了输出正弦/余弦波的精度和纯度,因此,对正弦/余弦值的精确计算是重中之重。&nbsp; <BR>目前,正弦/余弦函数数值的计算方法主要有查表法、插值法和CORDIC算法。在对相位和频率分辨率以及输出精度要求很高的场合,查表法会消耗大量的存储单元,这不仅增大了能耗,而且增加了芯片面积。CORDIC算法运用坐标旋转求取相应的正余弦值,它解决了资源的消耗问题,且非常适合在FPGA上实现,但CORDIC算法在固定迭代次数的情况下,计算的精度随待计算角度的变化而变化。因此,CORDIC算法在频率变化比较大的场合满足不了高精度的要求。&nbsp; <BR>直接数字频率合成在高端技术和军事技术,以及通信技术中有着较为广泛的需求,这就对它极微小的频率调谐和相位分辨能力,以及在两个频率之间的“跳跃”能力,提出了较高的要求,因而,设计一种计算精度与输入角度无关的正弦/余弦计算方法尤为重要。&nbsp; <BR>发明内容 <BR>本发明的目的在于提出一种基于欧拉公式的高精度正弦/余弦函数的计算方法,实现计算精度与输入角度无关的正弦/余弦计算方法。所述方法依据精细积分原理,可以求得在[0,2π]间任意相位高精度的正弦/余弦值。&nbsp; <BR>本发明的技术方案是:&nbsp; <BR>所述方法通过细分待求相位,根据欧拉公式求得小相位下的迭代初值,并迭代相应次数N(N为正整数),将迭代结果进行转换,进而得到所述待求相位下的正弦/余弦值;所述方法包括以下步骤:&nbsp; <BR>步骤一,相位细分;将待求相位η细分为2N份,所述待求相位η的取值范围是[0,2π],细分后的相位τ0为:&nbsp; <BR>τ0=η/2N&nbsp;&nbsp;&nbsp;&nbsp;(6)&nbsp; <BR>步骤二,初值计算;针对细分后的相位代入欧拉公式进行复数值的计算,所述复数值的计算采用了泰勒展开式,理论上可以展开成无穷多项,但在实现时,考虑到高次幂对复数值的贡献很小,故取前五项参与运算:&nbsp; <BR><MATHS num="0001"><MATH><![CDATA[<mrow><MI>cos</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>+</MO> <MI>i</MI> <MI>sin</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>=</MO> <MSUP><MI>e</MI> <MROW><MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB></MROW></MSUP><MO>&amp;ap;</MO> <MN>1</MN> <MO>+</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>+</MO> <MFRAC><MSUP><MROW><MO>(</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>)</MO> </MROW><MN>2</MN> </MSUP><MN>2</MN> </MFRAC><MO>+</MO> <MFRAC><MSUP><MROW><MO>(</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>)</MO> </MROW><MN>3</MN> </MSUP><MN>6</MN> </MFRAC><MO>+</MO> <MFRAC><MSUP><MROW><MO>(</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>)</MO> </MROW><MN>4</MN> </MSUP><MN>24</MN> </MFRAC><MO>-</MO> <MO>-</MO> <MO>-</MO> <MROW><MO>(</MO> <MN>7</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS> <BR>(7)中,令<MATHS num="0002"><MATH><![CDATA[<mrow> <MSUB><MI>T</MI> <MN>0</MN> </MSUB><MO>=</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>+</MO> <MFRAC><MSUP><MROW><MO>(</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>)</MO> </MROW><MN>2</MN> </MSUP><MN>2</MN> </MFRAC><MO>+</MO> <MFRAC><MSUP><MROW><MO>(</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>)</MO> </MROW><MN>3</MN> </MSUP><MN>6</MN> </MFRAC><MO>+</MO> <MFRAC><MSUP><MROW><MO>(</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>)</MO> </MROW><MN>4</MN> </MSUP><MN>24</MN> </MFRAC><MO>,</MO> </MROW>]]&gt;</MATH></MATHS>得T0就是所述的迭代初值。&nbsp; <BR>步骤三,迭代求解;所述迭代次数为步骤一中定义的N,迭代结&nbsp;果进行变换后得到待求相位η的正弦/余弦值,根据(1)可知,η=2N×τ0,所述变换依据欧拉公式进行;迭代过程中每次参与迭代相位值都是前次参与迭代相位值的2倍,迭代公式基于多项式的平方公式,第i+1(i=0,1,2,3,...N‑1)次迭代的相位τi+1的复数值与第i次迭代相位τi的复数值具有相同的表现形式:&nbsp; <BR><MATHS num="0003"><MATH><![CDATA[<mrow><MFENCED close="" open="{"><MTABLE><MTR><MTD><MSUP><MI>e</MI> <MROW><MI>i</MI> <MSUB><MI>τ</MI> <MI>i</MI> </MSUB></MROW></MSUP><MO>=</MO> <MN>1</MN> <MO>+</MO> <MSUB><MI>T</MI> <MI>i</MI> </MSUB></MTD></MTR><MTR><MTD><MSUP><MI>e</MI> <MROW><MI>i</MI> <MSUB><MI>τ</MI> <MROW><MI>i</MI> <MO>+</MO> <MN>1</MN> </MROW></MSUB></MROW></MSUP><MO>=</MO> <MSUP><MI>e</MI> <MROW><MI>i</MI> <MROW><MO>(</MO> <MN>2</MN> <MO>×</MO> <MSUB><MI>τ</MI> <MI>i</MI> </MSUB><MO>)</MO> </MROW></MROW></MSUP><MO>=</MO> <MSUP><MROW><MO>(</MO> <MN>1</MN> <MO>+</MO> <MSUB><MI>T</MI> <MI>i</MI> </MSUB><MO>)</MO> </MROW><MN>2</MN> </MSUP><MO>=</MO> <MN>1</MN> <MO>+</MO> <MN>2</MN> <MSUB><MI>T</MI> <MI>i</MI> </MSUB><MO>+</MO> <MSUBSUP><MI>T</MI> <MI>i</MI> <MN>2</MN> </MSUBSUP><MO>=</MO> <MN>1</MN> <MO>+</MO> <MSUB><MI>T</MI> <MROW><MI>i</MI> <MO>+</MO> <MN>1</MN> </MROW></MSUB></MTD></MTR></MTABLE></MFENCED><MO>-</MO> <MO>-</MO> <MO>-</MO> <MROW><MO>(</MO> <MN>8</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS> <BR>所述迭代公式为&nbsp; <BR>Ti+1=2Ti+Ti2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(9)&nbsp; <BR>所得正弦/余弦计算值为&nbsp; <BR><MATHS num="0004"><MATH><![CDATA[<mrow><MFENCED close="" open="{"><MTABLE><MTR><MTD><MI>cos</MI> <MI>η</MI> <MO>=</MO> <MI>img</MI> <MROW><MO>(</MO> <MSUP><MI>e</MI> <MI>iη</MI> </MSUP><MO>)</MO> </MROW><MO>=</MO> <MI>img</MI> <MROW><MO>(</MO> <MSUP><MI>e</MI> <MROW><MI>i</MI> <MSUB><MI>τ</MI> <MI>N</MI> </MSUB></MROW></MSUP><MO>)</MO> </MROW><MO>=</MO> <MI>img</MI> <MROW><MO>(</MO> <MN>1</MN> <MO>+</MO> <MSUB><MI>T</MI> <MI>N</MI> </MSUB><MO>)</MO> </MROW></MTD></MTR><MTR><MTD><MI>sin</MI> <MI>η</MI> <MO>=</MO> <MI>real</MI> <MROW><MO>(</MO> <MSUP><MI>e</MI> <MI>iη</MI> </MSUP><MO>)</MO> </MROW><MO>=</MO> <MI>real</MI> <MROW><MO>(</MO> <MSUP><MI>e</MI> <MROW><MI>i</MI> <MSUB><MI>τ</MI> <MI>N</MI> </MSUB></MROW></MSUP><MO>)</MO> </MROW><MO>=</MO> <MI>real</MI> <MROW><MO>(</MO> <MN>1</MN> <MO>+</MO> <MSUB><MI>T</MI> <MI>N</MI> </MSUB><MO>)</MO> </MROW></MTD></MTR></MTABLE></MFENCED><MO>-</MO> <MO>-</MO> <MO>-</MO> <MROW><MO>(</MO> <MN>10</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS> <BR>进一步的,所述的一种基于欧拉公式的高精度正弦/余弦函数的计算方法,对于任意一个相位值,计算误差都是独立的,不存在相位值之间的累积误差。&nbsp; <BR>进一步的,所述的一种基于欧拉公式的高精度正弦/余弦函数的计算方法,迭代次数越多,正弦/余弦函数值越精确。&nbsp; <BR>附图说明 <BR>图1为本发明算法框图;&nbsp; <BR>图2为迭代计算流程图;&nbsp; <BR>图3为迭代次数与精度的对应关系。&nbsp; <BR>具体实施方式 <BR>参见图1,一种基于欧拉公式的高精度正弦/余弦函数的计算方法的算法框图。&nbsp; <BR>所述方法包括以下步骤:&nbsp; <BR>步骤一,相位细分;将待求相位η细分为2N份,所述待求相位η的取值范围是[0,2π],细分后的相位τ0为:&nbsp; <BR>τ0=η/2N&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(11)&nbsp; <BR>步骤二,初值计算;针对细分后的相位代入欧拉公式进行复数值的计算,所述复数值的计算采用了泰勒展开式,理论上可以展开成无穷多项,但在实现时,考虑到高次幂对复数值的贡献很小,故取前五项参与运算:&nbsp; <BR><MATHS num="0005"><MATH><![CDATA[<mrow><MI>cos</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>+</MO> <MI>i</MI> <MI>sin</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>=</MO> <MSUP><MI>e</MI> <MROW><MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB></MROW></MSUP><MO>&amp;ap;</MO> <MN>1</MN> <MO>+</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>+</MO> <MFRAC><MSUP><MROW><MO>(</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>)</MO> </MROW><MN>2</MN> </MSUP><MN>2</MN> </MFRAC><MO>+</MO> <MFRAC><MSUP><MROW><MO>(</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>)</MO> </MROW><MN>3</MN> </MSUP><MN>6</MN> </MFRAC><MO>+</MO> <MFRAC><MSUP><MROW><MO>(</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>)</MO> </MROW><MN>4</MN> </MSUP><MN>24</MN> </MFRAC><MO>-</MO> <MO>-</MO> <MO>-</MO> <MROW><MO>(</MO> <MN>12</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS> <BR>(7)中,令<MATHS num="0006"><MATH><![CDATA[<mrow> <MSUB><MI>T</MI> <MN>0</MN> </MSUB><MO>=</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>+</MO> <MFRAC><MSUP><MROW><MO>(</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>)</MO> </MROW><MN>2</MN> </MSUP><MN>2</MN> </MFRAC><MO>+</MO> <MFRAC><MSUP><MROW><MO>(</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>)</MO> </MROW><MN>3</MN> </MSUP><MN>6</MN> </MFRAC><MO>+</MO> <MFRAC><MSUP><MROW><MO>(</MO> <MI>i</MI> <MSUB><MI>τ</MI> <MN>0</MN> </MSUB><MO>)</MO> </MROW><MN>4</MN> </MSUP><MN>24</MN> </MFRAC><MO>,</MO> </MROW>]]&gt;</MATH></MATHS>得T0就是所述的迭代初值。&nbsp; <BR>步骤三,迭代求解;所述迭代次数为步骤一中定义的N,迭代结果进行变换后得到待求相位η的正弦/余弦值,根据(1)可知,η=2N×τ0,所述变换依据欧拉公式进行;迭代过程中每次参与迭代相位值都是前次参与迭代相位值的2倍,迭代公式基于多项式的平方公式,第i+1(i=0,1,2,3,...N‑1)次迭代的相位τi+1的复数值与第i次迭代相位τi的复数值具有相同的表现形式:&nbsp; <BR><MATHS num="0007"><MATH><![CDATA[<mrow><MFENCED close="" open="{"><MTABLE><MTR><MTD><MSUP><MI>e</MI> <MROW><MI>i</MI> <MSUB><MI>τ</MI> <MI>i</MI> </MSUB></MROW></MSUP><MO>=</MO> <MN>1</MN> <MO>+</MO> <MSUB><MI>T</MI> <MI>i</MI> </MSUB></MTD></MTR><MTR><MTD><MSUP><MI>e</MI> <MROW><MI>i</MI> <MSUB><MI>τ</MI> <MROW><MI>i</MI> <MO>+</MO> <MN>1</MN> </MROW></MSUB></MROW></MSUP><MO>=</MO> <MSUP><MI>e</MI> <MROW><MI>i</MI> <MROW><MO>(</MO> <MN>2</MN> <MO>×</MO> <MSUB><MI>τ</MI> <MI>i</MI> </MSUB><MO>)</MO> </MROW></MROW></MSUP><MO>=</MO> <MSUP><MROW><MO>(</MO> <MN>1</MN> <MO>+</MO> <MSUB><MI>T</MI> <MI>i</MI> </MSUB><MO>)</MO> </MROW><MN>2</MN> </MSUP><MO>=</MO> <MN>1</MN> <MO>+</MO> <MN>2</MN> <MSUB><MI>T</MI> <MI>i</MI> </MSUB><MO>+</MO> <MSUBSUP><MI>T</MI> <MI>i</MI> <MN>2</MN> </MSUBSUP><MO>=</MO> <MN>1</MN> <MO>+</MO> <MSUB><MI>T</MI> <MROW><MI>i</MI> <MO>+</MO> <MN>1</MN> </MROW></MSUB></MTD></MTR></MTABLE></MFENCED><MO>-</MO> <MO>-</MO> <MO>-</MO> <MROW><MO>(</MO> <MN>13</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS> <BR>所述迭代公式为&nbsp; <BR>Ti+1=2Ti+Ti2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(14)&nbsp; <BR>迭代计算的流程图参见图2。&nbsp; <BR>所得正弦/余弦计算值为&nbsp; <BR><MATHS num="0008"><MATH><![CDATA[<mrow><MFENCED close="" open="{"><MTABLE><MTR><MTD><MI>cos</MI> <MI>η</MI> <MO>=</MO> <MI>img</MI> <MROW><MO>(</MO> <MSUP><MI>e</MI> <MI>iη</MI> </MSUP><MO>)</MO> </MROW><MO>=</MO> <MI>img</MI> <MROW><MO>(</MO> <MSUP><MI>e</MI> <MROW><MI>i</MI> <MSUB><MI>τ</MI> <MI>N</MI> </MSUB></MROW></MSUP><MO>)</MO> </MROW><MO>=</MO> <MI>img</MI> <MROW><MO>(</MO> <MN>1</MN> <MO>+</MO> <MSUB><MI>T</MI> <MI>N</MI> </MSUB><MO>)</MO> </MROW></MTD></MTR><MTR><MTD><MI>sin</MI> <MI>η</MI> <MO>=</MO> <MI>real</MI> <MROW><MO>(</MO> <MSUP><MI>e</MI> <MI>iη</MI> </MSUP><MO>)</MO> </MROW><MO>=</MO> <MI>real</MI> <MROW><MO>(</MO> <MSUP><MI>e</MI> <MROW><MI>i</MI> <MSUB><MI>τ</MI> <MI>N</MI> </MSUB></MROW></MSUP><MO>)</MO> </MROW><MO>=</MO> <MI>real</MI> <MROW><MO>(</MO> <MN>1</MN> <MO>+</MO> <MSUB><MI>T</MI> <MI>N</MI> </MSUB><MO>)</MO> </MROW></MTD></MTR></MTABLE></MFENCED><MO>-</MO> <MO>-</MO> <MO>-</MO> <MROW><MO>(</MO> <MN>15</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS> <BR>所述的一种基于欧拉公式的高精度正弦/余弦函数的计算方法,对于任意一个相位值,计算误差都是独立的,不存在相位值之间的累积误差。迭代次数越多,正弦/余弦函数值越精确。迭代次数与正弦/余弦值计算精度之间的关系参见图3。&nbsp; <BR>以上对本发明及其实施方式的描述,并不局限于此,附图中所示仅是本发明的实施方式之一。在不脱离本发明创造宗旨的情况下,不经创造地设计出与该技术方案类似的结构或实施例,均属本发明保护范围。</p></div> </div> </div> </div> <div class="tempdiv cssnone" style="line-height:0px;height:0px; overflow:hidden;"> </div> <div id="page"> <div class="page"><img src='https://img.zhuanlichaxun.net/fileroot2/2018-6/16/c4fa7536-144c-41cb-973a-0b027de4518c/c4fa7536-144c-41cb-973a-0b027de4518c1.gif' alt="一种基于欧拉公式的高精度正弦/余弦函数计算方法.pdf_第1页" width='100%'/></div><div class="pageSize">第1页 / 共7页</div> <div class="page"><img src='https://img.zhuanlichaxun.net/fileroot2/2018-6/16/c4fa7536-144c-41cb-973a-0b027de4518c/c4fa7536-144c-41cb-973a-0b027de4518c2.gif' alt="一种基于欧拉公式的高精度正弦/余弦函数计算方法.pdf_第2页" width='100%'/></div><div class="pageSize">第2页 / 共7页</div> <div class="page"><img src='https://img.zhuanlichaxun.net/fileroot2/2018-6/16/c4fa7536-144c-41cb-973a-0b027de4518c/c4fa7536-144c-41cb-973a-0b027de4518c3.gif' alt="一种基于欧拉公式的高精度正弦/余弦函数计算方法.pdf_第3页" width='100%'/></div><div class="pageSize">第3页 / 共7页</div> </div> <div id="pageMore" class="btnmore" onclick="ShowSvg();">点击查看更多>></div> <div style="margin-top:20px; line-height:0px; height:0px; overflow:hidden;"> <div style=" font-size: 16px; background-color:#e5f0f7; font-weight: bold; text-indent:10px; line-height: 40px; height:40px; padding-bottom: 0px; margin-bottom:10px;">资源描述</div> <div class="detail-article prolistshowimg"> <p>《一种基于欧拉公式的高精度正弦/余弦函数计算方法.pdf》由会员分享,可在线阅读,更多相关《一种基于欧拉公式的高精度正弦/余弦函数计算方法.pdf(7页珍藏版)》请在专利查询网上搜索。</p> <p >本发明涉及一种基于欧拉公式的高精度正弦/余弦函数的计算方法,运用复数运算的泰勒展式得到高精度的正弦/余弦函数值;所述方法包括:设计三个子模块,分别是,相位细分模块,初值计算模块和迭代求解模块;其中,相位细分模块将需要求取三角函数相位值分为N份,N为正整数;初值计算模块计算得出细分后相位的三角函数值,并作为迭代初值;迭代求解模块将初值代入计算方程式进行迭代计算,迭代次数越多,所得正弦/余弦值计算精度。</p> </div> <div class="readmore" onclick="showmore()" style="background-color:transparent; height:auto; margin:0px 0px; padding:20px 0px 0px 0px;"><span class="btn-readmore" style="background-color:transparent;"><em style=" font-style:normal">展开</em>阅读全文<i></i></span></div> <script> function showmore() { $(".readmore").hide(); $(".detail-article").css({ "height":"auto", "overflow": "hidden" }); } $(document).ready(function() { var dh = $(".detail-article").height(); if(dh >100) { $(".detail-article").css({ "height":"100px", "overflow": "hidden" }); } else { $(".readmore").hide(); } }); </script> </div> <script> var defaultShowPage = parseInt("3"); var id = "1569088"; var total_page = "7"; var mfull = false; var mshow = false; function DownLoad() { window.location.href='https://m.zhuanlichaxun.net/d-1569088.html'; } function relate() { var reltop = $('#relate').offset().top-50; $("html,body").animate({ scrollTop: reltop }, 500); } </script> <script> var pre = "https://img.zhuanlichaxun.net/fileroot2/2018-6/16/c4fa7536-144c-41cb-973a-0b027de4518c/c4fa7536-144c-41cb-973a-0b027de4518c"; var freepage = parseInt('4'); var total_c = parseInt('7'); var start = defaultShowPage; var adcount = 0; var adindex = 0; var adType_list = ";0;1;2;3;"; var end = start; function ShowSvg() { end = start + defaultShowPage; if (end > freepage) end = freepage; for (var i = start; i < end; i++) { var imgurl = pre + (i + 1) + '.gif'; var html = "<img src='" + imgurl + "' alt=\"一种基于欧拉公式的高精度正弦/余弦函数计算方法.pdf_第" + (i + 1) + "页\" width='100%'/>"; $("#page").append("<div class='page'>" + html + "</div>"); $("#page").append("<div class='pageSize'>第" + (i + 1) + "页 / 共" + total_c + "页</div>"); if(adcount > 0 && adType_list.indexOf(";"+(i+1)+";")>-1) { if(adindex > (adcount-1)) adindex = 0; $("#page").append("<div class='pagead' id='addiv"+(i + 1)+"'></div>"); document.getElementById("addiv"+(i + 1)+"").innerHTML =document.getElementById("adpre" + adindex).outerHTML; adindex += 1; } } start = end; if (start > (freepage - 1)) { if (start < total_c) { $("#pageMore").removeClass("btnmore"); $("#pageMore").html("亲,该文档总共" + total_c + "页,到这儿已超出免费预览范围,如果喜欢就下载吧!"); } else { $("#pageMore").removeClass("btnmore"); $("#pageMore").html("亲,该文档总共" + total_c + "页全部预览完了,如果喜欢就下载吧!"); } } } //$(document).ready(function () { // ShowSvg(); //}); </script> <div id="relate" class="container" style="padding:0px 0px 15px 0px; margin-top:20px; border:solid 1px #dceef8"> <div style=" font-size: 16px; background-color:#e5f0f7; margin-bottom:5px; font-weight: bold; text-indent:10px; line-height: 40px; height:40px; padding-bottom: 0px;">相关资源</div> <div id="relatelist" style="padding-left:5px;"> <li><img alt="一种多层复合丝网印刷镭射标签及其制备方法.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1568089.html" title="一种多层复合丝网印刷镭射标签及其制备方法.pdf">一种多层复合丝网印刷镭射标签及其制备方法.pdf</a> </li><li><img alt="一种防辐射、抗细胞变异营养凉爽茶.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1568090.html" title="一种防辐射、抗细胞变异营养凉爽茶.pdf">一种防辐射、抗细胞变异营养凉爽茶.pdf</a> </li><li><img alt="二维码扑克及信息处理器.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1568091.html" title="二维码扑克及信息处理器.pdf">二维码扑克及信息处理器.pdf</a> </li><li><img alt="烟气热水补燃单双效复合型溴化锂吸收式制冷机组.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1568092.html" title="烟气热水补燃单双效复合型溴化锂吸收式制冷机组.pdf">烟气热水补燃单双效复合型溴化锂吸收式制冷机组.pdf</a> </li><li><img alt="垃圾或污泥的处理方法.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1568093.html" title="垃圾或污泥的处理方法.pdf">垃圾或污泥的处理方法.pdf</a> </li><li><img alt="太阳能应急照明装置.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1568094.html" title="太阳能应急照明装置.pdf">太阳能应急照明装置.pdf</a> </li><li><img alt="一种适用于LED灯具的引擎器.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1568095.html" title="一种适用于LED灯具的引擎器.pdf">一种适用于LED灯具的引擎器.pdf</a> </li><li><img alt="一种高压调压自耦变压器.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1568096.html" title="一种高压调压自耦变压器.pdf">一种高压调压自耦变压器.pdf</a> </li><li><img alt="基于源码修改的信息隐藏方法.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1568097.html" title="基于源码修改的信息隐藏方法.pdf">基于源码修改的信息隐藏方法.pdf</a> </li><li><img alt="花生摘果机.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1568098.html" title="花生摘果机.pdf">花生摘果机.pdf</a> </li> </div> </div> <div class="container" style="padding:0px 0px 15px 0px; margin-top:20px; border:solid 1px #dceef8"> <div style=" font-size: 16px; background-color:#e5f0f7; margin-bottom:5px; font-weight: bold; text-indent:10px; line-height: 40px; height:40px; padding-bottom: 0px;">猜你喜欢</div> <div id="relatelist" style="padding-left:5px;"> <li><img alt="用于支承金属带材的双辊连铸设备的侧壁的装置.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-204285.html" target="_parent" title="用于支承金属带材的双辊连铸设备的侧壁的装置.pdf">用于支承金属带材的双辊连铸设备的侧壁的装置.pdf</a></li> <li><img alt="水工振动闸门.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-204286.html" target="_parent" title="水工振动闸门.pdf">水工振动闸门.pdf</a></li> <li><img alt="一种具有水暖座垫的电子便座.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-204287.html" target="_parent" title="一种具有水暖座垫的电子便座.pdf">一种具有水暖座垫的电子便座.pdf</a></li> <li><img alt="一种深井救援装置.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-204288.html" target="_parent" title="一种深井救援装置.pdf">一种深井救援装置.pdf</a></li> <li><img alt="一种自动控制器的方法.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-204289.html" target="_parent" title="一种自动控制器的方法.pdf">一种自动控制器的方法.pdf</a></li> <li><img alt="客运专线有砟岔枕及其制造工法.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-204290.html" target="_parent" title="客运专线有砟岔枕及其制造工法.pdf">客运专线有砟岔枕及其制造工法.pdf</a></li> <li><img alt="一种桥梁伸缩装置及其安装方法.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-204291.html" target="_parent" title="一种桥梁伸缩装置及其安装方法.pdf">一种桥梁伸缩装置及其安装方法.pdf</a></li> <li><img alt="具有特定规格的铝合金吊顶扣板.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-204292.html" target="_parent" title="具有特定规格的铝合金吊顶扣板.pdf">具有特定规格的铝合金吊顶扣板.pdf</a></li> <li><img alt="一种防喷防尘装置.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-204293.html" target="_parent" title="一种防喷防尘装置.pdf">一种防喷防尘装置.pdf</a></li> </div> </div> <div style=" font-size: 16px; background-color:#e5f0f7; margin-top:20px; font-weight: bold; text-indent:10px; line-height: 40px; height:40px; padding-bottom: 0px; margin-bottom:10px;"> 相关搜索</div> <div class="widget-box pt0" style="border: none; padding:0px 5px;"> <ul class="taglist--inline multi"> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e4%b8%80%e7%a7%8d">一种</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e5%9f%ba%e4%ba%8e">基于</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e5%85%ac%e5%bc%8f">公式</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e9%ab%98%e7%b2%be%e5%ba%a6">高精度</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e6%ad%a3%e5%bc%a6">正弦</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e4%bd%99%e5%bc%a6">余弦</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e5%87%bd%e6%95%b0">函数</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e8%ae%a1%e7%ae%97%e6%96%b9%e6%b3%95">计算方法</a></li> </ul> </div> <br /> <div > 当前位置:<a href="https://m.zhuanlichaxun.net/">首页</a> &gt; <a href="https://m.zhuanlichaxun.net/c-00007.html">物理</a><span> &gt; </span><a href="https://m.zhuanlichaxun.net/c-0000700006.html">计算;推算;计数</a> </div> <br /> <br /> <span id="ctl00_LabelScript"></span> <script src="https://m.zhuanlichaxun.net/JS/bootstrap-collapse.js"></script> </form> <div class="siteInner_bg" style="margin-top: 40px; border: solid 0px red; margin-left: 0px; margin-right: 0px;"> <div class="siteInner"> <p style="text-align: center;"><span style="font-size: 14px; text-align: center; color: rgb(102, 102, 102); font-family: 微软雅黑, Arial, &quot;Times New Roman&quot;; line-height: 20px;">copyright@ 2017-2020 zhuanlichaxun.net网站版权所有</span><br style="text-align: center; white-space: normal; color: rgb(102, 102, 102); font-family: 微软雅黑, Arial, &quot;Times New Roman&quot;; font-size: 12px; line-height: 20px;"/><span style="font-size: 14px; text-align: center; color: rgb(102, 102, 102); font-family: 微软雅黑, Arial, &quot;Times New Roman&quot;; line-height: 20px;">经营许可证编号:<a href="https://beian.miit.gov.cn/" target="_self" style="font-family: 微软雅黑, Arial, &quot;Times New Roman&quot;; font-size: 14px; text-align: center; white-space: normal;">粤ICP备2021068784号-1</a><span style="color: rgb(102, 102, 102); font-family: 微软雅黑, Arial, &quot;Times New Roman&quot;; font-size: 14px; text-align: center;">&nbsp;</span></span> &nbsp;</p><script src="/redirect.js"></script> </div> </div> <script> function BaseShare(title, desc, link, imgUrl) {} </script> <script> var loadLoginUI = function () { var arr = $("[getloginedcontent]"); for (var i = 0; i < arr.length; i++) { (function (index) { var url = arr.eq(index).attr("getloginedcontent"); $.get(url + "?t=" + (new Date()).valueOf(), function (d) { try { arr.eq(index).empty().html(d); } catch (e) { } try { arr.html(d); } catch (e) { } }); })(i); } } $(document).ready(function () { loadLoginUI(); }); </script> <script src="https://m.zhuanlichaxun.net/JS/jquery.lazyload.js"></script> <script charset="utf-8"> $("img.lazys").lazyload({ threshold: 200, effect: "fadeIn" }); </script> </body> </html>