The Math Forum

Ask Dr. Math - Questions and Answers from our Archives
Associated Topics || Dr. Math Home || Search Dr. Math

Approximating Arcsin

Date: 08/10/99 at 23:16:01
From: Anonymous
Subject: Arcsin and Taylor Series

In my last question, I asked about how to find arcsin from only sin,
cos, and tan. But the page you directed me to reads:

   "The basis of the calculation is a Taylor series: 
      arcsin(x) = x + 1/2 (x^3/3) 
                    + (1/2)(3/4)(x^5/5) 
                    + [1/2)(3/4)(5/6)(x^7/7) + ... "

I noticed a pattern, but when does it stop? How do you use this 
formula? In addition, for example, does "x^3/3" reduce to "x^1" or 
does the order of operations straighten that out? Can you help me; I 
only want to find the angle from its trigonometric ratio. 

Date: 08/11/99 at 08:08:22
From: Doctor Jerry
Subject: Re: Arcsin and Taylor Series

The Taylor series for arcsin(x) continues indefinitely; it is an
infinite series. It would not be an efficient method for calculating
arcsin(x), except, perhaps, for small x.

The catch about using series approximations is to know how far
out to go in the series sum to achieve a certain accuracy. There are
advanced methods for finding polynomials that approximate arcsin(x).
For example, this approximation formula came from page 81 of the
Handbook of Mathematical Functions, by Milton Abramowitz and Irene

   arcsin(x) = pi/2 - sqrt(1 - x)(a0 + a1*x + a2*x^2 + a3*x^3),

   a0 = 1.5707288
   a1 = -0.2121144
   a2 = 0.0742610
   a3 = -0.0187293

Alternately, you could interpolate, using the sine function and arcsin
for a few known values. This could be programmed without great

Here is an example. Suppose you want, working in radians, arcsin(0.7).

Using a brief sine table, precalculated and stored, determine 
arcsin(0.7) bounded below and above by

   sin(0.75) = 0.681638760023
   sin(0.80) = 0.717356090900

The sine curve is approximately the line joining (0.75, 0.681...) and
(0.80, 0.717...). Write the equation of this line, solve it for x in
terms of y, and then substitute 0.7 for y:

   x = 1.39988(y - 0.145879)

Replacing y by 0.7, we find

   x = 0.775704, 

In fact, arcsin(0.7) = 0.775397, so by this interpolation we have 
achieved arcsin(0.7) to three significant digits, or within an 
accuracy of about 0.04%.

We could get closer: determine that

   sin(0.77) = 0.696135238627
   sin(0.78) = 0.703279419200

and continue interpolating until you achieve the accuracy you desire.

- Doctor Jerry, The Math Forum   
Associated Topics:
High School Trigonometry

Search the Dr. Math Library:

Find items containing (put spaces between keywords):
Click only once for faster results:

[ Choose "whole words" when searching for a word like age.]

all keywords, in any order at least one, that exact phrase
parts of words whole words

Submit your own question to Dr. Math

[Privacy Policy] [Terms of Use]

Math Forum Home || Math Library || Quick Reference || Math Forum Search

Ask Dr. MathTM
© 1994- The Math Forum at NCTM. All rights reserved.