@Test
public void matchPointsToClusters() {
StandardKMeans_F64 alg = new StandardKMeans_F64(100,100,1,new InitializeStandard_F64());
alg.init(4, 123);
alg.clusters.resize(3);
alg.workClusters.resize(3);
alg.memberCount.resize(3);
alg.clusters.data[0] = new double[]{20,0,0,0};
alg.clusters.data[1] = new double[]{0,20,0,0};
alg.clusters.data[2] = new double[]{0,0,20,0};
List<double[]> points = new ArrayList<double[]>();
points.add( new double[]{20,5,0,0});
points.add( new double[]{25,-4,0,0});
points.add( new double[]{0,0,22,0});
alg.matchPointsToClusters(points);
assertEquals(2,alg.memberCount.get(0));
assertEquals(0,alg.memberCount.get(1));
assertEquals(1,alg.memberCount.get(2));
assertEquals(45,alg.workClusters.data[0][0],1e-8);
assertEquals(1 ,alg.workClusters.data[0][1],1e-8);
assertEquals(0 ,alg.workClusters.data[0][2],1e-8);
assertEquals(0 ,alg.workClusters.data[0][3],1e-8);
assertEquals(0 ,alg.workClusters.data[1][1],1e-8);
assertEquals(22,alg.workClusters.data[2][2],1e-8);
}