Наиболее близким в настоящее время в QuantLib является шаблон класса InverseCumulativeRng вместе с классом InverseCumulativePoisson;что-то вроде
MersenneTwisterUniformRng unifMt(seed);
InverseCumulativePoisson f(lambda);
InverseCumulativeRng<MersenneTwisterUniformRng, InverseCumulativePoisson> rng(unifMt, f);
даст вам генератор Пуассона.Имейте в виду, что он будет возвращать выборки в виде двойных, а не целых чисел: они будут целыми числами, но представлены в неправильном типе.
Кроме того, по какой-то причине InverseCumulativeRng не предоставляет конструктор, принимающийфункция.Странно, что мы это упустили ... В любом случае, вам придется редактироватьи добавь это;когда вы закончите, отправьте патч в список рассылки QuantLib, и я добавлю его в репозиторий.