A Julia package for computing free convolutions.
Currently free additive convolution of linear combinations of Jacobi and Point measures is supported, provided that the output measure is square-root decaying on multiple intervals.
using NumericalFreeProbability, Plots
sc = Semicircle()
pm = PointMeasure([-2,-1,1], [1/2, 1/4, 1/4])
u = sc ⊞ pm
xv = -4:0.01:4
plot(xv, sc[xv])
plot!(xv, pm[xv])
plot!(xv, u[xv])
sm = normalize(ChebyshevUMeasure(-3,-1) + ChebyshevUMeasure(1,3))
a = sm
xv = -15:0.01:15
plot(xv, a[xv])
for _=1:10
a = a ⊞ sm
plot!(xv, a[xv])
end
Chen, J., Olver, S. Computing Inverses of Stieltjes Transforms of Probability Measures. https://arxiv.org/abs/2410.16178