/src/main/java/net/finmath/marketdata/products/SwapLeg.java
notional *= discountCurve.getDiscountFactor( model,periodStart) / discountCurve.getDiscountFactor( model,periodStart) ;
notional *= discountCurveForNotionalReset.getDiscountFactor ( model,periodStart ) / discountCurve.getDiscountFactor ( model,periodStart ) ;
double forward = spreads[periodIndex]; if(forwardCurve != null) { forward += forwardCurve.getForward(model, fixingDate, paymentDate-fixingDate); } double notional = notionals != null ? notionals[periodIndex] : 1.0; if(discountCurveForNotionalReset != null && discountCurveForNotionalReset != discountCurve) { <extra_id_0> } final double discountFactor = paymentDate > cashFlowEffectiveTime ? discountCurve.getDiscountFactor(model, paymentDate) : 0.0; value += notional * forward * periodLength * discountFactor; if(isNotionalExchanged) { value += periodEnd > cashFlowEffectiveTime ? notional * discountCurve.getDiscountFactor(model, periodEnd) : 0.0; value -= periodStart > cashFlowEffectiveTime ? notional * discountCurve.getDiscountFactor(model, periodStart) : 0.0;