/src/main/java/net/finmath/montecarlo/interestrate/models/covariance/LIBORVolatilityModelPiecewiseConstant.java
super( timeToMaturityDiscretization, liborPeriodDiscretization) ;
super ( timeDiscretization, liborPeriodDiscretization ) ;
private final TimeDiscretization simulationTimeDiscretization; private final TimeDiscretization timeToMaturityDiscretization; private final Map<Integer, Map<Integer, Integer>> indexMap = new ConcurrentHashMap<>(); private RandomVariable[] volatility; private final boolean isCalibrateable; public LIBORVolatilityModelPiecewiseConstant(final TimeDiscretization timeDiscretization, final TimeDiscretization liborPeriodDiscretization, final TimeDiscretization simulationTimeDiscretization, final TimeDiscretization timeToMaturityDiscretization, final RandomVariable[] volatility, final boolean isCalibrateable) { <extra_id_0> randomVariableFactory = new RandomVariableFromArrayFactory(); final double maxMaturity = liborPeriodDiscretization.getTime(liborPeriodDiscretization.getNumberOfTimes()-1); int volatilityIndex = 0; for(int simulationTime=0; simulationTime<simulationTimeDiscretization.getNumberOfTimes(); simulationTime++) { final HashMap<Integer, Integer> timeToMaturityIndexing = new HashMap<>(); for(int timeToMaturity=0; timeToMaturity<timeToMaturityDiscretization.getNumberOfTimes(); timeToMaturity++) {