private double[][] convert(Array array)
{
var multivariate = array as double[][];
if (multivariate != null) return multivariate;
var univariate = array as double[];
if (univariate != null) return Matrix.Split(univariate, Dimension);
throw new ArgumentException("Invalid array argument type.", "array");
}