code: private void runDbSearch(AtomCache cache, String searchFile,
  			String outputFile,int useNrCPUs, StartupParameters params) throws ConfigurationException {
  
  
  		System.out.println("will use " + useNrCPUs + " CPUs.");
  
  		PDBFileReader reader = new PDBFileReader();
  		Structure structure1 = null ;
  		try {
  			structure1 = reader.getStructure(searchFile);
  		} catch (IOException e) {
  			throw new ConfigurationException("could not parse as PDB file: " + searchFile);
  		}
  
  		File searchF = new File(searchFile);
  		String name1 = "CUSTOM";
  
  
  
  		StructureAlignment algorithm =  getAlgorithm();
  
  		MultiThreadedDBSearch dbSearch = new MultiThreadedDBSearch(name1,
  				structure1,
  				outputFile,
  				algorithm,
  				useNrCPUs,
  				params.isDomainSplit());
  
  		dbSearch.setCustomFile1(searchF.getAbsolutePath());
  
  		dbSearch.run();
  
  
  	}
docs: Do a DB search with the input file against representative PDB domains
  
  @param cache
  @param searchFile
  @param outputFile
  @throws ConfigurationException