Jump to content

Exact Trigonometric Values

From Wikiversity

Exact trigonometric values are those values of and that can be calculated exactly.

The calculations of these values vary from very simple to somewhat complicated.

Imagine a right triangle in which base and hypotenuse are equal and height is Then

x in radians x in degrees

Imagine a right triangle in which height and hypotenuse are equal and base is Then

x in radians x in degrees

From the right isosceles triangle:

x in radians x in degrees

From the equilateral triangle:

x in radians x in degrees

For derivation of see Sine of 18°.

x in radians x in degrees

The derivation of also produces the value which is in fact therefore:

x in radians x in degrees

Derivation of cos 18°

[edit | edit source]

Let Then:

Therefore:

Simplify and result is:

or:

where or

Derivation of cos 36°

[edit | edit source]

Let

Then and

Therefore:

or

This cubic equation contains the root

Remove factor and remaining quadratic is:

Solutions of this quadratic are:

Calculation of tan 18°

[edit | edit source]

Values for 18° and 36°

[edit | edit source]
x in radians x in degrees

Calculation of cos 9°

[edit | edit source]

Using half-angle formula

[edit | edit source]

Using difference formula

[edit | edit source]
Radians Degrees sin cos
π/5 36°
π/4 45°

Although the two calculated values of are expressed differently, it can be shown that the two values and are equal.


By using similar techniques many exact values can be calculated.

Exact Values for Common Angles

[edit | edit source]
Radians Degrees sin cos tan
π/60
π/30
π/20
π/15 12°
π/12 15°
π/10 18°
7π/60 21°
π/8 22.5°
2π/15 24°
3π/20 27°
π/6 30°
11π/60 33°
π/5 36°
13π/60 39°
7π/30 42°
π/4 45°

Other Expressions of Exact Values

[edit | edit source]

Depending on how the value is calculated, exact trigonometric values can be expressed in different ways. For example:

This value of contains calculation of 2 square roots. Value shown in table above contains calculation of 3 square roots.

This value of contains calculation of 3 square roots. Value shown in table above contains calculation of 4 square roots.

Create a Dictionary

[edit | edit source]

If you would like to create a dictionary containing the above values, the following python code has been tested on a Mac:

# python code
# Constants.py

import decimal

D = decimal.Decimal

decimal.getcontext().prec = 50

L1 = []

L1 += [('Angle in Degrees', ('Sine', 'Cosine', 'Tangent'))]

L1 += [(0, (0, 1, 0))]

r5 = D(5).sqrt()
r3 = D(3).sqrt()
r2 = D(2).sqrt()
root1 = (10 - 2*r5).sqrt()
sval = (8 - r3*(r5+1) - root1).sqrt()
cval = (8 + r3*(r5+1) + root1).sqrt()

L1 += [(3, (
    sval/4,
    cval/4,
    sval/cval )
)]

L1 += [(6, (
    ((30 - 6*r5).sqrt() - r5 - 1) / 8,
    ( r3*(r5 + 1) + root1 ) / 8,
    ( (r5+1)*(5 - 2*r5).sqrt() + r3*(1 - r5) ) / 2 )
)]

v = (10 + 2*r5).sqrt()
sval = 4 - v
cval = 4 + v
r = (5 - 2*r5).sqrt()
L1 += [(
    9, (
    (sval/8).sqrt(),
    (cval/8).sqrt(),
    ( 11 + 4*r5 - (3+r5)*v ).sqrt() )
#    (+ 1 + r5 - r*(r5 + 2)) )
)]

v = (30-6*r5).sqrt()
L1 += [(
    12, (
    (7 - r5 - v).sqrt() / 4,
    (9 + r5 + v).sqrt() / 4,
    (92 - 40*r5 + (6*r5-14)*v ).sqrt() / 2 )
)]

L1 += [(
    15, (
    (r2*r3 - r2)/4,
    (r2*r3 + r2)/4,
    2 - r3 )
)]

L1 += [(
    18, (
    (r5-1)/4,
    ((10 + 2*r5).sqrt())/4,
    (25 - 10*r5).sqrt()/5 )
)]

