public boolean locateClustersSimplified(I_DataSet t_data)
    {
	heatMap = new ArrayList<FrequencyPoint>();

	positivePatterns = new ArrayList<I_InputPattern>();
	negativePatterns = new ArrayList<I_InputPattern>();

	for(int row = 0; row < t_data.getRows();row++)
	{
	    if(t_data.getDataRow(row).getClassMembership().equals(Constants.PULSAR))
		positivePatterns.add(t_data.getDataRow(row));
	    else if(t_data.getDataRow(row).getClassMembership().equals(Constants.NOT_PULSAR))
		negativePatterns.add(t_data.getDataRow(row));

	}

	// The number of input patterns trained on.
	int positive_patterns = positivePatterns.size();
	int negative_patterns = negativePatterns.size();

	if(positivePatterns != null & negativePatterns != null)
	{
	    System.out.println("Positive Patterns: "+positive_patterns);
	    System.out.println("Negative Patterns: "+negative_patterns);

	    // Now find where these positive instances occur in the map
	    positiveCoords = new ArrayList<Point>();
	    negativeCoords = new ArrayList<Point>();

	    for(int i = 0; i < positivePatterns.size() ; i++)
	    {
		Neuron winner = map.getWinningNeuron(positivePatterns.get(i).getData());
		Point p = new Point(winner.X,winner.Y);

		if(!positiveCoords.contains(p))
		    positiveCoords.add(p);

		boolean recorded = false;

		for(int j = 0 ; j < heatMap.size(); j++)
		{
		    if(heatMap.get(j).X == p.x &&
			    heatMap.get(j).Y == p.y)
		    {
			heatMap.get(j).frequency++;
			recorded = true;
			break;
		    }
		}

		if(!recorded) { heatMap.add(new FrequencyPoint(p.x,p.y,1)); }
	    }

	    for(int i = 0; i < negativePatterns.size() ; i++)
	    {
		Neuron winner = map.getWinningNeuron(negativePatterns.get(i).getData());
		Point p = new Point(winner.X,winner.Y);

		if(!negativeCoords.contains(p))
		    negativeCoords.add(p);
	    }

	    Collections.sort(this.positiveCoords, new PointCompare());
	    Collections.sort(this.negativeCoords, new PointCompare());
	    return true;
	}
	else
	    return false;
    }