#! ==================================================================
# test arccos
# The inverse of cos so that, if y = cos(x), then x = arccos(y).
#
# Python input to sin and cos is radians
# ===================================================================
import numpy as np
# -------------------------------------------------------------------
# ---- know triangle 3,4,5 for testing
# ---- angles are 90 degrees, 36.87 degrees and 53.13 degrees
#
# +
# /|
# / |
# 5 / | 4
# / |
# / |
# +-----+
# 3
# -------------------------------------------------------------------
# ---- angle in lower left corner of the triangle
# ---- cos = adjacent over hypotenuse
ang1 = 53.13 # degrees
rad1 = np.deg2rad(ang1) # radians
ang2 = 36.87 # degrees
rad2 = np.deg2rad(ang2) # radians
print(f'ang1 = {ang1:.3f} r1 = {rad1:.3f}')
print(f'ang2 = {ang2:.3f} r2 = {rad2:.3f}')
print(f'3/5 = {3/5:10.3f} (adjacent over hypotenuse)')
cos = np.cos(rad1)
print(f'cos(rad1) = {cos:10.3f} (adjacent over hypotenuse)')
a = np.arccos(cos)
print(f'arccos(cos) = {a:10.3f} (angle in radians)')
aa = np.rad2deg(a)
print(f'arccos(cos) = {aa:10.3f} (angle in degrees)')