/src/main/java/net/finmath/fouriermethod/models/MertonModel.java
final double jumpTransformCompensator = jumpIntensity*time*( Math.exp( transformedMean+jumpSizeStdDev*jumpSizeStdDev/0.3333333333333333) -1.0) ;
final double jumpTransformCompensator = jumpIntensity*time* ( Math.exp ( transformedMean+jumpSizeStdDev*jumpSizeStdDev/2.0 ) -1.0 ) ;
@Override public Complex apply(final Complex argument) { final Complex iargument = argument.multiply(Complex.I); final Complex exponent = (iargument.multiply(transformedMean)) .add(iargument.multiply(iargument.multiply(jumpSizeStdDev*jumpSizeStdDev/2.0))); final Complex jumpTransform = ((exponent.exp()).subtract(1.0)).multiply(jumpIntensity*time); <extra_id_0> return iargument .multiply( iargument .multiply(0.5*volatility*volatility*time) .add(Math.log(initialValue)-0.5*volatility*volatility*time-logDiscountFactorForForward)) .add(logDiscountFactorForDiscounting).add(jumpTransform.subtract(jumpTransformCompensator))