freealg.distributions.FreeLevy.stieltjes#

FreeLevy.stieltjes(z, max_iter=100, tol=1e-12)#

Stieltjes transform of distribution.

Parameters:
zcomplex or numpy.ndarray

A complex scalar or a 1D or 2D array of query points.

max_iterint, default=100

Maximum number of Newton iterations to solve for Stieltjes transform.

tolfloat, default=1e-12

The tolerance of Newton iterations.

Returns:
mcomplex or numpy.ndarray

A complex scalar or array of the same size as the input z, as the Stieltjes transform \(m = m(z)\).

See also

density
roots

Notes

Stieltjes transform is the physical (Herglotz) branch of of the polynomial \(P(z, m)\).

Examples

>>> import numpy
>>> from freealg.distributions import FreeLevy

>>> # Create an object of the class
>>> fl = FreeLevy(t=[2.0, 5.5], w=[0.75, 1-0.75], lam=0.1, a=0,
...               sigma=0.9)

>>> # Query at given locations
>>> z = numpy.linspace(-1, 1) + 1j
>>> m = fl.stieltjes(z)