Browse Prior Art Database

Sin/Cos Function Via Approximations Plus Error Compensation

IP.com Disclosure Number: IPCOM000041729D
Original Publication Date: 1984-Mar-01
Included in the Prior Art Database: 2005-Feb-02
Document File: 1 page(s) / 13K

Publishing Venue

IBM

Related People

Murray, JT: AUTHOR

Abstract

This article describes an approximation technique for generating sin and/or cos functions. The first two terms (linear and cubic) of the McLaurin series are used as simple sinusoidal approximations, and the triple angle formula is used to extend the approximation beyond its region of known accuracy. The accuracy of the approximation technique is further improved by adjusting the value error data stored in a compensation table. Direct computation of sin (x) is done by quadrant for the argument 0 < x < PI/2 and adjusted for other quadrants to complete a circular argument 0 to 2 PI. Cos (x) is computed from sin (PI/2 0 x) using the algorithm and similar quadrant adjustment. The McLaurin series: SIN(X) = X - (X**3)/3!+(X**5)/5!-(X**7)/7!+...

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 53% of the total text.

Page 1 of 1

Sin/Cos Function Via Approximations Plus Error Compensation

This article describes an approximation technique for generating sin and/or cos functions. The first two terms (linear and cubic) of the McLaurin series are used as simple sinusoidal approximations, and the triple angle formula is used to extend the approximation beyond its region of known accuracy. The accuracy of the approximation technique is further improved by adjusting the value error data stored in a compensation table. Direct computation of sin (x) is done by quadrant for the argument 0 < x < PI/2 and adjusted for other quadrants to complete a circular argument 0 to 2 PI. Cos (x) is computed from sin (PI/2 0 x) using the algorithm and similar quadrant adjustment. The McLaurin series: SIN(X) = X - (X**3)/3!+(X**5)/5!-(X**7)/7!+... approximates sin (x) to any desired precision - a function of the order when truncating the infinite alternating series. Finite applications usually truncate the series at < = 7th order terms. Harmonic suppression for these orders are: 3 -34 dB 5 -60 dB 7 -90 dB Due to symmetry only odd orders exist in the above. For small angles sin
(x) = x (1-term McLaurin). The expression achieves a small error in the order of a few percent for x < PI/6. This small error can be extended over the desired quadrant by use of the multiple-angle relations; thus, SIN(3A) = 3*SIN(A)-4*(SIN(A))**3 subst. SIN(A)=A SIN(3A)=3*A-4*(A**3) subst. B=3A,A=B/3 SIN(B)=3*B/3-4*(B/3)**3 By simplifying the above equation SIN(B)=B-(B**3)*4/27(1) This approximation for 0 <...