protected PointVectorValuePair optimizeInternal(final int maxEval, final FUNC f,
final double[] t, final double[] w,
final double[] startPoint) {
// Checks.
if (f == null) {
throw new NullArgumentException();
}
if (t == null) {
throw new NullArgumentException();
}
if (w == null) {
throw new NullArgumentException();
}
if (startPoint == null) {
throw new NullArgumentException();
}
if (t.length != w.length) {
throw new DimensionMismatchException(t.length, w.length);
}