WOLFRAM

tests whether is a meromorphic function of x.

FunctionMeromorphic[f,{x1,x2,}]

tests whether is a meromorphic function of x1,x2,.

FunctionMeromorphic[{f1,f2,},{x1,x2,}]

tests whether are meromorphic functions for x1,x2,.

FunctionMeromorphic[{funs,cons},xvars]

tests whether are meromorphic functions for xvars in an open set containing the solutions of the constraints cons.

Details and Options

  • A function is meromorphic if it can be represented as , where and are complex analytic functions.
  • A function is meromorphic if it can be locally represented as , where and are complex analytic functions.
  • If funs contains parameters other than xvars, the result is typically a ConditionalExpression.
  • cons can contain inequalities or logical combinations of these.
  • The following options can be given:
  • Assumptions $Assumptionsassumptions on parameters
    GenerateConditions Truewhether to generate conditions on parameters
    PerformanceGoal $PerformanceGoalwhether to prioritize speed or quality
  • Possible settings for GenerateConditions include:
  • Automaticnongeneric conditions only
    Trueall conditions
    Falseno conditions
    Nonereturn unevaluated if conditions are needed
  • Possible settings for PerformanceGoal are "Speed" and "Quality".

Examples

open allclose all

Basic Examples  (3)Summary of the most common use cases

Test whether univariate functions are meromorphic:

Out[1]=1
Out[2]=2

Test whether multivariate functions are meromorphic:

Out[1]=1
Out[2]=2

Test whether functions are meromorphic over restricted domains:

Out[1]=1
Out[2]=2

Scope  (4)Survey of the scope of standard use cases

Univariate functions:

Out[1]=1

The only singularities are poles:

Out[2]=2

is not meromorphic:

Out[3]=3

It has a branch cut along the negative real axis:

Out[4]=4

Functions with restricted domains:

Out[1]=1
Out[2]=2

The branch cut along the positive imaginary axis is outside the restricted domain:

Out[3]=3

Multivariate functions:

Out[1]=1
Out[2]=2

Functions with symbolic parameters:

Out[1]=1

Options  (4)Common values & functionality for each option

Assumptions  (1)

FunctionMeromorphic cannot find the answer for arbitrary values of the parameter :

Out[1]=1

With the assumption that is a positive integer, FunctionMeromorphic succeeds:

Out[2]=2

GenerateConditions  (2)

By default, FunctionMeromorphic may generate conditions on symbolic parameters:

Out[1]=1

With GenerateConditions->None, FunctionMeromorphic fails instead of giving a conditional result:

Out[2]=2

This returns a conditionally valid result without stating the condition:

Out[3]=3

By default, all conditions are reported:

Out[1]=1

With GenerateConditions->Automatic, conditions that are generically true are not reported:

Out[2]=2

PerformanceGoal  (1)

Use PerformanceGoal to avoid potentially expensive computations:

Out[1]=1

The default setting uses all available techniques to try to produce a result:

Out[2]=2

Applications  (12)Sample problems that can be solved with this function

Classes of Meromorphic Functions  (7)

Rational functions are meromorphic:

Out[1]=1

Tan, Sec and Sech are meromorphic:

Out[2]=2

Visualize these functions:

Out[3]=3

Visualizing the functions in a plane shows that their singularities are no worse than poles:

Out[4]=4

Functions with branch cuts like Log are not meromorphic:

Out[1]=1

Neither are Sqrt or any noninteger power:

Out[2]=2
Out[3]=3

Inverse trigonometric and hyperbolic functions like ArcSin, ArcTan and ArcCsch are similarly non-meromorphic:

Out[4]=4

Non-differentiable functions like Abs, Sign and Re are not meromorphic:

Out[5]=5
Out[6]=6

Visualize some of these functions:

Out[7]=7

Functions that are only defined for real inputs, like UnitStep and TriangleWave, cannot be meromorphic:

Out[1]=1
Out[2]=2

