/// <summary>Trigonometric Hyperbolic Cosine (cosh, Cosinus hyperbolicus) of this <c>Complex</c>.</summary> public Complex HyperbolicCosine() { if (IsReal) { return(new Complex(Trig.HyperbolicCosine(real), 0d)); } return(new Complex(Trig.HyperbolicCosine(real) * Trig.Cosine(imag), Trig.HyperbolicSine(real) * Trig.Sine(imag))); }
/// <summary>Trigonometric Hyperbolic Cotangent (coth, Cotangens hyperbolicus) of this <c>Complex</c>.</summary> public Complex HyperbolicCotangent() { if (IsReal) { return(new Complex(Trig.HyperbolicCotangent(real), 0d)); } double sini = Trig.Sine(imag); double sinhr = Trig.HyperbolicSine(real); double denom = sini * sini + sinhr * sinhr; return(new Complex(sinhr * Trig.HyperbolicCosine(real) / denom, sini * Trig.Cosine(imag) / denom)); }
/// <summary>Trigonometric Hyperbolic Tangent (tanh, Tangens hyperbolicus) of this <c>Complex</c>.</summary> public Complex HyperbolicTangent() { if (IsReal) { return(new Complex(Trig.HyperbolicTangent(real), 0d)); } double cosi = Trig.Cosine(imag); double sinhr = Trig.HyperbolicSine(real); double denom = cosi * cosi + sinhr * sinhr; return(new Complex(Trig.HyperbolicCosine(real) * sinhr / denom, cosi * Trig.Sine(imag) / denom)); }
/// <summary>Trigonometric Cosecant (csc, Cosekans) of this <c>Complex</c>.</summary> public Complex Cosecant() { if (IsReal) { return(new Complex(Trig.Cosecant(real), 0d)); } double sinr = Trig.Sine(real); double sinhi = Trig.HyperbolicSine(imag); double denom = sinr * sinr + sinhi * sinhi; return(new Complex(sinr * Trig.HyperbolicCosine(imag) / denom, -Trig.Cosine(real) * sinhi / denom)); }
/// <summary>Trigonometric Secant (sec, Sekans) of this <c>Complex</c>.</summary> public Complex Secant() { if (IsReal) { return(new Complex(Trig.Secant(real), 0d)); } double cosr = Trig.Cosine(real); double sinhi = Trig.HyperbolicSine(imag); double denom = cosr * cosr + sinhi * sinhi; return(new Complex(cosr * Trig.HyperbolicCosine(imag) / denom, Trig.Sine(real) * sinhi / denom)); }