@Test
public void testERiCResults() {
Database db = makeSimpleDatabase(UNITTEST + "hierarchical-3d2d1d.csv", 600);
// ERiC
ListParameterization params = new ListParameterization();
params.addParameter(COPAC.PARTITION_ALGORITHM_ID, DBSCAN.class);
params.addParameter(DBSCAN.MINPTS_ID, 30);
params.addParameter(DBSCAN.EPSILON_ID, 0);
// ERiC Distance function in DBSCAN:
params.addParameter(COPAC.PARTITION_DISTANCE_ID, ERiCDistanceFunction.class);
params.addParameter(ERiCDistanceFunction.DELTA_ID, 0.20);
params.addParameter(ERiCDistanceFunction.TAU_ID, 0.04);
// Preprocessing via Local PCA:
params.addParameter(COPAC.PREPROCESSOR_ID, KNNQueryFilteredPCAIndex.Factory.class);
params.addParameter(KNNQueryFilteredPCAIndex.Factory.K_ID, 50);
// PCA
params.addParameter(PCARunner.PCA_COVARIANCE_MATRIX, WeightedCovarianceMatrixBuilder.class);
params.addParameter(WeightedCovarianceMatrixBuilder.WEIGHT_ID, ErfcWeight.class);
params.addParameter(PCAFilteredRunner.PCA_EIGENPAIR_FILTER, RelativeEigenPairFilter.class);
params.addParameter(RelativeEigenPairFilter.EIGENPAIR_FILTER_RALPHA, 1.60);
ERiC<DoubleVector> eric = ClassGenericsUtil.parameterizeOrAbort(ERiC.class, params);
testParameterizationOk(params);
// run ERiC on database