MellinTransform[expr,x,s]
gives the Mellin transform of expr.
MellinTransform[expr,{x1,x2,…},{s1,s2,…}]
gives the multidimensional Mellin transform of expr.
MellinTransform
MellinTransform[expr,x,s]
gives the Mellin transform of expr.
MellinTransform[expr,{x1,x2,…},{s1,s2,…}]
gives the multidimensional Mellin transform of expr.
Details and Options
- The Mellin transform of a function
is defined to be
. - The multidimensional Mellin transform of a function
is given by
. - The Mellin transform of
exists only for complex values of
such that
. In some cases, this strip of definition may extend to a half-plane. - The following options can be given:
-
Assumptions $Assumptions assumptions on parameters GenerateConditions False whether to generate results that involve conditions on parameters Method Automatic what method to use - In TraditionalForm, MellinTransform is output using
.
Examples
open all close allBasic Examples (2)
Scope (16)
Basic Uses (3)
Compute the Mellin transform of a function for a symbolic parameter s:
MellinTransform[1 / (1 + x), x, s]Use an exact value for the parameter:
MellinTransform[1 / (1 + x), x, 1 / 2]Use an inexact value for the parameter:
MellinTransform[1 / (1 + x), x, 0.3]Obtain the condition for validity of a Mellin transform:
MellinTransform[E ^ (-x), x, s, GenerateConditions -> True]The result is valid in the half-plane
:
TraditionalForm formatting:
MellinTransform[f[x], x, s]//TraditionalFormElementary Functions (3)
MellinTransform[E ^ (-a x), x, s]MellinTransform[E ^ (-x ^ 2), x, s]General exponential functions:
MellinTransform[Exp[-x - x ^ (-1)], x, s]MellinTransform[1 / (E ^ x - 1), x, s]Composition of logarithmic and exponential functions:
MellinTransform[Log[1 - E ^ (-x)], x, s]MellinTransform[(1/3x + 5), x, s]MellinTransform[(1/x ^ 2 + 1), x, s]Mellin transforms of polynomials are given in terms of DiracDelta:
MellinTransform[x, x, s]MellinTransform[x ^ 2 + 3x, x, s]Special Functions (3)
MellinTransform[BesselJ[1, x], x, s]MellinTransform[BesselK[0, x], x, s]MellinTransform[BesselJ[0, x]BesselJ[1, x], x, s]Exponential integral function ExpIntegralE:
MellinTransform[ExpIntegralE[n, x], x, s]MellinTransform[ExpIntegralEi[-x], x, s]MellinTransform of the error function Erf:
MellinTransform[Erf[x], x, s]Complementary error function Erfc:
MellinTransform[Erfc[x], x, s]Piecewise Functions (3)
MellinTransform[UnitStep[x - 1], x, s]MellinTransform[UnitBox[x - 1], x, s]MellinTransform[UnitTriangle[x - 3], x, s]Products of functions with UnitStep:
MellinTransform[x Log[x]UnitStep[1 - x], x, s]MellinTransform[Sin[Log[x]]UnitStep[x - 1], x, s]MellinTransform of a Piecewise function:
MellinTransform[Piecewise[{{E ^ (-x ^ 2), 1 < x < 2}}], x, s]Generalized Functions (2)
MellinTransform of functions involving HeavisideTheta:
MellinTransform[HeavisideTheta[x - 1], x, s]MellinTransform[x HeavisideTheta[x - 1], x, s]MellinTransform[DiracDelta[x - 1], x, s]Options (5)
Assumptions (1)
Compute the Mellin transform of a function depending on a parameter a:
MellinTransform[E ^ (-x)UnitStep[x - a], x, s]Obtain a simpler result by specifying assumptions on the parameter:
MellinTransform[E ^ (-x)UnitStep[x - a], x, s, Assumptions -> a > 0]GenerateConditions (1)
Obtain conditions for validity of the result given by MellinTransform:
MellinTransform[E ^ (-x), x, s, GenerateConditions -> True]GenerateConditions is set to False by default in this case:
MellinTransform[E ^ (-x), x, s]Method (3)
Compute a Mellin transform using the default method:
MellinTransform[1 / (E ^ x - 1), x, s]This example is done using table lookup:
MellinTransform[1 / (E ^ x - 1), x, s, Method -> "TableLookUp"]Attempting to evaluate this example by a conversion to MeijerG fails:
MellinTransform[1 / (E ^ x - 1), x, s, Method -> "MeijerG"]Evaluate the example using the definition of MellinTransform in terms of Integrate:
MellinTransform[1 / (E ^ x - 1), x, s, Method -> "Integrate"]The default method uses a conversion to MeijerG for this example:
MellinTransform[BesselJ[1, x] ^ 2, x, s]//TimingMellinTransform[BesselJ[1, x] ^ 2, x, s, Method -> "MeijerG"]//TimingThis is faster than using the definition of MellinTransform in terms of Integrate:
MellinTransform[BesselJ[1, x] ^ 2, x, s, Method -> "Integrate"]//TimingHere, the symbolic method fails because the input is purely numerical:
f[x_ ? NumericQ] := E ^ (-x)MellinTransform[f[x], x, 0.3, Method -> "Integrate"]This example is evaluated using a numerical method based on NIntegrate:
MellinTransform[f[x], x, 0.3, Method -> "Numeric"]MellinTransform[f[x], x, 0.3]Applications (3)
Use MellinTransform to evaluate
, which may be regarded as a Mellin convolution of the following functions:
f[t_] := BesselJ[0, t]g[t_] := BesselJ[1, t]Apply MellinTransform to each function:
f1 = MellinTransform[f[t] , t, s]g1 = MellinTransform[g[t] , t, s]Obtain the required integral by performing an inverse Mellin transform:
InverseMellinTransform[f1 g1, s, x]Compute the integral directly using Integrate:
Integrate[f[t] g[x / t] / t, {t, 0, Infinity}, Assumptions -> x > 0]//FunctionExpandObtain the same result using MellinConvolve:
MellinConvolve[f[t], g[t], t, x]//FunctionExpandPlot[{f[x], g[x], %}//Evaluate, {x, 0, 10}, Filling -> Axis]Find the general solution of the Bessel equation using MellinTransform:
besseleqn = x ^ 2 y''[x] + x y'[x] + (x ^ 2 - 1) y[x] == 0;Apply MellinTransform to the equation:
MellinTransform[besseleqn, x, s]//ExpandUse RSolveValue to solve the recurrence equation:
RSolveValue[%, MellinTransform[y[x], x, s], s]Use InverseMellinTransform to find the required general solution:
(Simplify[InverseMellinTransform[%, s, x]//FunctionExpand, x > 0] /. {(C[1] - C[2]) -> -IC[2], (C[1] + C[2]) -> C[1]})//ExpandVerify the result using DSolveValue:
DSolveValue[x ^ 2 y''[x] + x y'[x] + (x ^ 2 - 1) y[x] == 0, y[x], x]Use MellinTransform to find the first two terms in the asymptotic expansion for a function that is defined by an infinite series:
f[x_] := Inactive[Sum][((-1)^k*Log[k])/E^(k^2*x), {k, 1, Infinity}]Compute the Mellin transform of
:
MellinTransform[f[x], x, s]Activate[%]Compute the residues at
and
to obtain the required asymptotic expansion:
Residue[% x ^ (-s), {s, 0}] + Residue[% x ^ (-s), {s, -1}]//SimplifyProperties & Relations (11)
Use Asymptotic to compute an asymptotic approximation:
Asymptotic[Inactive[MellinTransform][E ^ (-x), x, s], s -> Infinity] MellinTransform computes the integral
:
MellinTransform[E ^ (-x), x, s]Obtain the same result using Integrate:
Integrate[ E ^ (-x) x ^ (s - 1), {x, 0, ∞}, Assumptions -> s > 0]MellinTransform and InverseMellinTransform are mutual inverses:
InverseMellinTransform[MellinTransform[f[x], x, s], s, x]MellinTransform[InverseMellinTransform[g[s], s, x], x, s]Verify the relationship for a specific function:
MellinTransform[E ^ (-x), x, s]InverseMellinTransform[%, s, x]MellinTransform is a linear operator:
MellinTransform[a f[x] + b g[x], x, s]The Mellin transform of
is given by
:
MellinTransform[x f'[x], x, s]MellinTransform[x ^ 2 f''[x], x, s]The Mellin transform of
is given by
for positive values of a:
f[x_] := E ^ (-x)a = 3;MellinTransform[f[a x], x, s] == MellinTransform[f[x], x, s] / a ^ sThe Mellin transform of
is given by
for real values of a:
f[x_] := E ^ (-x)a = 3;MellinTransform[f[x ^ a], x, s] == MellinTransform[f[x], x, s / a] / Abs[a]The Mellin transform of
is given by
:
MellinTransform[Integrate[f[t], {t, 0, x}], x, s]The Mellin transform of
is given by
:
MellinTransform[Integrate[f[t], {t, x, ∞}], x, s]The Mellin transform of a Mellin convolution is the product of the individual Mellin transforms:
MellinTransform[MellinConvolve[f[t], g[t], t, x], x, s]Verify the relationship for a specific pair of functions:
f[t_] := 1 / (t + 1)g[t_] := E ^ (-t)MellinTransform[MellinConvolve[f[t], g[t], t, x], x, s]MellinTransform[g[x], x, s]MellinTransform[1 / (x + 1), x, s]MellinTransform is related to FourierTransform by
:
f[x_] := UnitBox[x - 1]Sqrt[2 π]FourierTransform[f[E ^ x], x, s] == MellinTransform[f[x], x, I s]//FullSimplifyPossible Issues (1)
Different expressions may have the same MellinTransform:
MellinTransform[E ^ (-x), x, s]MellinTransform[E ^ (-x) - 1 + x, x, s]The transforms in these examples have different regions of convergence:
mt1 = MellinTransform[E ^ (-x), x, s, GenerateConditions -> True]mt2 = MellinTransform[E ^ (-x) - 1 + x, x, s, GenerateConditions -> True]With region of convergence given, the inverse transform gives back the input:
InverseMellinTransform[mt1, s, x]InverseMellinTransform[mt2, s, x]Neat Examples (1)
Create a table of basic Mellin transforms:
flist = {E ^ (-a x), HeavisideTheta[x - a]x ^ b, DiracDelta[x - a],
1 / (1 + x), 1 / (1 + x ^ 2), Log[1 + x], Sin[x], Cos[x], E ^ (-x ^ 2), 1 / (E ^ x ^ (-1) x), BesselJ[n, x], BesselK[n, x]};Grid[Prepend[{#, MellinTransform[#1, x, s]}& /@ flist, {f[x], MellinTransform[f[s], x, s]}], IconizedObject[«Grid options»]]//TraditionalFormRelated Guides
History
Text
Wolfram Research (2016), MellinTransform, Wolfram Language function, https://reference.wolfram.com/language/ref/MellinTransform.html.
CMS
Wolfram Language. 2016. "MellinTransform." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/MellinTransform.html.
APA
Wolfram Language. (2016). MellinTransform. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/MellinTransform.html
BibTeX
@misc{reference.wolfram_2026_mellintransform, author="Wolfram Research", title="{MellinTransform}", year="2016", howpublished="\url{https://reference.wolfram.com/language/ref/MellinTransform.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_mellintransform, organization={Wolfram Research}, title={MellinTransform}, year={2016}, url={https://reference.wolfram.com/language/ref/MellinTransform.html}, note=[Accessed: 13-June-2026]}