v = (7 + (30 - 6*r5).sqrt() - r5).sqrt()
sval = ((4 - v)/8).sqrt()
cval = ((4 + v)/8).sqrt()
L1 += [(
    21, (
    sval,
    cval,
    sval/cval )
)]

L1 += [(
    22.5, (
    (2 - r2).sqrt()/2,
    (2 + r2).sqrt()/2,
    r2 - 1 )
)]

L1 += [(
    24, (
    ( r3*r5 + r3 - root1 ) / 8,
    (1 + r5 + (30 - 6*r5).sqrt()) / 8,
    ( (3*r5+7)*(5-2*r5).sqrt() - r3*(r5+3) ) / 2 )
)]

v = root1
L1 += [(
    27, (
    ((4 - v)/8).sqrt(),
    ((4 + v)/8).sqrt(),
    ( 11 - 4*r5 + (r5-3)*v ).sqrt() )
)]

L1 += [(
    30, (
    D('0.5'),
    r3/2,
    r3/3 )
)]

sval = 8 - r3*r5 - r3 + root1
sval = sval.sqrt()
cval = 8 + r3*r5 + r3 - root1
cval = cval.sqrt()

L1 += [(
    33, (
    sval/4,
    cval/4,
    sval/cval )
)]

L1 += [(
    36, (
    (10-2*r5).sqrt()/4,
    (1+r5)/4,
    (5 - 2*r5).sqrt() )
)]


v1 = (30 - 6*r5).sqrt()
v2 = 2*(7 - r5 - v1).sqrt()
sval = (8 - v2).sqrt()
cval = (8 + v2).sqrt()
L1 += [(
    39, (
    sval/4,
    cval/4,
    sval/cval )
)]


v = (30 - 6*r5).sqrt()
sval = (9 - v + r5).sqrt()/4
cval = (7 + v - r5).sqrt()/4
L1 += [(
    42, (
    sval,
    cval,
    sval/cval )
)]

L1 += [(
    45, (
    r2/2,
    r2/2,
    D(1) )
)]

dict1 = dict(L1)

Check the Dictionary

[edit | edit source]

The following python code is used to check the contents of the dictionary and to verify that there are no obvious errors.

almostZero = D('1e-' + str(decimal.getcontext().prec - 2));

print ()
print ('Checking each entry.')
# Basic check of each entry.
for angle in dict1 :
    if isinstance (angle, str) : continue
    sine, cosine, tangent = dict1[angle]
    print ()
    print (angle)
    print ('   ', sine)
    print ('   ', cosine)
    print ('   ', tangent)
    diff = abs(1 -(sine*sine + cosine*cosine))
    if diff > almostZero :
        print ('error1:', diff)
    diff = abs (sine/cosine - tangent)
    if diff > almostZero :
        print ('error2:', diff)

def getData (angle) :
# sin,cos = getData(angle)
    if 135 >= angle >= 0 : pass
    else :
        print ('error3: angle =', angle)

    if angle > 90 :
        s1,c1,t1 = dict1[angle-90]
        return (c1, -s1)

    if angle > 45 :
        s1,c1,t1 = dict1[90-angle]
        return (c1,s1)

    s1,c1,t1 = dict1[angle]
    return (s1,c1)
    
print ()
print ('Checking doubles and triples.')
for angle1 in dict1 :
    if isinstance (angle1, str) : continue
    s1,c1,t1 = dict1[angle1]

    angle2 = 2*angle1
    s2,c2 = getData(angle2)
    s2_ = 2*s1*c1
    diff = abs (s2_ - s2)
    if diff > almostZero :
        print ('error4:', diff)

    angle3 = 3*angle1
    s3,c3 = getData(angle3)
    c3_ = 4*c1*c1*c1 - 3*c1
    diff = abs (c3_ - c3)
    if diff > almostZero :
        print ('error5:', diff)

Links to related Topics

[edit | edit source]

Angle sum and difference identities

Angle sum identities

Double-angle formulae

Half-angle formulae

Simple algebraic values

Common angles

Using fifth roots of unity to calculate Cosine of 72°.

Calculating π

Testing taylor series for