This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.


Dilogarithm function

MuPAD® notebooks are not recommended. Use MATLAB® live scripts instead.

MATLAB live scripts support most MuPAD functionality, though there are some differences. For more information, see Convert MuPAD Notebooks to MATLAB Live Scripts.




dilog(x) represents the dilogarithm function .

If x is a floating-point number, then dilog(x) returns the numerical value of the dilogarithm function. The special values:

dilog(-1) = ,

dilog(0) = ,

dilog(1/2) = ,

dilog(1) = 0,

dilog(2) = ,

dilog(I) = ,

dilog(-I)= ,

dilog(1+I) = ,

dilog(1-I) = ,

dilog(infinity) = -infinity

are implemented. For all other arguments, dilog returns a symbolic function call.

Functional identities are used to rewrite the result for exact numerical arguments of Type::Numeric that have a negative real part or are of absolute value larger than 1. Cf. Example 2.

dilog(x) coincides with polylog(2, 1-x).

Environment Interactions

When called with a floating-point argument, the function is sensitive to the environment variable DIGITS which determines the numerical working precision.


Example 1

We demonstrate some calls with exact and symbolic input data:

dilog(0), dilog(2/3), dilog(sqrt(2)), dilog(1 + I), dilog(x)

Floating point values are computed for floating-point arguments:

dilog(-1.2), dilog(3.4 - 5.6*I)

Example 2

Arguments built from integers and rational numbers are rewritten, if they lie in the left half of the complex plane or are of absolute value larger than 1. The following arguments have a negative real part:

dilog(-400/3), dilog(-1/2 + I)

The following arguments have an absolute value larger than 1:

dilog(31/30), dilog(1 + 2/3*I)

Example 3

The negative real axis is a branch cut of dilog. A jump of height 2 π iln(1 - x) occurs when crossing this cut at the real point x < 0:

dilog(-1.2), dilog(-1.2 + I/10^100), dilog(-1.2 - I/10^100)

Example 4

The functions diff, float, limit, and series handle expressions involving dilog:

diff(dilog(x), x, x, x), float(ln(3 + dilog(sqrt(PI))))

limit(dilog(x^10 + 1)/x, x = infinity)

series(dilog(x + 1/x)/x, x = -infinity, 3)



An arithmetical expression

Return Values

Arithmetical expression.

Overloaded By



L. Lewin (ed.), “Structural Properties of Polylogarithms”, Mathematical Surveys and Monographs Vol. 37, American Mathematical Society, Providence (1991).


dilog(x) coincides with for |x| < 1.

dilog has a branch cut along the negative real axis. The value at a point x on the cut coincides with the limit “from above”:


See Also

MuPAD Functions

Was this topic helpful?