Introductions to Coth

Introduction to the hyperbolic functions

General

The six well-known hyperbolic functions are the hyperbolic sine sinh(z), hyperbolic cosine cosh(z), hyperbolic tangent tanh(z), hyperbolic cotangent coth(z), hyperbolic cosecant csch(z), and hyperbolic secant sech(z). They are among the most used elementary functions. The hyperbolic functions share many common properties and they have many properties and formulas that are similar to those of the trigonometric functions.

Definitions of the hyperbolic functions

All hyperbolic functions can be defined as simple rational functions of the exponential function of z:

The functions tanh(z), coth(z), csch(z), and sech(z) can also be defined through the functions sinh(z) and cosh(z) using the following formulas:

A quick look at the hyperbolic functions

Here is a quick look at the graphics of the six hyperbolic functions along the real axis.

Connections within the group of hyperbolic functions and with other function groups

Representations through more general functions

The hyperbolic functions are particular cases of more general functions. Among these more general functions, four  classes of special functions are of special relevance: Bessel, Jacobi, Mathieu, and hypergeometric functions.

For example, sinh(z) and cosh(z) have the following representations through Bessel, Mathieu, and hypergeometric functions:

All hyperbolic functions can be represented as degenerate cases of the corresponding doubly periodic Jacobi elliptic functions when their second parameter is equal to 0 or 1:

Representations through related equivalent functions

Each of the six hyperbolic functions can be represented through the corresponding trigonometric function:

Relations to inverse functions

Each of the six hyperbolic functions is connected with a corresponding inverse hyperbolic function by two formulas. One direction can be expressed through a simple formula, but the other direction is much more complicated because of the multivalued nature of the inverse function:

Representations through other hyperbolic functions

Each of the six hyperbolic functions can be represented through any other function as a rational function of that function with a linear argument. For example, the hyperbolic sine can be representative as a group-defining function because the other five functions can be expressed as:

All six hyperbolic functions can be transformed into any other function of the group of hyperbolic functions if the argument z is replaced by p π i/2+q z with (q^2)==1∧p∈ℤ:

The best-known properties and formulas for hyperbolic functions

Real values for real arguments

For real values of argument z, the values of all the hyperbolic functions are real (or infinity).

In the points z=2π n i/m/;n∈ℤ∧m∈ℤ, the values of the hyperbolic functions are algebraic. In several cases, they can even be rational numbers, 1, or i (e.g. sinh(π i/2)=i, sech(0)=1, or cosh(π i/3)=1/2). They can be expressed using only square roots if n∈ℤ and m is a product of a power of 2 and distinct Fermat primes {3, 5, 17, 257, …}.

Simple values at zero

All hyperbolic functions has rather simple values for arguments z==0 and z==π i/2:

Analyticity

All hyperbolic functions are defined for all complex values of z, and they are analytical functions of z over the whole complex z-plane and do not have branch cuts or branch points. The two functions sinh(z) and cosh(z) are entire functions with an essential singular point at z = (OverTilde[∞]). All other hyperbolic functions are meromorphic functions with simple poles at points z==π k i/;k∈ℤ (for csch(z) and coth(z)) and at points z==π i/2+π k i/;k∈ℤ (for sech(z) and tanh(z)).

Periodicity

All hyperbolic functions are periodic functions with a real period (2π i or π i):

Parity and symmetry

All hyperbolic functions have parity (either odd or even) and mirror symmetry:

Simple representations of derivatives

The derivatives of all hyperbolic functions have simple representations that can be expressed through other hyperbolic functions:

Simple differential equations

The solutions of the simplest second-order linear ordinary differential equation with constant coefficients can be represented through sinh(z) and cosh(z). The other hyperbolic functions satisfy first-order nonlinear differential equations:

All six hyperbolic functions satisfy first-order nonlinear differential equations:

Applications of hyperbolic functions

Trigonometric functions are intimately related to triangle geometry. Functions like sine and cosine are often introduced as edge lengths of right-angled triangles. Hyperbolic functions occur in the theory of triangles in hyperbolic spaces.

Lobachevsky (1829) and J. Bolyai (1832) independently recognized that Euclid's fifth postulate—saying that for a given line and a point not on the line, there is exactly one line parallel to the first—might be changed and still be a consistent geometry. In the hyperbolic geometry it is allowable for more than one line to be parallel to the first (meaning that the parallel lines will never meet the first, however far they are extended). Translated into triangles, this means that the sum of the three angles is always less than π.

A particularly nice representation of the hyperbolic geometry can be realized in the unit disk of complex numbers (the Poincaré disk model). In this model, points are complex numbers in the unit disk, and the lines are either arcs of circles that meet the boundary of the unit circle orthogonal or diameters of the unit circle.

The distance d between two points (meaning complex numbers) A and B in the Poincaré disk is:

The attractive feature of the Poincaré disk model is that the hyperbolic angles agree with the Euclidean angles. Formally, the angle α at a point A of two hyperbolic lines (OverBar[A B]) and (OverBar[A C]) is described by the formula:

In the following, the values of the three angles of an hyperbolic triangle at the vertices A, B, and C are denoted through α, β, and γ. The hyperbolic length of the three edges opposite to the angles are denoted a, b, and c.

The cosine rule and the second cosine rule for hyperbolic triangles are:

The sine rule for hyperbolic triangles is:

For a right-angle triangle, the hyperbolic version of the Pythagorean theorem follows from the preceding formulas (the right angle is taken at vertex A):

Using the series expansion cosh(x)≈1+(x^2)/2 at small scales the hyperbolic geometry is approximated by the familar Euclidean geometry. The cosine formulas and the sine formulas for hyperbolic triangles with a right angle at vertex A become:

The inscribed circle has the radius:

The circumscribed circle has the radius:

Other applications

As rational functions of the exponential function, the hyperbolic functions appear virtually everywhere in quantitative sciences. It is impossible to list their numerous applications in teaching, science, engineering, and art.

Introduction to the Hyperbolic Cotangent Function

Defining the hyperbolic cotangent function

The hyperbolic cotangent function is an old mathematical function. It was first used in the articles by L'Abbe Sauri (1774).

This function is easily defined as the ratio of the hyperbolic sine and cosine functions (or expanded, as the ratio of the half-sum and half-difference of two exponential functions in the points z and -z):

This function can also be defined as reciprocal to the hyperbolic tangent function:

After comparison with the famous Euler formulas for the cosine and sine functions, cos(z)==(((e^(i z))+(e^(-i z)))/2) and sin(z)==(((e^(i z))-(e^(-i z)))/(2 i)), it is easy to derive the following representation of the hyperbolic cotangent through the circular cotangent:

This formula allows for the derivation of all properties and formulas for the hyperbolic cotangent from the corresponding properties and formulas for circular cotangent function.

A quick look at the hyperbolic cotangent function

Here is a graphic of the hyperbolic cotangent function f(x)=coth(x) for real values of its argument x.

Representation through more general functions

The hyperbolic cotangent function coth(z) can be represented using more general mathematical functions. As the ratio of the hyperbolic cosine and sine functions that are particular cases of the generalized hypergeometric, Bessel, Struve, and Mathieu functions, the hyperbolic cotangent function can also be represented as ratios of those special functions. But these representations are not very useful. It is more useful to write the hyperbolic cotangent function as particular cases of one special function. This can be done using doubly periodic Jacobi elliptic functions that degenerate into the hyperbolic cotangent function when their second parameter is equal to 0 or 1:

