fast DNA clustering (cd-hit-est)

cd-hit-est (http://weizhong-lab.ucsd.edu/cd-hit/) is a very widely used program for clustering and comparing large sets of DNA sequences. cd-hit-est is very fast and can handle extremely large databases. cd-hit helps to significantly reduce the computational and manual efforts in many sequence analysis tasks and aids in understanding the data structure and correct the bias within a dataset.

In this program, you can create a non-redudant DNA database in one step using one set of parameters.
Inputs:
(1) DNA FASTA file (required)
(2) Email address (optional)
(3) Parameters (optional)
Outputs:
output.zip(including the following five files
(1) README.txt: description of the five output files
(2) output.1: Final clustered non-redundant sequences in FASTA format
(3) output.1.clstr: Clusters with associated sequences (representative sequence in each cluster is ened with a "*")
(4) output.1.txt: Table of cluster results
(5) output.1.dist1.png: Cluster distribution picture
Usage of web server:
(1) Select a DNA fasta file from user's local computer. (required)
(2) Fill in user's email adress. (optional)
(3) Fill in parameters. (optional, modifiy it according to user's requirement)
(4) Click "Submit" button. (required)
Sequence file to upload (required):
Email (optional):
Parameters
show description
    -c  sequence identity threshold, default 0.9
        this is the default cd-hit's "global sequence identity" calculated as:
        number of identical amino acids in alignment
        divided by the full length of the shorter sequence
    -G  use global sequence identity, default 1
        if set to 0, then use local sequence identity, calculated as :
        number of identical amino acids in alignment
        divided by the length of the alignment
        NOTE!!! don't use -G 0 unless you use alignment coverage controls
        see options -aL, -AL, -aS, -AS
    -b  band_width of alignment, default 20
    -M  memory limit (in MB) for the program, default 800; 0 for unlimitted;
    -n  word_length, default 5, see user's guide for choosing it
    -l  length of throw_away_sequences, default 10
    -t  tolerance for redundance, default 2
    -d  length of description in .clstr file, default 20
        if set to 0, it takes the fasta defline and stops at first space
    -s  length difference cutoff, default 0.0
        if set to 0.9, the shorter sequences need to be
        at least 90% length of the representative of the cluster
    -S  length difference cutoff in amino acid, default 999999
        if set to 60, the length difference between the shorter sequences
        and the representative of the cluster can not be bigger than 60
    -aL alignment coverage for the longer sequence, default 0.0
        if set to 0.9, the alignment must covers 90% of the sequence
    -AL alignment coverage control for the longer sequence, default 99999999
        if set to 60, and the length of the sequence is 400,
        then the alignment must be >= 340 (400-60) residues
    -aS alignment coverage for the shorter sequence, default 0.0
        if set to 0.9, the alignment must covers 90% of the sequence
    -AS alignment coverage control for the shorter sequence, default 99999999
        if set to 60, and the length of the sequence is 400,
        then the alignment must be >= 340 (400-60) residues
    -A  minimal alignment coverage control for the both sequences, default 0
        alignment must cover >= this value for both sequences 
    -B  1 or 0, default 0, by default, sequences are stored in RAM
        if set to 1, sequence are stored on hard drive
        it is recommended to use -B 1 for huge databases
    -p  1 or 0, default 0
        if set to 1, print alignment overlap in .clstr file
    -g  1 or 0, default 0
        by cd-hit's default algorithm, a sequence is clustered to the first 
        cluster that meet the threshold (fast cluster). If set to 1, the program
        will cluster it into the most similar cluster that meet the threshold
        (accurate but slow mode)
        but either 1 or 0 won't change the representatives of final clusters
    -r  1 or 0, default 0, by default only +/+ strand alignment
        if set to 1, do both +/+ & +/- alignments    
EXAMPLE
Sequence file to upload (required): input.fasta
Email (optional): you@example.com
Parameters -d 0 -n 10 -l 11 -r 1 -p 1 -G 0 -c 0.95 -aS 0.8
show description
    -c  sequence identity threshold, default 0.9
        this is the default cd-hit's "global sequence identity" calculated as:
        number of identical amino acids in alignment
        divided by the full length of the shorter sequence
    -G  use global sequence identity, default 1
        if set to 0, then use local sequence identity, calculated as :
        number of identical amino acids in alignment
        divided by the length of the alignment
        NOTE!!! don't use -G 0 unless you use alignment coverage controls
        see options -aL, -AL, -aS, -AS
    -b  band_width of alignment, default 20
    -M  memory limit (in MB) for the program, default 800; 0 for unlimitted;
    -n  word_length, default 5, see user's guide for choosing it
    -l  length of throw_away_sequences, default 10
    -t  tolerance for redundance, default 2
    -d  length of description in .clstr file, default 20
        if set to 0, it takes the fasta defline and stops at first space
    -s  length difference cutoff, default 0.0
        if set to 0.9, the shorter sequences need to be
        at least 90% length of the representative of the cluster
    -S  length difference cutoff in amino acid, default 999999
        if set to 60, the length difference between the shorter sequences
        and the representative of the cluster can not be bigger than 60
    -aL alignment coverage for the longer sequence, default 0.0
        if set to 0.9, the alignment must covers 90% of the sequence
    -AL alignment coverage control for the longer sequence, default 99999999
        if set to 60, and the length of the sequence is 400,
        then the alignment must be >= 340 (400-60) residues
    -aS alignment coverage for the shorter sequence, default 0.0
        if set to 0.9, the alignment must covers 90% of the sequence
    -AS alignment coverage control for the shorter sequence, default 99999999
        if set to 60, and the length of the sequence is 400,
        then the alignment must be >= 340 (400-60) residues
    -A  minimal alignment coverage control for the both sequences, default 0
        alignment must cover >= this value for both sequences 
    -B  1 or 0, default 0, by default, sequences are stored in RAM
        if set to 1, sequence are stored on hard drive
        it is recommended to use -B 1 for huge databases
    -p  1 or 0, default 0
        if set to 1, print alignment overlap in .clstr file
    -g  1 or 0, default 0
        by cd-hit's default algorithm, a sequence is clustered to the first 
        cluster that meet the threshold (fast cluster). If set to 1, the program
        will cluster it into the most similar cluster that meet the threshold
        (accurate but slow mode)
        but either 1 or 0 won't change the representatives of final clusters
    -r  1 or 0, default 0, by default only +/+ strand alignment
        if set to 1, do both +/+ & +/- alignments    
Show an example
Submitting......
Program/Database References
1. "Clustering of highly homologous sequences to reduce the size of large protein database", Weizhong Li, Lukasz Jaroszewski and Adam Godzik Bioinformatics (2001) 17:282-283.
2. "Tolerating some redundancy significantly speeds up clustering of large protein databases", Weizhong Li, Lukasz Jaroszewski and Adam Godzik Bioinformatics (2002) 18:77-82.
3. "Cd-hit: a fast program for clustering and comparing large sets of protein or nucleotide sequences", Weizhong Li and Adam Godzik Bioinformatics (2006) 22:1658-1659.
4. "CD-HIT Suite: a web server for clustering and comparing biological sequences", Ying Huang, Beifang Niu, Ying Gao, Limin Fu and Weizhong Li Bioinformatics (2010) 26:680-682.
Program/Database Version
Program: cd-hit-est 4.5.3
Database: N/A