Beispiel #1
0
 /// <summary>Trigonometric Hyperbolic Cosine (Cosinus hyperbolicus) of this <c>Complex</c>.</summary>
 public Complex Cosh()
 {
     if (IsReal)
     {
         return(new Complex(Trig.Cosh(real), 0d));
     }
     return(new Complex(Trig.Cosh(real) * Trig.Cos(imag), Trig.Sinh(real) * Trig.Sin(imag)));
 }
Beispiel #2
0
        /// <summary>Trigonometric Hyperbolic Cotangent (Cotangens hyperbolicus) of this <c>Complex</c>.</summary>
        public Complex Coth()
        {
            if (IsReal)
            {
                return(new Complex(Trig.Coth(real), 0d));
            }
            double sini  = Trig.Sin(imag);
            double sinhr = Trig.Sinh(real);
            double denom = sini * sini + sinhr * sinhr;

            return(new Complex(sinhr * Trig.Cosh(real) / denom, sini * Trig.Cos(imag) / denom));
        }
Beispiel #3
0
        /// <summary>Trigonometric Hyperbolic Tangent (Tangens hyperbolicus) of this <c>Complex</c>.</summary>
        public Complex Tanh()
        {
            if (IsReal)
            {
                return(new Complex(Trig.Tanh(real), 0d));
            }
            double cosi  = Trig.Cos(imag);
            double sinhr = Trig.Sinh(real);
            double denom = cosi * cosi + sinhr * sinhr;

            return(new Complex(Trig.Cosh(real) * sinhr / denom, cosi * Trig.Sin(imag) / denom));
        }
Beispiel #4
0
        /// <summary>Trigonometric Cosecant (Cosekans) of this <c>Complex</c>.</summary>
        public Complex Csc()
        {
            if (IsReal)
            {
                return(new Complex(Trig.Csc(real), 0d));
            }
            double sinr  = Trig.Sin(real);
            double sinhi = Trig.Sinh(imag);
            double denom = sinr * sinr + sinhi * sinhi;

            return(new Complex(sinr * Trig.Cosh(imag) / denom, -Trig.Cos(real) * sinhi / denom));
        }
Beispiel #5
0
        /// <summary>Trigonometric Secant (Sekans) of this <c>Complex</c>.</summary>
        public Complex Sec()
        {
            if (IsReal)
            {
                return(new Complex(Trig.Sec(real), 0d));
            }
            double cosr  = Trig.Cos(real);
            double sinhi = Trig.Sinh(imag);
            double denom = cosr * cosr + sinhi * sinhi;

            return(new Complex(cosr * Trig.Cosh(imag) / denom, Trig.Sin(real) * sinhi / denom));
        }
Beispiel #6
0
 public static Complex Sinh(Complex value)
 {
     return(Trig.Sinh(value));
 }