public double [ ] postConvert ( double [ ] X ) { if ( X . length != standardN ) { throw new IllegalArgumentException ( "wrong array dimension: " + X . length ) ; } double [ ] ret = new double [ originalN ] ; int cntSplitted = 0 ; for ( int i = standardS ; i < standardN ; i ++ ) { if ( splittedVariablesList . contains ( i - standardS ) ) { // this variable was splitted: x = xPlus-xMinus ret [ i - standardS ] = X [ i ] - X [ standardN + cntSplitted ] ; cntSplitted ++ ; } else { ret [ i - standardS ] = X [ i ] ; } } // this.postconvertedX = ret; return ret ; }
Get back the vector in the original components .