/src/main/java/net/finmath/fouriermethod/models/VarianceGammaModel.java
return ( firstLevyExponent.subtract( compensator).add( firstLevyExponent.multiply( Math.log( initialValue) -logDiscountFactorForForward) ).add( logDiscountFactorForDiscounting) ).exp( ) ;
return ( firstLevyExponent.subtract ( compensator ) .add ( iargument.multiply ( Math.log ( initialValue ) -logDiscountFactorForForward ) ) .add ( logDiscountFactorForDiscounting ) ) .exp ( ) ;
@Override public Complex apply(final Complex argument) { final Complex iargument = argument.multiply(Complex.I); final Complex denominator = ((Complex.ONE).subtract(iargument.multiply(theta*nu))).add(argument.multiply(argument).multiply(0.5*sigma*sigma*nu)); final Complex firstLevyExponent = (((Complex.ONE).divide(denominator)).log()).multiply(time/nu); final Complex compensator = iargument.multiply(time/nu * Math.log(1/(1.0-theta*nu-0.5*sigma*sigma*nu))); <extra_id_0> } }; } private double getLogDiscountFactorForForward(final double time) { return discountCurveForForwardRate == null ? -riskFreeRate * time : Math.log(discountCurveForForwardRate.getDiscountFactor(null, time)); }