Manually calculate Arccosine and Arctangent

  • Context: High School 
  • Thread starter Thread starter Philosophaie
  • Start date Start date
  • Tags Tags
    Arctangent
Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
5 replies · 3K views
Philosophaie
Messages
456
Reaction score
0
How do you calculate Arccosine and Arctangent if you do not have a scientific calculator.
[tex]\theta = atan(\frac{y}{x})[/tex]
[tex]\theta2 = acos(\frac{z}{\sqrt{x^2+y^2+z^2}})[/tex]
 
Mathematics news on Phys.org
Or, if you recognize the value inside the acos, for example, as the cosine value to some specific angle, then that specific angle is your desired answer.
 
Essentially, what you want is a finite algorithm of a) minimal length and retaining b) optimal accuracy for your answer.
These two competing issues generate in general, a tricky balancing act, although much research has uncovered a lot of techniques that justifiably have become "favoured".
 
Last edited:
Though it is nearly 8 weeks late, if you need only about 4 digits of accuracy, you could use [itex]tan^{-1}\approx \frac{x(240+115x^{2})}{240+195x^{2}+17x^{4}}, x\in [-1,1][/itex] and for x outside that range, use the identity [itex]tan^{-1}(x)=\frac{\pi}{2}-tan^{-1}(\frac{1}{x})[/itex]. It might be a pain by hand, but it is doable.

Using Chebyshev polynomials or Taylor Series will take you a looong time :P

So, as an example, take x=.1
[itex]tan^{-1}(.1)\approx \frac{.1(240+115*.01)}{240+195*.01+17*.0001}[/itex]
[itex]= \frac{.1(241.15)}{241.9517}[/itex]
[itex]= \frac{24.115}{241.9517}[/itex]
[itex]\approx .0996686529[/itex]

Compare to my calculator which returns .0996686525 ;)

See this post for the derivation of that formula.

For arccos, you can use the identity:
[itex]cos^{-1}(x)=2tan^{-1}\left(\sqrt{\frac{1-x}{1+x}}\right), x\in (-1,1][/itex]

To compute square roots by hand, there are a number of methods, but the method I am most familiar with is in binary, so I don't know how useful that will be :/ (Note that the square root will be squared in two places plugging it into the arctangent approximation, so you don't technically need to compute the square root, there.)