Method: Stick::Quaternion#cos

Defined in:
lib/stick/quaternion.rb

#cosObject



499
500
501
502
503
504
# File 'lib/stick/quaternion.rb', line 499

def cos
  # cos(r+uv)=cos r cosh v - u sin r sinh v
  vec=self.vector; v=vec.abs; if v==0; return Quaternion(Math::cos(@re)); end
  u = vec/v; e=Math::exp(v); er=1/e; c=e+er; s=e-er
  (Math::cos(@re)*c-u*Math::sin(@re)*s)/2
end