"Testing tanh"

clear

check(tanh(0) == 0)
check(tanh(-x) == -tanh(x))
check(tanh(arctanh(x)) == x)

-- compare intrinsic

for(x,-12,12,
  d = float(tanh(x/12)) - tanh(float(x/12)),
  check(abs(d) < 1.0 10^(-6))
)

-- complex arg

for(x,-3,3,for(y,-3,3,
  z = 1/3.0 (x + i y),
  test(cosh(z),do(
    w = sinh(z) / cosh(z),
    check(abs(tanh(z) - w) < 1.0 10^(-6))
  ))
))