Definition of the hyperbolic cotangent for a complex argument

In the complex z-plane, the function coth(z) is defined by the same formula as for real values.

In the points z==π k i/;k∈ℤ, where sinh(z) has zeros, the denominator of the last formula equals zero and coth(z) has singularities (poles of the first order).

Here are two graphics showing the real and imaginary parts of the hyperbolic cotangent function over the complex plane:

The best-known properties and formulas for the hyperbolic cotangent function

Values in points

The values of the hyperbolic cotangent for special values of its argument can be easily derived from the corresponding values of the circular cotangent function in the special points of the circle:

The values at infinity can be expressed by the following formulas:

General characteristics

For real values of argument z, the values of coth(z) are real.

In the points z=π n i/m/;n∈ℤ∧m∈ℤ, the values of coth(z) are algebraic. In several cases, they can be -i, 0, or i:

The values of coth(((n π i)/m)) can be expressed using only square roots if n∈ℤ and m is a product of a power of 2 and distinct Fermat primes {3, 5, 17, 257, …}.

The function coth(z) is an analytical function of z that is defined over the whole complex z-plane and does not have branch cuts and branch points. It has an infinite set of singular points:

(a) z==π k i/;k∈ℤ are the simple poles with residues 1.
(b) z== (OverTilde[∞]) is an essential singular point.

It is a periodic function with period π i:

The function coth(z) is an odd function with mirror symmetry:

Differentiation

The first derivative of coth(z) has simple representations using either the sinh(z) function or the csch(z) function:

The n(^th) derivative of coth(z) has much more complicated representations than symbolic n(^th) derivatives for sinh(z) and cosh(z):

where (Subscript[δ, n]) is the Kronecker delta symbol: (Subscript[δ, 0])==1 and (Subscript[δ, n])==0/;n≠0.

Ordinary differential equation

The function coth(z) satisfies the following first-order nonlinear differential equation:

Series representation

The function coth(z) has a simple Loran series expansion that converges for all finite values z with 0<\[LeftBracketingBar]z\[RightBracketingBar]<π:

where the (Subscript[B, 2 k]) are the Bernoulli numbers.

Integral representation

The function coth(z) has a well-known integral representation through the following definite integral along the positive part of the real axis:

Continued fraction representations

The function coth(z) has the following continued fraction representation:

Indefinite integration

Indefinite integrals of expressions involving the hyperbolic cotangent function can sometimes be expressed using elementary functions. However, special functions are frequently needed to express the results even when the integrands have a simple form (if they can be evaluated in closed form). Here are some examples:

Definite integration

Definite integrals that contain the hyperbolic cotangent function are sometimes simple:

Some special functions can be used to evaluate more complicated definite integrals. For example, the polylogarithm function is needed to express the following integral:

Finite summation

The following finite sum that contains the hyperbolic cotangent function can be expressed using the hyperbolic cotangent functions:

Addition formulas

The hyperbolic cotangent of a sum can be represented by the rule: "the hyperbolic cotangent of a sum is equal to the product of the hyperbolic cotangents plus one divided by the sum of the hyperbolic cotangents." A similar rule is valid for the hyperbolic cotangent of the difference:

Multiple arguments

In the case of multiple arguments 2z, 3z, …, the function coth(n z) can be represented as the ratio of the finite sums containing powers of hyperbolic cotangents:

Half-angle formulas

The hyperbolic cotangent of a half-angle can be represented using two hyperbolic functions by the following simple formulas:

The hyperbolic sine function in the last formula can be replaced by a hyperbolic cosine function. But it leads to a more complicated representation that is valid in a horizontal strip:

The last restrictions can be removed by modifying the last identity (now the identity is valid  for all complex z):

Sums of two direct functions

The sum of two hyperbolic cotangent functions can be described by rule: "the sum of the hyperbolic cotangents is equal to the hyperbolic sine of the sum multiplied by the hyperbolic cosecants." A similar rule is valid for the difference of two hyperbolic cotangents:

Products involving the direct function

The product of two hyperbolic cotangents and the product of the hyperbolic cotangent and tangent have the following representations:

Inequalities

The most famous inequality for the hyperbolic cotangent function is the following:

Relations with its inverse function

There are simple relations between the function coth(z) and its inverse function (coth^(-1))(z):

The second formula is valid at least in the horizontal strip -(π/2)<Im(z)<(π/2). Outside of this strip, a much more complicated relation (containing the unit step, real part, and the floor functions) holds:

Representations through other hyperbolic functions

The hyperbolic cotangent and tangent functions are connected by a very simple formula that contains the linear function in the argument:

The hyperbolic cotangent function can also be represented through other hyperbolic functions by the following formulas:

Representations through trigonometric functions

The hyperbolic cotangent function has similar representations using related trigonometric functions by the following formulas:

Applications

The hyperbolic cotangent function is used throughout mathematics, the exact sciences, and engineering.

Introduction to the Hyperbolic Functions in Mathematica

Overview

The following shows how the six hyperbolic functions are realized in Mathematica. Examples of evaluating Mathematica functions applied to various numeric and exact expressions that involve the hyperbolic functions or return them are shown. These involve numeric and symbolic calculations and plots.

Notations

Mathematica forms of notations

All six hyperbolic functions are represented as built-in functions in Mathematica. Following Mathematica's general naming convention, the StandardForm function names are simply capitalized versions of the traditional mathematics names. Here is a list hypFunctions of the six hyperbolic functions in StandardForm.

hypFunctions={Sinh[z],Cosh[z],Tanh[z],Coth[z],Sech[z],Cosh[z]}

Here is a list hypFunctions of the six trigonometric functions in TraditionalForm.

hypFunctions//TraditionalForm

Additional forms of notations

Mathematica also knows the most popular forms of notations for the hyperbolic functions that are used in other programming languages. Here are three examples: CForm, TeXForm, and FortranForm.

hypFunctions/.{z->2π z}//CForm

hypFunctions/.{z->2π z}//TeXForm

hypFunctions/.{z->2π z}//FortranForm

Automatic evaluations and transformations

Evaluation for exact, machine-number, and high-precision arguments

For a simple exact argument, Mathematica returns an exact result. For instance, for the argument π i/6, the Sinh function evaluates to i/2.

Sinh[((π I)/6)]

{Sinh[z],Cosh[z],Tanh[z],Coth[z],Csch[z],Sech[z]}/.z->((π I)/6)

For a generic machine-number argument (a numerical argument with a decimal point and not too many digits), a machine number is returned.

Cosh[3.]

{Sinh[z],Cosh[z],Tanh[z],Coth[z],Csch[z],Sech[z]}/.z->2.

The next inputs calculate 100-digit approximations of the six hyperbolic functions at z=1.

N[Tanh[1],40]

Coth[1]//N[#,50]&

N[{Sinh[z],Cosh[z],Tanh[z],Coth[z],Csch[z],Sech[z]}/.z->1,100]

Within a second, it is possible to calculate thousands of digits for the hyperbolic functions. The next input calculates 10000 digits for sinh(1), cosh(1), tanh(1), coth(1), sech(1), and csch(1) and analyzes the frequency of the occurrence of the digit k in the resulting decimal number.

