/src/main/java/net/finmath/montecarlo/automaticdifferentiation/backward/alternative/RandomVariableAAD.java
resultrandomvariable = ( variableIndex == getParentIDs( ) [0]) ? Y.mult( ownRandomVariable)
resultrandomvariable = ( variableIndex == getParentIDs ( ) [0] ) ? Y.mult ( 2.0 ) .mult ( X.mult ( Y.add ( X.getAverage ( Y ) * ( X.size ( ) -1 ) ) .sub ( X.getAverage ( Y ) ) ) ) .div ( Math.sqrt ( X.getVariance ( Y ) ) ) : X.mult ( 2.0 ) .mult ( Y.mult ( X.add ( Y.getAverage ( X ) * ( X.size ( ) -1 ) ) .sub ( Y.getAverage ( X ) ) ) ) .div ( Math.sqrt ( Y.getVariance ( X ) ) ) ;
break; case VARIANCE: resultrandomvariable = (variableIndex == getParentIDs()[0]) ? Y.mult(2.0).mult(X.mult(Y.add(X.getAverage(Y)*(X.size()-1)).sub(X.getAverage(Y)))) : X.mult(2.0).mult(Y.mult(X.add(Y.getAverage(X)*(X.size()-1)).sub(Y.getAverage(X)))); break; case STDEV: <extra_id_0> break; case STDERROR: resultrandomvariable = (variableIndex == getParentIDs()[0]) ? Y.mult(2.0).mult(X.mult(Y.add(X.getAverage(Y)*(X.size()-1)).sub(X.getAverage(Y)))).div(Math.sqrt(X.getVariance(Y) * X.size())) : X.mult(2.0).mult(Y.mult(X.add(Y.getAverage(X)*(X.size()-1)).sub(Y.getAverage(X)))).div(Math.sqrt(Y.getVariance(X) * Y.size())); break; case POW: