question: public Object createParameter ( final Class < ? > c ) { if ( c == Integer . TYPE ) { return Integer . valueOf ( RANDOM . nextInt ( ) ) ; } else if ( c == Double . TYPE ) { return Double . valueOf ( RANDOM . nextDouble ( ) ) ; } else if ( c == double [ ] . class ) { final double [ ] v = new double [ DIM ] ; for ( int i = 0 ; i < DIM ; i ++ ) { v [ i ] = RANDOM . nextDouble ( ) ; } return v ; } else if ( c . isAssignableFrom ( RealVector . class ) ) { return createVector ( ) ; } else if ( c . isAssignableFrom ( UnivariateFunction . class ) ) { return new Sin ( ) ; } else { throw new IllegalArgumentException ( "could not create " + c ) ; } }
target:  Creates a new random object of the specified type.