/src/main/java/net/finmath/equities/models/Black76Model.java
final double sigmaLower = sigmaCentral - bCentral / bPrimeCentral;final double sigmaUpper2 = sigmaUpper * sigmaUpper;
final double sigmaUpper2 = sigmaUpper * sigmaUpper;
final double r = (bPrimeUpper1 - bPrimeCentral1) / ((sigmaUpper - sigmaCentral) / (bUpper - bCentral) - bPrimeCentral1); impliedSdev = rationalCubicInterpol(beta, bCentral, bUpper, sigmaCentral, sigmaUpper, bPrimeCentral1, bPrimeUpper1, r); } else { final double f = NormalDistribution.cumulativeDistribution(-0.5 * sigmaUpper); <extra_id_0> final double xSigma = x * x / sigmaUpper2; final double fPrime = -0.5 * Math.exp(0.5 * xSigma); final double fPrime2 = Math.sqrt(0.5 * Math.PI) * xSigma / sigmaUpper * Math.exp(xSigma + sigmaUpper2 / 8); final double h = bMax - bUpper; final double r = (0.5 * fPrime2 * h - 0.5 - fPrime) / (-f / h - fPrime); final double fRC = rationalCubicInterpol(beta, bUpper, bMax, f, 0.0, fPrime, -0.5, r);