Map[Function[w, {First[#],Length[#]}&/@Split[Sort[First[RealDigits[w]]]]], N[{Sinh[z],Cosh[z],Tanh[z],Coth[z],Csch[z],Sech[z]}/.z->1,10000]]

Here are 50-digit approximations to the six hyperbolic functions at the complex argument z=3+5i.

N[Csch[3+5I],100]

N[{Sinh[z],Cosh[z],Tanh[z],Coth[z],Csch[z],Sech[z]}/.z->3+5I,50]

Mathematica always evaluates mathematical functions with machine precision, if the arguments are machine numbers. In this case, only six digits after the decimal point are shown in the results. The remaining digits are suppressed, but can be displayed using the function InputForm.

{Sinh[2.],N[Sinh[2]],N[Sinh[2],16],N[Sinh[2],5],N[Sinh[2],20]}

%//InputForm

Precision[%%]

Simplification of the argument

Mathematica uses symmetries and periodicities of all the hyperbolic functions to simplify expressions. Here are some examples.

Sinh[-z]

Sinh[z+π I]

Sinh[z+2π I]

Sinh[z+34π I]

{Sinh[-z],Cosh[-z],Tanh[-z],Coth[-z],Csch[-z],Sech[-z]}

{Sinh[z+π I],Cosh[z+π I],Tanh[z+π I],Coth[z+π I],Csch[z+π I],Sech[z+π I]}

{Sinh[z+2π I],Cosh[z+2π I],Tanh[z+2π I],Coth[z+2π I],Csch[z+2π I],Sech[z+2π I]}

{Sinh[z+342π I],Cosh[z+342π I],Tanh[z+342π I],Coth[z+342π I],Csch[z+342π I],Sech[z+342π I]}

Mathematica automatically simplifies the composition of the direct and the inverse hyperbolic functions into the argument.

{Sinh[ArcSinh[z]],Cosh[ArcCosh[z]],Tanh[ArcTanh[z]],Coth[ArcCoth[z]],Csch[ArcCsch[z]],Sech[ArcSech[z]]}

Mathematica also automatically simplifies the composition of the direct and any of the inverse hyperbolic functions into algebraic functions of the argument.

{Sinh[ArcSinh[z]],Sinh[ArcCosh[z]],Sinh[ArcTanh[z]], Sinh[ArcCoth[z]],Sinh[ArcCsch[z]], Sinh[ArcSech[z]]}

{Cosh[ArcSinh[z]],Cosh[ArcCosh[z]],Cosh[ArcTanh[z]], Cosh[ArcCoth[z]],Cosh[ArcCsch[z]], Cosh[ArcSech[z]]}

{Tanh[ArcSinh[z]],Tanh[ArcCosh[z]],Tanh[ArcTanh[z]], Tanh[ArcCoth[z]],Tanh[ArcCsch[z]], Tanh[ArcSech[z]]}

{Coth[ArcSinh[z]],Coth[ArcCosh[z]],Coth[ArcTanh[z]], Coth[ArcCoth[z]],Coth[ArcCsch[z]], Coth[ArcSech[z]]}

{Csch[ArcSinh[z]],Csch[ArcCosh[z]],Csch[ArcTanh[z]], Csch[ArcCoth[z]],Csch[ArcCsch[z]], Csch[ArcSech[z]]}

{Sech[ArcSinh[z]],Sech[ArcCosh[z]],Sech[ArcTanh[z]], Sech[ArcCoth[z]],Sech[ArcCsch[z]], Sech[ArcSech[z]]}

In cases where the argument has the structure π k/2+z or π k/2-z, e π k/2+i z or π k/2-i z with integer k, trigonometric functions can be automatically transformed into other trigonometric or hyperbolic functions. Here are some examples.

Tanh[((π I)/2)-z]

Csch[I z]

{Sinh[((π I)/2)-z],Cosh[((π I)/2)-z],Tanh[((π I)/2)-z],Coth[((π I)/2)-z],Csch[((π I)/2)-z],Sech[((π I)/2)-z]}

{Sinh[I z],Cosh[I z],Tanh[I z],Coth[I z],Csch[I z],Sech[I z]}

Simplification of simple expressions containing hyperbolic functions

Sometimes simple arithmetic operations containing hyperbolic functions can automatically produce other hyperbolic functions.

1/Sech[z]

{1/Sinh[z],1/Cosh[z],1/Tanh[z],1/Coth[z],1/Csch[z],1/Sech[z],Sinh[z]/Cosh[z],Cosh[z]/Sinh[z],Sinh[z]/Sinh[π I/2-z],Cosh[z]/Sinh[z]^2}

Hyperbolic functions as special cases of more general functions

All hyperbolic functions can be treated as particular cases of some more advanced special functions. For example, sinh(z) and cosh(z) are sometimes the results of auto-simplifications from Bessel, Mathieu, Jacobi, hypergeometric, and Meijer functions (for appropriate values of their parameters).

BesselI[(1/2),z]

MathieuC[1,0,I z]

JacobiSN[z,1]

{BesselI[(1/2),z],MathieuS[1,0,I z],JacobiSD[I z,0], HypergeometricPFQ[{},{(3/2)},((z^2)/4)],MeijerG[{{},{}},{{0},{-(1/2)}},-((z^2)/4)]}

{BesselI[-(1/2),z],MathieuC[1,0,I z],JacobiCD[I z,0], Hypergeometric0F1[(1/2),((z^2)/4)],MeijerG[{{},{}},{{0},{(1/2)}},-((z^2)/4)]}

{JacobiSC[I z,0],JacobiNS[z,1], JacobiNS[I z,0],JacobiDC[I z,0]}

Equivalence transformations carried out by specialized Mathematica functions

General remarks

Automatic evaluation and transformations can sometimes be inconvenient: They act in only one chosen direction and the result can be overly complicated. For example, the expression i cosh(z)/2 is generally preferable to the more complicated sinh(π i/2-z)cosh(π i/3). Mathematica provides automatic transformation of the second expression into the first one. But compact expressions like sinh(2z)cosh(π i/16) should not be automatically expanded into the more complicated expression sinh(z)cosh(z)(((2+(((2+(2^(1/2))))^(1/2))))^(1/2)). Mathematica has special functions that produce these types of expansions. Some of them are demonstrated in the next section.

TrigExpand

The function TrigExpand expands out trigonometric and hyperbolic functions. In more detail, it splits up sums and integer multiples that appear in the arguments of trigonometric and hyperbolic functions, and then expands out the products of the trigonometric and hyperbolic functions into sums of powers, using the trigonometric and hyperbolic identities where possible. Here are some examples.

TrigExpand[Sinh[x-y]]

Cosh[4z]//TrigExpand

TrigExpand[{{Sinh[x+y],Sinh[3 z]},
                        {Cosh[x+y],Cosh[3 z]},
                        {Tanh[x+y],Tanh[3 z]},
                        {Coth[x+y],Coth[3 z]},
                        {Csch[x+y],Csch[3 z]},
                        {Sech[x+y],Sech[3 z]}}]

TableForm[(#==TrigExpand[#])&/@Flatten[{{Sinh[x+y],Sinh[3 z]},{Cosh[x+y],Cosh[3 z]},{Tanh[x+y],Tanh[3 z]},{Coth[x+y],Coth[3 z]},{Csch[x+y],Csch[3 z]},{Sech[x+y],Sech[3 z]}}]]

TrigFactor

The command TrigFactor factors trigonometric and hyperbolic functions. In more detail, it splits up sums and integer multiples that appear in the arguments of trigonometric and hyperbolic functions, and then factors the resulting polynomials in the trigonometric and hyperbolic functions, using the corresponding identities where possible. Here are some examples.

TrigFactor[Sinh[x]+I Cosh[y]]

Tanh[x]-Coth[y]//TrigFactor

TrigFactor[{Sinh[x]+Sinh[y],
                       Cosh[x]+Cosh[y],
                       Tanh[x]+Tanh[y],
                       Coth[x]+Coth[y],
                       Csch[x]+Csch[y],
                       Sech[x]+Sech[y]}]

TrigReduce

The command TrigReduce rewrites products and powers of trigonometric and hyperbolic functions in terms of those functions with combined arguments. In more detail, it typically yields a linear expression involving trigonometric and hyperbolic functions with more complicated arguments. TrigReduce is approximately opposite to TrigExpand and  TrigFactor. Here are some examples.

TrigReduce[Sinh[z]^3]

Sinh[x]Cosh[y]//TrigReduce

TrigReduce[{Sinh[z]^2,Cosh[z]^2,Tanh[z]^2,Coth[z]^2,Csch[z]^2,Sech[z]^2}]

TrigReduce[TrigExpand[{{Sinh[x+y],Sinh[3 z],Sinh[x]Sinh[y]},
                                                {Cosh[x+y],Cosh[3 z],Cosh[x]Cosh[y]},
                                                {Tanh[x+y],Tanh[3 z],Tanh[x]Tanh[y]},
                                                {Coth[x+y],Coth[3 z],Coth[x]Coth[y]},
                                                {Csch[x+y],Csch[3 z],Csch[x]Csch[y]},
                                                {Sech[x+y],Sech[3 z],Sech[x]Sech[y]}}]]

TrigReduce[TrigFactor[{Sinh[x]+Sinh[y],Cosh[x]+Cosh[y],Tanh[x]+Tanh[y],Coth[x]+Coth[y],Csch[x]+Csch[y],Sech[x]+Sech[y]}]]

TrigToExp

The command TrigToExp converts direct and inverse trigonometric and hyperbolic functions to exponentials or logarithmic functions. It tries, where possible, to give results that do not involve explicit complex numbers. Here are some examples.

TrigToExp[Sinh[2z]]

Sinh[z]Tanh[2z]//TrigToExp

TrigToExp[{Sinh[z],Cosh[z],Tanh[z],Coth[z],Csch[z],Sech[z]}]

ExpToTrig

The command ExpToTrig converts exponentials to trigonometric or hyperbolic functions. It tries, where possible, to give results that do not involve explicit complex numbers. It is approximately opposite to TrigToExp. Here are some examples.

ExpToTrig[(E^(x β))]

(((E^(x α))-(E^(x β)))/((E^(x γ))+(E^(x δ))))//ExpToTrig

ExpToTrig[TrigToExp[{Sinh[z],Cosh[z],Tanh[z],Coth[z],Csch[z],Sech[z]}]]

ExpToTrig[{α (E^(-x β))+α (E^(x β)),α (E^(-x β))+γ (E^(I x β))}]

ComplexExpand

The function ComplexExpand expands expressions assuming that all the occurring variables are real. The value option TargetFunctions is a list of functions from the set {Re, Im, Abs, Arg, Conjugate, Sign}. ComplexExpand tries to give results in terms of the specified functions. Here are some examples.

ComplexExpand[Sinh[x+I y]Cosh[x-I y]]

Csch[x+I y]Sech[x-I y]//ComplexExpand

li1={Sinh[x+I y],Cosh[x+I y],Tanh[x+I y],Coth[x+I y],Csch[x+I y],Sech[x+I y]}

ComplexExpand[li1]

ComplexExpand[Re[#]&/@li1,TargetFunctions->{Re,Im}]

ComplexExpand[Im[#]&/@li1,TargetFunctions->{Re,Im}]

ComplexExpand[Abs[#]&/@li1,TargetFunctions->{Re,Im}]

%//Simplify[#,{x,y}∈Reals]&

ComplexExpand[Arg[#]&/@li1,TargetFunctions->{Re,Im}]

%//Simplify[#,{x,y}∈Reals]&

ComplexExpand[Conjugate[#]&/@li1,TargetFunctions->{Re,Im}]//Simplify

Simplify

The command Simplify performs a sequence of algebraic transformations on an expression, and returns the simplest form it finds. Here are two examples.

Simplify[Sinh[2z]/Sinh[z]]

Sinh[2z]/Cosh[z]//Simplify

Here is a large collection of hyperbolic identities. All are written as one large logical conjunction.

Simplify[#]&/@(((Cosh[z])^2)-((Sinh[z])^2)==1∧
((Sinh[z])^2)==((Cosh[2 z]-1)/2)∧((Cosh[z])^2)==((1+Cosh[2 z])/2)∧
((Tanh[z])^2)==((Cosh[2 z]-1)/(Cosh[2 z]+1))∧((Coth[z])^2)==((Cosh[2 z]+1)/(Cosh[2 z]-1))∧
Sinh[2z]==2Sinh[z]Cosh[z]∧Cosh[2z]==((Cosh[z])^2)+((Sinh[z])^2)==2((Cosh[z])^2)-1∧
Sinh[a+b]==Sinh[a]Cosh[b]+Cosh[a]Sinh[b]∧Sinh[a-b]==Sinh[a]Cosh[b]-Cosh[a]Sinh[b]∧
Cosh[a+b]==Cosh[a]Cosh[b]+Sinh[a]Sinh[b]∧Cosh[a-b]==Cosh[a]Cosh[b]-Sinh[a]Sinh[b]∧
Sinh[a]+Sinh[b]==2Sinh[((a+b)/2)]Cosh[((a-b)/2)]∧Sinh[a]-Sinh[b]==2Cosh[((a+b)/2)]Sinh[((a-b)/2)]∧
Cosh[a]+Cosh[b]==2Cosh[((a+b)/2)]Cosh[((a-b)/2)]∧Cosh[a]-Cosh[b]==-2Sinh[((a+b)/2)]Sinh[((b-a)/2)]∧
Tanh[a]+Tanh[b]==((Sinh[a+b])/(Cosh[a]Cosh[b]))∧Tanh[a]-Tanh[b]==((Sinh[a-b])/(Cosh[a]Cosh[b]))∧
A Sinh[z]+B Cosh[z]==A (Sqrt[1-((B^2)/(A^2))]) Sinh[z+ArcTanh[(B/A)]]∧
Sinh[a]Sinh[b]==((Cosh[a+b]-Cosh[a-b])/2)∧Cosh[a]Cosh[b]==((Cosh[a-b]+Cosh[a+b])/2)∧Sinh[a]Cosh[b]==((Sinh[a+b]+Sinh[a-b])/2)∧
((Sinh[(z/2)])^2)==((Cosh[z]-1)/2)∧((Cosh[(z/2)])^2)==((1+Cosh[z])/2)∧
Tanh[(z/2)]==((Cosh[z]-1)/(Sinh[z]))==((Sinh[z])/(1+Cosh[z]))∧Coth[(z/2)]==((Sinh[z])/(Cosh[z]-1))==((1+Cosh[z])/(Sinh[z])))

The command Simplify has the Assumption option. For example, Mathematica knows that sinh(x)>0 for all real positive x, and uses the periodicity of hyperbolic functions for the symbolic integer coefficient k of k π i.

Simplify[Abs[Sinh[x]]>0,x>0]

Abs[Sinh[x]]>0//Simplify[#,x>0]&

Simplify[{Sinh[z+2 k π I],Cosh[z+2 k π I],Tanh[z+k π I],Coth[z+k π I],Csch[z+2 k π I],Sech[z+2 k π I]},k∈Integers]

Simplify[{Sinh[z+k π I]/Sinh[z],Cosh[z+k π I]/Cosh[z],Tanh[z+k π I]/Tanh[z],Coth[z+k π I]/Coth[z],Csch[z+k π I]/Csch[z],Sech[z+k π I]/Sech[z]},k∈Integers]

Mathematica also knows that the composition of inverse and direct hyperbolic functions produces the value of the inner argument under the appropriate restriction. Here are some examples.

Simplify[{ArcSinh[Sinh[z]],ArcTanh[Tanh[z]],ArcCoth[Coth[z]],ArcCsch[Csch[z]]},-π/2<Im[z]<π/2]

Simplify[{ArcCosh[Cosh[z]],ArcSech[Sech[z]]},-π<Im[z]<π∧Re[z]>0]

FunctionExpand (and Together)

While the hyperbolic functions auto-evaluate for simple fractions of π i, for more complicated cases they stay as hyperbolic functions to avoid the build up of large expressions. Using the function FunctionExpand, such expressions can be transformed into explicit radicals.

Cosh[((π I)/32)]

FunctionExpand[ Cosh[((π I)/32)]]

Coth[((π I)/24)]//FunctionExpand

{Sinh[((π I)/16)], Cosh[((π I)/16)],Tanh[((π I)/16)], Coth[((π I)/16)], Csch[((π I)/16)], Sech[((π I)/16)]}

FunctionExpand[%]

{Sinh[((π I)/60)], Cosh[((π I)/60)],Tanh[((π I)/60)], Coth[((π I)/60)], Csch[((π I)/60)], Sech[((π I)/60)]}

Together[FunctionExpand[%]]

If the denominator contains squares of integers other than 2, the results always contain complex numbers (meaning that the imaginary number i=(Sqrt[-1]) appears unavoidably).

{Sinh[((π I)/9)], Cosh[((π I)/9)],Tanh[((π I)/9)], Coth[((π I)/9)], Csch[((π I)/9)], Sech[((π I)/9)]}

FunctionExpand[%] // Together

Here the function RootReduce is used to express the previous algebraic numbers as numbered roots of polynomial equations.

RootReduce[Simplify[%]]

The function FunctionExpand also reduces hyperbolic expressions with compound arguments or compositions, including hyperbolic functions, to simpler forms. Here are some examples.

FunctionExpand[Coth[(Sqrt[-(z^2)])]]

Tanh[(Sqrt[I (z^2)])]//FunctionExpand

{Sinh[(Sqrt[(z^2)])], Cosh[(Sqrt[(z^2)])],Tanh[(Sqrt[(z^2)])], Coth[(Sqrt[(z^2)])], Csch[(Sqrt[(z^2)])], Sech[(Sqrt[(z^2)])]}//FunctionExpand

Applying Simplify to the last expression gives a more compact result.

Simplify[%]

Here are some similar examples.

Sinh[2ArcTanh[z]]//FunctionExpand

Cosh[((ArcCoth[z])/2)]//FunctionExpand

{Sinh[2ArcSinh[z]],Cosh[2ArcCosh[z]],Tanh[2ArcTanh[z]],Coth[2ArcCoth[z]],Csch[2ArcCsch[z]],Sech[2ArcSech[z]]}//FunctionExpand

{Sinh[((ArcSinh[z])/2)],Cosh[((ArcCosh[z])/2)],Tanh[((ArcTanh[z])/2)],Coth[((ArcCoth[z])/2)],Csch[((ArcCsch[z])/2)],Sech[((ArcSech[z])/2)]}//FunctionExpand

Simplify[%]

FullSimplify

The function FullSimplify tries a wider range of transformations than the function Simplify and returns the simplest form it finds. Here are some examples that contrast the results of applying these functions to the same expressions.

Cosh[(1/2) Log[1-I z]-(1/2) Log[1+I z]]//Simplify

%//FullSimplify

{Sinh[-Log[I z+(Sqrt[1-(z^2)])]],Cosh[-Log[I z+(Sqrt[1-(z^2)])]],Tanh[-Log[I z+(Sqrt[1-(z^2)])]],Coth[-Log[I z+(Sqrt[1-(z^2)])]],Csch[-Log[I z+(Sqrt[1-(z^2)])]],Sech[-Log[I z+(Sqrt[1-(z^2)])]]}//Simplify

{Sinh[-Log[I z+(Sqrt[1-(z^2)])]],Cosh[-Log[I z+(Sqrt[1-(z^2)])]],Tanh[-Log[I z+(Sqrt[1-(z^2)])]],Coth[-Log[I z+(Sqrt[1-(z^2)])]],Csch[-Log[I z+(Sqrt[1-(z^2)])]],Sech[-Log[I z+(Sqrt[1-(z^2)])]]}//FullSimplify

Operations performed by specialized Mathematica functions

Series expansions

Calculating the series expansion of hyperbolic functions to hundreds of terms can be done in seconds. Here are some examples.

Series[Sinh[z],{z,0,5}]

Normal[%]

Series[{Sinh[z],Cosh[z],Tanh[z],Coth[z],Csch[z],Sech[z]},{z,0,3}]

Series[Coth[z],{z,0,100}]//Timing

Mathematica comes with the add-on package DiscreteMath`RSolve` that allows finding the general terms of series for many functions. After loading this package, and using the package function SeriesTerm, the following n(^th) term for odd hyperbolic functions can be evaluated.

<<DiscreteMath`RSolve`

SeriesTerm[{Sinh[z],Cosh[z],Tanh[z],Coth[z],Csch[z],Sech[z]},{z,0,n}]z^n

Here is a quick check of the last result.

This series should be evaluated to {sinh(z),cosh(z),tanh(z),coth(z),csch(z),sech(z)}, which can be concluded from the following relation.

Sum[#,{n,0,100}]&/@%-Series[{Sinh[z],Cosh[z],Tanh[z],Coth[z],Csch[z],Sech[z]},{z,0,100}]

Differentiation

Mathematica can evaluate derivatives of hyperbolic functions of an arbitrary positive integer order.

D[Sinh[z],z]

Sinh[z]//D[#,z]&

(∂_z){Sinh[z],Cosh[z],Tanh[z],Coth[z],Csch[z],Sech[z]}

(∂_({z,2})){Sinh[z],Cosh[z],Tanh[z],Coth[z],Csch[z],Sech[z]}

Table[D[{Sinh[z],Cosh[z],Tanh[z],Coth[z],Csch[z],Sech[z]},{z,n}],{n,4}]

Finite summation

Mathematica can calculate finite sums that contain hyperbolic functions. Here are two examples.

Sum[Sinh[a k],{k,0,n}]

(∑_(k=0)^n)(((-1))^k) Sinh[a k]

Infinite summation

Mathematica can calculate infinite sums that contain hyperbolic functions. Here are some examples.

(∑_(k=1)^∞)(z^k) Sinh[k x]

(∑_(k=1)^∞)((Sinh[k x])/(k!))

(∑_(k=1)^∞)((Cosh[k x])/k)

Finite products

Mathematica can calculate some finite symbolic products that contain the hyperbolic functions. Here are two examples.

(∏_(k=1)^(n-1))Sinh[((π k I)/n)]

(∏_(k=1)^(n-1))Cosh[z+((π k I)/n)]

Infinite products

Mathematica can calculate infinite products that contain hyperbolic functions. Here are some examples.

(∏_(k=1)^∞)Exp[(z^k) Sinh[k x]]

(∏_(k=1)^∞)Exp[((Cosh[k x])/(k!))]

Indefinite integration

Mathematica can calculate a huge set of doable indefinite integrals that contain hyperbolic functions. Here are some examples.

∫Sinh[7z]\[DifferentialD]z

∫{{Sinh[z],((Sinh[z])^a)},{Cosh[z],((Cosh[z])^a)},{Tanh[z],((Tanh[z])^a)},{Coth[z],((Coth[z])^a)},{Csch[z],((Csch[z])^a)},{Sech[z],((Sech[z])^a)}}\[DifferentialD]z

Definite integration

Mathematica can calculate wide classes of definite integrals that contain hyperbolic functions. Here are some examples.

(∫_0^(π/2))((Sinh[z])^(1/3))\[DifferentialD]z

(∫_1^(π/2)){(Sqrt[Sinh[z]]),(Sqrt[Cosh[z]]),(Sqrt[Tanh[z]]),(Sqrt[Coth[z]]),(Sqrt[Csch[z]]),(Sqrt[Sech[z]])}\[DifferentialD]z

(∫_1^(π/4)){{Sinh[z],((Sinh[z])^a)},{Cosh[z],((Cosh[z])^a)},{Tanh[z],((Tanh[z])^a)},{Coth[z],((Coth[z])^a)},{Csch[z],((Csch[z])^a)},{Sech[z],((Sech[z])^a)}}\[DifferentialD]z

(∫_0^∞){(1/(a+b Sinh[z])),(1/(a+b Cosh[z])),(1/(a+b Tanh[z])),(1/(a+b Coth[z])),(1/(a+b Csch[z])),(1/(a+b Sech[z]))}\[DifferentialD]z

Limit operation

Mathematica can calculate limits that contain hyperbolic functions. Here are some examples.

Limit[((Sinh[z])/z)+((Cosh[z])^3),z->0]

Limit[(((((Tanh[x])/x)))^(1/(x^2))),x->0]

Limit[((Sinh[(Sqrt[(z^2)])])/z),z->0,Direction->1]

Limit[((Sinh[(Sqrt[(z^2)])])/z),z->0,Direction->-1]

Solving equations

The next input solves equations that contain hyperbolic functions. The message indicates that the multivalued functions are used to express the result and that some solutions might be absent.

Solve[((Tanh[z])^2)+3 Sinh[z+Pi/6]==4,z]

Complete solutions can be obtained by using the function Reduce.

Reduce[Sinh[x]==a,x]//InputForm

Reduce[Cosh[x]==a,x]//InputForm

Reduce[Tanh[x]==a,x]//InputForm

Reduce[Coth[x]==a,x]//InputForm

Reduce[Csch[x]==a,x]//InputForm

Reduce[Sech[x]==a,x]//InputForm

Solving differential equations

Here are differential equations whose linear-independent solutions are hyperbolic functions. The solutions of the simplest second-order linear ordinary differential equation with constant coefficients can be represented through sinh(z) and cosh(z).

{DSolve[w''[z]-w[z]==0,w[z],z],
DSolve[w'[z]+((w[z])^2)-1==0,w[z],z]} // (ExpToTrig //@ #)&

All hyperbolic functions satisfy first-order nonlinear differential equations. In carrying out the algorithm to solve the nonlinear differential equation, Mathematica has to solve a transcendental equation. In doing so, the generically multivariate inverse of a function is encountered, and a message is issued that a solution branch is potentially missed.

DSolve[{w'[z]==(Sqrt[1+((w[z])^2)]),w[0]==0},w[z],z]

DSolve[{w'[z]==(Sqrt[-1+((w[z])^2)]),w[0]==1},w[z],z] //FullSimplify

DSolve[{w'[z]+((w[z])^2)-1==0,w[0]==0},w[z],z]// FullSimplify

DSolve[{w'[z]-((w[z])^2)+1==0,w[((π I)/2)]==0},w[z],z]//FullSimplify

Integral transforms

Mathematica supports the main integral transforms like direct and inverse Fourier, Laplace, and Z transforms that can give results containing classical or generalized functions. Here are some transforms of hyperbolic functions.

LaplaceTransform[Sinh[t],t,s]

LaplaceTransform[Cosh[t],t,s]

FourierTransform[Csch[t],t,s]

FourierTransform[Sech[t],t,s]

Plotting

Mathematica has built-in functions for 2D and 3D graphics. Here are some examples.

Plot[Sin[Sinh[(∑_(k=0)^5)(z^k)]],{z,-3/2, 4/5},PlotRange->All, PlotPoints -> 120];

Plot3D[Re[Tanh[x+I y]],{x,-2, 2},{y,-2,2},
PlotPoints->240,PlotRange->{-5,5},ClipFill->None,Mesh->False,AxesLabel->{"x","y",None}];

ContourPlot[Arg[Sech[(1/(x+I y))]],{x,-(1/4),(1/4)},{y,-(1/3),(1/3)},PlotPoints->400,PlotRange->{-π,π},FrameLabel->{"x","y",None,None},ColorFunction->Hue,ContourLines->False,Contours->200];

Introduction to the Hyperbolic Cotangent Function in Mathematica

Overview

The following shows how the hyperbolic cotangent function is realized in Mathematica. Examples of evaluating Mathematica functions applied to various numeric and exact expressions that involve the hyperbolic cotangent function or return it are shown. These involve numeric and symbolic calculations and plots.

Notations

Mathematica forms of notations

Following Mathematica's general naming convention, function names in StandardForm are just the capitalized versions of their traditional mathematics names. This shows the hyperbolic cotangent function in StandardForm.

Coth[z]

This shows the hyperbolic cotangent function in TraditionalForm.

%//TraditionalForm

Additional forms of notations

Mathematica also knows the most popular forms of notations for the hyperbolic cotangent function that are used in other programming languages. Here are three examples: CForm, TeXForm, and FortranForm.

{CForm[Coth[2π z]],TeXForm[Coth[2π z]],FortranForm[Coth[2π z]]}

Automatic evaluations and transformations

Evaluation for exact and machine-number values of arguments

For the exact argument z=π i/4, Mathematica returns exact result.

Coth[((π I)/4)]

Coth[z]/.z->((π I)/4)

For a machine-number argument (numerical argument with a decimal point), a machine number is also returned.

Coth[3.]

Coth[z]/.z->2.

The next inputs calculate 100-digit approximations at z=1 and z=2.

N[Coth[z]/.z->1,100]

N[Coth[2],100]

Coth[2]//N[#,100]&

It is possible to calculate thousands of digits for the hyperbolic cotangent function within a second. The next input calculates 10000 digits for coth(1) and analyzes the frequency of the digit k in the resulting decimal number.

Map[Function[w, {First[#],Length[#]}&/@Split[Sort[First[RealDigits[w]]]]] , N[{Coth[z]}/.z->1,10000]]

Here is a 50-digit approximation to the hyperbolic cotangent function at the complex argument z=3-2i.

N[Coth[3-2 I],50]

{N[Coth[z]/.z->3-2 I,50],Coth[3-2 I]//N[#,50]&}

Mathematica automatically evaluates mathematical functions with machine precision, if the arguments of the function are numerical values and include machine-number elements. In this case only six digits after the decimal point are shown. The remaining digits are suppressed, but can be displayed using the function InputForm.

{Coth[3.],N[Coth[3]],N[Coth[3],16],N[Coth[3],5],N[Coth[3],20]}

%//InputForm

Simplification of the argument

Mathematica knows the symmetry and periodicity of the hyperbolic cotangent function. Here are some examples.

Coth[-3]

{Coth[-z],Coth[z+π I],Coth[z+2π I],Coth[-z+21π I]}

Mathematica automatically simplifies the composition of the direct and the inverse hyperbolic cotangent functions into its argument.

Coth[ArcCoth[z]]

Mathematica also automatically simplifies the composition of the direct and any of the inverse hyperbolic functions into algebraic functions of the argument.

{Coth[ArcSinh[z]],Coth[ArcCosh[z]],Coth[ArcTanh[z]], Coth[ArcCoth[z]],Coth[ArcCsch[z]], Coth[ArcSech[z]]}

In the cases where the argument has the structure π k i/2+z or π k i/2-z, and π k i/2+i z or π k i/2-i z with integer k, the hyperbolic cotangent function can be automatically transformed into hyperbolic or trigonometric cotangent or tangent functions.

Coth[((π I)/2)-4]

{Coth[((π I)/2)-z],Coth[((π I)/2)+z],Coth[-((π I)/2)-z],Coth[-((π I)/2)+z],Coth[π I-z],Coth[π I+z]}

Coth[I 5]

{Coth[I z],Coth[((π I)/2)-I z],Coth[((π I)/2)+I z],Coth[π I-I z],Coth[π I+I z]}

Simplification of combinations of hyperbolic cotangent functions

Sometimes simple arithmetic operations containing the hyperbolic cotangent function can automatically generate other equal hyperbolic functions.

1/Coth[4]

{1/Coth[z],1/Coth[π I/2-z],Coth[π I/2-z]/Coth[z],Coth[z]/Coth[π I/2-z],1/Coth[π I/2-z],Coth[π I/2-z]/Coth[z]^2}

The hyperbolic cotangent function arising as special cases from more general functions

The hyperbolic cotangent function can be treated as a particular case of some more general special functions. For example, coth(z) appears automatically from Bessel, Mathieu, Jacobi, hypergeometric, and Meijer functions or their ratios for appropriate parameters.

{BesselI[-(1/2),z]/BesselI[(1/2),z],((MathieuC[1,0,I z])/(MathieuS[1,0,I z])),JacobiCS[I z,0],JacobiSC[(π/2)-I z,0],-I JacobiNS[z,1], I JacobiSN[((π I)/2)-z,1],HypergeometricPFQ[{},{(1/2)},((z^2)/4)]/HypergeometricPFQ[{},{(3/2)},((z^2)/4)],MeijerG[{{},{}},{{-(1/2)},{0}},-((z^2)/4)]/MeijerG[{{},{}},{{(1/2)},{0}},-((z^2)/4)]}

Equivalence transformations using specialized Mathematica functions

General remarks

Almost everybody prefers using coth(z)-i instead of coth(z-π i)+coth(π i/4). Mathematica automatically transforms the second expression into the first one. The automatic application of transformation rules to mathematical expressions can give overly complicated results. Compact expressions like coth(π i/16) should not be automatically expanded into the more complicated expression -i ((((2+(((2+(2^(1/2))))^(1/2)))/(2-(2+(2^(1/2))))))^(1/2)). Mathematica has special functions that produce such expansions. Some are demonstrated in the next section.

TrigExpand

The function TrigExpand expands out trigonometric and hyperbolic functions. In more detail, it splits up sums and integer multiples that appear in the arguments of trigonometric and hyperbolic functions, and then expands out the products of trigonometric and hyperbolic functions into sums of powers, using trigonometric and hyperbolic identities where possible. Here are some examples.

TrigExpand[Coth[x-y]]

Coth[4z]//TrigExpand

((Coth[2z])^2)//TrigExpand

TrigExpand[{Coth[x+y+z],Coth[3 z]}]

TrigFactor

The function TrigFactor factors trigonometric and hyperbolic functions. In more detail, it splits up sums and integer multiples that appear in the arguments of trigonometric and hyperbolic functions, and then factors the resulting polynomials into trigonometric and hyperbolic functions, using trigonometric and hyperbolic identities where possible. Here are some examples.

TrigFactor[Coth[x]+Coth[y]]

Coth[x]-Tanh[y]//TrigFactor

TrigReduce

The function TrigReduce rewrites the products and powers of trigonometric and hyperbolic functions in terms of trigonometric and hyperbolic functions with combined arguments. In more detail, it typically yields a linear expression involving trigonometric and hyperbolic functions with more complicated arguments. TrigReduce is approximately opposite to TrigExpand and TrigFactor. Here are some examples.

TrigReduce[Coth[x]Coth[y]]

Coth[x]Tanh[y]//TrigReduce

Table[TrigReduce[Coth[z]^n],{n,2,5}]

TrigReduce[TrigExpand[{Coth[x+y+z],Coth[3 z],Coth[x]Coth[y]}]]

TrigFactor[Coth[x]+Coth[y]]//TrigReduce

TrigToExp

The function TrigToExp converts trigonometric and hyperbolic functions to exponentials. It tries, where possible, to give results that do not involve explicit complex numbers. Here are some examples.

TrigToExp[Coth[z]]

Coth[a z]+Coth[b z]//TrigToExp

ExpToTrig

The function ExpToTrig converts exponentials to trigonometric and hyperbolic functions. It is approximately opposite to TrigToExp. Here are some examples.

ExpToTrig[TrigToExp[Coth[z]]]

{α (E^(-x β))+α (E^(x β))/(α (E^(-x β))+γ (E^(x β)))}//ExpToTrig

ComplexExpand

The function ComplexExpand expands expressions assuming that all the variables are real. The option TargetFunctions can be given as a list of functions from the set {Re, Im, Abs, Arg, Conjugate, Sign}. ComplexExpand tries to give results in terms of the functions specified. Here are some examples.

ComplexExpand[Coth[x+I y]]

Coth[x+I y]+Coth[x-I y]//ComplexExpand

ComplexExpand[Re[Coth[x+I y]],TargetFunctions->{Re,Im}]

ComplexExpand[Im[Coth[x+I y]],TargetFunctions->{Re,Im}]

ComplexExpand[Abs[Coth[x+I y]],TargetFunctions->{Re,Im}]

ComplexExpand[Abs[Coth[x+I y]],TargetFunctions->{Re,Im}]//Simplify[#,{x,y}∈Reals]&

ComplexExpand[Re[Coth[x+I y]]+Im[Coth[x+I y]],TargetFunctions->{Re,Im}]

ComplexExpand[Arg[Coth[x+I y]],TargetFunctions->{Re,Im}]

ComplexExpand[Arg[Coth[x+I y]],TargetFunctions->{Re,Im}]//Simplify[#,{x,y}∈Reals]&

ComplexExpand[Conjugate[Coth[x+I y]],TargetFunctions->{Re,Im}]//Simplify

Simplify

The function Simplify performs a sequence of algebraic transformations on the expression, and returns the simplest form it finds. Here are some examples.

((Coth[(Subscript[z, 1])]+Coth[(Subscript[z, 2])]+Coth[(Subscript[z, 3])]+Coth[(Subscript[z, 1])] Coth[(Subscript[z, 2])] Coth[(Subscript[z, 3])])/(1+Coth[(Subscript[z, 1])] Coth[(Subscript[z, 2])]+Coth[(Subscript[z, 1])] Coth[(Subscript[z, 3])]+Coth[(Subscript[z, 2])] Coth[(Subscript[z, 3])]))//Simplify

Simplify[Coth[z-((π I)/3)] Coth[((π I)/3)+z]+Coth[z-((π I)/3)] Coth[z]+Coth[z] Coth[((π I)/3)+z]]

Here is a collection of hyperbolic identities. Each is written as a logical conjunction.

Simplify[#]&/@(Coth[(z/2)]==Coth[z]+Csch[z]∧((Coth[z])^2)==((Cosh[2 z]+1)/(Cosh[2 z]-1))∧((Coth[z])^2)==(1/(1-((Sech[z])^2)))∧
Coth[(z/2)]==((Sinh[z])/(Cosh[z]-1))==((1+Cosh[z])/(Sinh[z]))∧Coth[z] Coth[2 z]==(1/2) (((Coth[z])^2)+1)∧((Coth[a])^2)-((Coth[b])^2)==-((Csch[a])^2) ((Csch[b])^2) Sinh[a-b] Sinh[a+b]∧((Coth[z])^3)==-((3 Cosh[z]+Cosh[3 z])/(3 Sinh[z]-Sinh[3 z]))∧Coth[3 z]==((((Coth[z])^3)+3 Coth[z])/(3 ((Coth[z])^2)+1)))

The function Simplify has the Assumption option. For example, Mathematica treats the periodicity of hyperbolic functions for the symbolic integer coefficient k of k π i.

Simplify[{Coth[z+2 k π I],Coth[z+k π I]/Coth[z]},k∈Integers]

Mathematica also knows that the composition of the inverse and direct hyperbolic functions produces the value of the inner argument under the corresponding restriction.

ArcCoth[Coth[z]]

Simplify[ArcCoth[Coth[z]],-π/2<Im[z]<π/2]

FunctionExpand (and Together)

While the hyperbolic cotangent function auto-evaluates for simple fractions of π i, for more complicated cases it stays as a hyperbolic cotangent function to avoid the build up of large expressions. Using the function FunctionExpand, the hyperbolic cotangent function can sometimes be transformed into explicit radicals. Here are some examples.

{Coth[((π I)/16)],Coth[((π I)/60)]}

FunctionExpand[%]

Together[%]

If the denominator contains squares of integers other than 2, the results always contain complex numbers deeply inside the expression (meaning that the imaginary number i=(Sqrt[-1]) appears unavoidably).

{Coth[((π I)/9)]}

FunctionExpand[%] // Together

Here the function RootReduce is used to express the previous algebraic numbers as roots of polynomial equations.

RootReduce[Simplify[%]]

The function FunctionExpand also reduces hyperbolic expressions with compound arguments or compositions, including inverse hyperbolic functions, to simpler ones. Here are some examples.

{Coth[(Sqrt[(z^2)])],Coth[((ArcCoth[z])/2)],Coth[2ArcCoth[z]],Coth[3ArcSinh[z]]}//FunctionExpand

Applying Simplify to the last expression gives a more compact result.

Simplify[%]

FullSimplify

The function FullSimplify tries a wider range of transformations than Simplify and returns the simplest form it finds. Here are some examples that compare the results of applying these functions to the same expressions.

set1={Coth[Log[z+(Sqrt[1+(z^2)])]],Coth[((π I)/2)+Log[z+(Sqrt[1+(z^2)])]],Coth[(1/2) Log[1-z]-(1/2) Log[1+z]],Coth[(1/2) Log[1-(1/z)]-(1/2) Log[1+(1/z)]],Coth[Log[(Sqrt[1+(1/(z^2))])+(1/z)]],Coth[((π I)/2)+Log[(Sqrt[1+(1/(z^2))])+(1/z)]]}

set1//Simplify

set1//FullSimplify

Operations under special Mathematica functions

Series expansions

Calculating the series expansion of a hyperbolic cotangent function to hundreds of terms can be done in seconds.

Series[Coth[z],{z,0,3}]

Normal[%]

Series[Coth[z],{z,0,100}]//Timing

Mathematica comes with the add-on package DiscreteMath`RSolve` that allows finding the general terms of the series for many functions. After loading this package, and using the package function SeriesTerm, the following n(^th) term of coth(z) can be evaluated.

<<DiscreteMath`RSolve`

SeriesTerm[Coth[z],{z,0,n}]z^n

This result can be easily verified.

Sum[(((2^(1+n)) (z^n) BernoulliB[1+n])/((1+n)!)),{n,1,∞}]//FullSimplify

Differentiation

Mathematica can evaluate derivatives of the hyperbolic cotangent function of an arbitrary positive integer order.

(∂_z)Coth[z]

(∂_({z,2}))Coth[z]

Table[D[Coth[z],{z,n}],{n,10}]

Indefinite integration

Mathematica can calculate a huge set of doable indefinite integrals that contain the hyperbolic cotangent function. The results can contain special functions. Here are some examples.

∫Coth[z]\[DifferentialD]z

∫((Coth[z])^a)\[DifferentialD]z

Definite integration

Mathematica can calculate wide classes of definite integrals that contain the hyperbolic cotangent function. Here are some examples.

(∫_0^∞)t (E^(-t)) Coth[t]\[DifferentialD]t

(∫_0^(π/2))(Sqrt[Coth[z]])\[DifferentialD]z

(∫_0^(π/4))Log[Coth[t]]\[DifferentialD]t

Limit operation

Mathematica can calculate limits that contain the hyperbolic cotangent function. Here are some examples.

Limit[(z^2) ((Coth[3z])^2),z->0]

Limit[z Coth[2(Sqrt[(z^2)])],z->0,Direction->1]

Limit[z Coth[2(Sqrt[(z^2)])],z->0,Direction->-1]

Solving equations

The next inputs solve two equations that contain the hyperbolic cotangent function. Because of the multivalued nature of the inverse hyperbolic cotangent function, a message is printed indicating that only some of the possible solutions are returned.

Solve[((Coth[z])^2)+3 Coth[z+Pi/3]==4,z]

Solve[Coth[x]==a,x]

A complete solution of the previous equation can be obtained using the function Reduce.

Reduce[Coth[x]==a,x]//InputForm

Solving differential equations

Here is a linear inhomogeneous differential equation whose independent solution includes the hyperbolic tangent function.

DSolve[w'[z]==-Csch[z]^2,w[z],z]

Here is a nonlinear differential equation whose solution is the hyperbolic tangent function with a shifted argument.

DSolve[{w'[z]+((w[z])^2)-1==0},w[z],z] // FullSimplify

Plotting

Mathematica has built-in functions for 2D and 3D graphics. Here are some examples.

Plot[Coth[Sin[z]],{z,-2, 2}];

Plot3D[Re[Coth[x+I y]],{x,-3, 3},{y,0,π},
PlotPoints->240,PlotRange->{-5,5},ClipFill->None,Mesh->False,AxesLabel->{"x","y",None}];

ContourPlot[Arg[Coth[(1/(x+I y))]],{x,-(1/2),(1/2)},{y,-(1/2),(1/2)},PlotPoints->400,PlotRange->{-π,π},FrameLabel->{"x","y",None,None},ColorFunction->(Hue[0.78#]&),ContourLines->False,Contours->200];

Copyright