.. automodule:: oligotag
   
   :py:mod:`oligotag` specific options
   ------------------------------------   

   .. cmdoption::   -L <filename>, --oligo-list=<filename>   
   
        Filename containing a list of oligonucleotides. `oligotag` selects within this list 
        the oligonucleotides that match the specified options.
        
        Cannot be used with the -s option.
                       
  
   .. cmdoption::  -s ###, --oligo-size=###   
   
        Size of oligonucleotides to be generated.
        
        Cannot be used with the -L option.
        
        .. WARNING:: A size equal or greater than 8 leads to very long computing time and large memory.
                       
  
   .. cmdoption::  -f ###, --family-size=###   
   
        Size of oligonucleotide family to be generated.
                       
  
   .. cmdoption::  -d ###, --distance=###   
   
			Minimal distance between two oligonucleotides.
                       
  
   .. cmdoption::  -g ###, --gc-max=###   
   
			Maximum count of G or C nucleotides acceptable in the oligonucleotides.
                       
  
   .. cmdoption::  -a <IUPAC pattern>, --accepted=<IUPAC pattern>   
   
			Pattern of accepted oligonucleotide using the `IUPAC <../iupac>` code.
                       
  
   .. cmdoption::  -r <IUPAC pattern>, --rejected=<IUPAC pattern>   
   
			Pattern of rejected oligonucleotide using the `IUPAC <../iupac>` code.
                       
  
   .. cmdoption::  -p ###, --homopolymer=###   
   
			Reject oligonucleotides with homopolymer longer than the specified number.
                       
  
   .. cmdoption::  -P ###, --homopolymer-min=###   
   
			Accept only oligonucleotides with homopolymer longer or equal to the specified number.
                       
   
   .. cmdoption::  -T <seconde>, --timeout=<seconde>   
   
			Timeout to identify a set of oligonucleotides of good size, as defined by the -f option.
                      

   .. include:: ../optionsSet/defaultoptions.txt

	
   Examples
   --------
	
	*Example 1:*
	    
	    		.. code-block:: bash
	    
	       			> oligotag -s 5 -f 24 -d 3 -g 3 -p 2 > mytags.txt 
	     
			Searches for a family of at least 24 oligonucleotides of a length of 5 nucleotides,
			with at least 3 differences among them, with a maximum of 3 C/G, and without
			homopolymers longer than 2. The corresponding list of oligonucleotides is saved in
			the mytags.txt file. 
	   
	   
	*Example 2:*
	    
	    		.. code-block:: bash
	    
	       			>  oligotag -d 5 -L my_oligos.txt -f 10 -p 1 
	     
			Searches for a family of at least 10 oligonucleotides in the my_oligos.txt file, with 
			at least 5 differences among them, and without homopolymers. The my_oligos.txt file must 
			contain only a set of oligonucleotides of the same length, with one oligonucleotide per line.
			The corresponding list of oligonucleotides is printed on the terminal window.
	   
	
	
	*Example 3:*
	    
	    		.. code-block:: bash
	    
	       			> oligotag -s 7 -f 96 -d 3 -p 1 -r cnnnnnn > mytags.txt 
	     
			Searches for a family of at least 96 oligonucleotides of a length of 7 nucleotides,
			with at least 3 differences among them, without homopolymers, and without a 'c' in 
			the first position. The corresponding list of 105 oligonucleotides is saved in
			the mytags.txt file.
	   
	   
	*Example 4:*
	    
	    		.. code-block:: bash
	    
	       			> oligotag -s 9 -f 24 -d 3 -a yryryryry > mytags.txt 
	     
			Searches for a family of at least 24 oligonucleotides of a length of 9 nucleotides,
			with at least 3 differences among them, with an alternation of pyrimidines and purines. 
			The corresponding list of 25 oligonucleotides is saved in the mytags.txt file. With the 
			constraints imposed by the -a option, it is possible to have longer oligonucleotides.
			

   Reference
   ---------
		
	E. Coissac. Oligotag: a program for designing sets of tags for next-generation sequencing of multiplexed samples. Methods Mol Biol, 888:13Ð31, 2012.
	
	   
	   
	   