These functions are not defined for complex value:

Out[3]=3

Every function analytic in the complex plane is meromorphic:

Out[1]=1
Out[2]=2
Out[3]=3

Arithmetic combinations of meromorphic functions are meromorphic:

Out[1]=1
Out[2]=2
Out[3]=3
Out[4]=4

As all trigonometric and hyperbolic functions are arithmetic combinations of Exp, they are all meromorphic:

Out[5]=5

More generally, any rational combination of meromorphic functions is meromorphic:

Out[6]=6
Out[7]=7

Visualize Exp and the eight nonanalytic trigonometric and hyperbolic functions:

Out[8]=8

The compositions of meromorphic functions need not be meromorphic:

Out[1]=1

The singularities of a meromorphic might bunch up under composition, leading to a non-pole singularity:

Out[2]=2

There is an essential singularity at the origin, as evidenced by the following limit:

Out[3]=3

However, the composition of a meromorphic function with an analytic function is always meromorphic:

Out[4]=4
Out[5]=5
Out[6]=6

Visualize the composite functions:

Out[7]=7

Multivariate rational functions are meromorphic:

Out[1]=1

Unlike functions of a single variable, singularities lie along curves, in the first function along :

Out[2]=2

Plotting the second function in the plane shows the blowup along the hyperbolas :

Out[3]=3

By composing with analytic univariate functions, many more analytic functions can be generated:

Out[4]=4

The complete Beta function TemplateBox[{x, y}, Beta] is meromorphic:

Out[5]=5

It can be considered a multivariate rational function in Gamma:

Out[6]=6

Visualize the function:

Out[7]=7

Integrating Functions  (5)

The Limit of a meromorphic function is always either a number or ComplexInfinity:

Out[1]=1

Sqrt has points where the limit does not exist, so it cannot be meromorphic:

Out[2]=2

The singular points of a meromorphic function, called poles, have a Residue associated with them:

Out[3]=3

The residue is the coefficient of in the power series expansion of the function:

Out[4]=4

The integral of a meromorphic function around a closed contour equals times the sum of the residues of the poles enclosed by by the curve. Compute the integral of around the origin, which is clearly its only pole:

Out[1]=1

This must equal the residue at :

Out[2]=2

Any other closed contour would give the same result, for example, a circular one:

Out[3]=3

Visualize the function and the contours:

Out[4]=4

If the contour does not enclose the singularity, the integral will be zero:

Out[5]=5

Visualize the function with this alternate contour:

Out[6]=6

If all the singular points of a function have the same or related residues, integrals over a closed contour can be used to count the number of poles enclosed. For example, has a pole with residue at every half-integer multiple of :

Out[1]=1

The integral of over a rectangle straddling the real axis counts the number of half-integer multiples of enclosed:

Out[2]=2

A common application of contour integrals is to evaluate integrals over the real line, by extending the contour to a closed one with a semicircle in the upper or lower half-plane. If the portion of the integral over the semicircle vanishes, the contour integral must equal the real integral. Consider . The integrand is meromorphic:

Out[1]=1

The singularities of the integrand occur where the denominator is zero:

Out[2]=2

Complete the contour using a semicircle in the upper half-plane and compute the integral using residues:

Out[3]=3

The integral over the semicircle is of order as , so the real integral must have the same value:

Out[4]=4

For integrands of the form with , meromorphic, continuous on TemplateBox[{}, Reals], and TemplateBox[{{f, (, z, )}}, Abs]<C/(TemplateBox[{z}, Abs]) for large TemplateBox[{z}, Abs], the integral can be computed as times the sum of the residues of in the upper half-plane. Use this to compute . First, verify that is meromorphic:

Out[1]=1

The function also decays at infinity as is required:

Out[2]=2

There is a single pole in the upper half-plane at :

Out[3]=3

Thus, the integral :

Out[4]=4

Since and is even, is half of the previous result:

Out[5]=5

Verify the result with a direct computation:

Out[6]=6

Properties & Relations  (5)Properties of the function, and connections to other functions

A meromorphic function is differentiable arbitrarily many times:

Out[2]=2

Use D to compute derivatives:

Out[3]=3

A meromorphic function can be expressed as a Taylor series at each point of its domain:

Out[2]=2

Use Series to compute initial terms of the Taylor series:

Out[3]=3

The resulting polynomial approximates near :

Out[4]=4

At its poles, the function can be expressed as a Laurent series with a finite principal part:

Out[5]=5
Out[6]=6

A meromorphic function can have only finitely many zeros and poles in a compact region:

Out[2]=2

Use Solve to find the zeros of in the unit disk:

Out[3]=3

Use FunctionSingularities to find the poles of in the unit disk:

Out[4]=4

Plot , its zeros (blue) and its poles (red):

Out[5]=5

The argument principle states that the difference between the number of zeros and the number of poles of (counted with multiplicities) is given by . Use NIntegrate to compute :

Out[6]=6

Verify that all are simple zeros of :

Out[7]=7

Use Limit to verify that all are simple poles of :

Out[8]=8

Compute directly:

Out[9]=9

A quotient of complex analytic functions is meromorphic:

Use FunctionAnalytic to check that and are analytic:

Out[2]=2

Verify that and are meromorphic:

Out[3]=3

Meromorphic functions may not be complex analytic:

Out[4]=4
Out[5]=5

The only singularities a meromorphic function can have are poles and removable singularities:

Out[1]=1

Use FunctionSingularities to find a condition satisfied by all singularities:

Out[2]=2

Use SolveValues to find the singularities:

Out[3]=3

Use FunctionPoles to find the poles and their multiplicities:

Out[4]=4

Use ResidueSum to compute the sum of residues in the right half-plane:

Out[5]=5
Wolfram Research (2020), FunctionMeromorphic, Wolfram Language function, https://reference.wolfram.com/language/ref/FunctionMeromorphic.html.
Wolfram Research (2020), FunctionMeromorphic, Wolfram Language function, https://reference.wolfram.com/language/ref/FunctionMeromorphic.html.

Text

Wolfram Research (2020), FunctionMeromorphic, Wolfram Language function, https://reference.wolfram.com/language/ref/FunctionMeromorphic.html.

Wolfram Research (2020), FunctionMeromorphic, Wolfram Language function, https://reference.wolfram.com/language/ref/FunctionMeromorphic.html.

CMS

Wolfram Language. 2020. "FunctionMeromorphic." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/FunctionMeromorphic.html.

Wolfram Language. 2020. "FunctionMeromorphic." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/FunctionMeromorphic.html.

APA

Wolfram Language. (2020). FunctionMeromorphic. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/FunctionMeromorphic.html

Wolfram Language. (2020). FunctionMeromorphic. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/FunctionMeromorphic.html

BibTeX

@misc{reference.wolfram_2025_functionmeromorphic, author="Wolfram Research", title="{FunctionMeromorphic}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/FunctionMeromorphic.html}", note=[Accessed: 08-July-2025 ]}

@misc{reference.wolfram_2025_functionmeromorphic, author="Wolfram Research", title="{FunctionMeromorphic}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/FunctionMeromorphic.html}", note=[Accessed: 08-July-2025 ]}

BibLaTeX

@online{reference.wolfram_2025_functionmeromorphic, organization={Wolfram Research}, title={FunctionMeromorphic}, year={2020}, url={https://reference.wolfram.com/language/ref/FunctionMeromorphic.html}, note=[Accessed: 08-July-2025 ]}

@online{reference.wolfram_2025_functionmeromorphic, organization={Wolfram Research}, title={FunctionMeromorphic}, year={2020}, url={https://reference.wolfram.com/language/ref/FunctionMeromorphic.html}, note=[Accessed: 08-July-2025 ]}