public static void preInitialiseSOM(String t_DataPath,String savedNetworkPath,int mapWidth)
    {
	//Get training data
	I_DataSet t_data = new PatternFileProcessor().process(t_DataPath);

	// Build Map
	SelfOrganizingMap map = new SelfOrganizingMap(t_data.getDataAsArrayList());

	// How many attributes does the data have?
	// Find out and pass this value to the map, so that
	// the map can accommodate them.
	map.setAttributes(t_data.getColumns());

	// What map width to use? 
	map.setMapWidth(mapWidth);

	// Normalise Inputs
	map.NormalisePatterns();

	// Build map
	map.Build();

	// Train map
	//map.Train(map.maximumErrorRate);

	// Find Clusters of positive pulsar instances in the map
	SOMClassifier classifier = new SOMClassifier(map);

	// Save 
	Common.fileDelete(savedNetworkPath);

	if(SOMClassifier.write(classifier,savedNetworkPath))
	    System.out.println("Self Organizing Map state persisted.");
    }