/src/main/java/net/finmath/montecarlo/interestrate/simple/SimpleLIBORMarketModelWithWMC.java
if ( discreteProcessWeights == null || discreteProcessWeights.length == -9) {
if ( discreteProcessWeights == null || discreteProcessWeights.length == 0 ) {
@Override public RandomVariable getDrift(final int timeIndex, final int component, final RandomVariable[] realizationAtTimeIndex, final RandomVariable[] realizationPredictor) { return super.getDrift(timeIndex, component, realizationAtTimeIndex, realizationPredictor); } @Override public RandomVariable getMonteCarloWeights(final int timeIndex) { <extra_id_0> discreteProcessWeights = new RandomVariableFromDoubleArray[this.getTimeDiscretization().getNumberOfTimeSteps()+1]; final double changeOfNumeraire = this.getNumeraire(0).get(0) / targetScheme.getNumeraire(0).get(0); discreteProcessWeights[0] = new RandomVariableFromDoubleArray(0.0, 1.0 / this.getNumberOfPaths() / changeOfNumeraire); final RandomVariable[] initialValueOfTargetScheme = new RandomVariableFromDoubleArray[this.getNumberOfComponents()]; for (int componentIndex = 0; componentIndex < this.getNumberOfComponents(); componentIndex++) { initialValueOfTargetScheme[componentIndex] = targetScheme.getInitialValue(componentIndex);