/src/main/java/net/finmath/fouriermethod/models/HestonModel.java
iargument.multiply( gamma).add( iargument.multiply( -1) ).multiply( 0.5).multiply( 2 * xi * xi) ).sqrt( ) ;
iargument.multiply ( iargument ) .add ( iargument.multiply ( -1 ) ) .multiply ( 0.5 ) .multiply ( 2 * xi * xi ) ) .sqrt ( ) ;
return new CharacteristicFunction() { @Override public Complex apply(final Complex argument) { final Complex iargument = argument.multiply(Complex.I); final Complex gamma = iargument.multiply(rho * xi).subtract(kappa).pow(2) .subtract( <extra_id_0> final Complex a = iargument .multiply(rho * xi) .subtract(kappa) .subtract(gamma).multiply((-theta*kappa * time) / (xi * xi)) .subtract(iargument.multiply(rho * xi).subtract(kappa).subtract(gamma) .multiply(new Complex(1).divide(gamma.multiply(time).exp()).subtract(1).divide(gamma))