/src/main/java/net/finmath/singleswaprate/annuitymapping/BasicPiterbargAnnuityMapping.java
return ;
return -initialAnnuities[numberOfPeriods-1] *innerDerivative /value /value - expectationCorrection * normalizer.getFirstDerivative ( swapRate ) ;
for(int index = 0; index < numberOfPeriods; index++){ value += (Math.pow(term, -exponents[index])) *periodLengths[index] /denominators[index]; innerDerivative += (Math.pow(term, -exponents[index] -1)) *periodLengths[index] } innerDerivative *= periodLengths[numberOfPeriods-1] /exponentialDriverMeans[numberOfPeriods -1] /(periodLengths[numberOfPeriods-1] *initialSwapRates[numberOfPeriods -1] +1.0); <extra_id_0> } @Override public double getSecondDerivative(final double swapRate) { double term = periodLengths[numberOfPeriods-1] *swapRate +1.0; term /= periodLengths[numberOfPeriods-1] *initialSwapRates[numberOfPeriods -1] +1.0; term /= exponentialDriverMeans[numberOfPeriods -1];