* @throws OutputAlreadyExistsException
*/
public static void main(String [] args) throws ParseException, IOException, InvalidIndexException, OutputAlreadyExistsException
{
CommandLine cmd = new SimpleCli()
.addOption(new RequiredOption("i", true, "text file containing .csv of input data"))
.addOption(new RequiredOption("o", true, "output directory"))
.addOption(new RequiredOption("d", true, "dimension of vectors"))
.addOption(new RequiredOption("sep", true, "separator character delimiting fields in input"))
.addOption(new RequiredOption("np", true, "number of permutations to create for searching"))
.addOption(new RequiredOption("n", true, "number of hashes in hash family")).parse(args);
IndexOptions options = new IndexOptions();
options.numHashes = Integer.parseInt(cmd.getOptionValue("n"));
options.vectorDimension = Integer.parseInt(cmd.getOptionValue("d"));
options.hashFamily = HashFamily.getCosineHashFamily(options.vectorDimension, options.numHashes);