Running DNAAT
DNAAT is run from the command line using the main dnaat.py wrapper. This single entry point allows you to choose your alignment method and customize the parameters.
1. Setup
First, clone the DNAAT repository from GitHub and compile the C extensions using the included build script:
git clone https://github.com/no1berg/DNAAT.git
cd dnaat
python build.py
Note: This generates the necessary shared libraries (.dll, .so, or .dylib) for your operating system.
2. Basic Usage
The main script dnaat.py uses commands to select the alignment type. You must specify either global or local.
Global Alignment
To perform a global alignment on two sequences from a FASTA file:
python dnaat.py global path/to/your/sequences.fasta
Local Alignment
To perform a local alignment on two sequences from a FASTA file:
python dnaat.py local path/to/your/sequences.fasta
3. Customizing Parameters
You can customize the alignment parameters using optional arguments. These work for both global and local commands.
--match: Sets the score for a match (default: 1).--mismatch: Sets the score for a mismatch (default: -1).--gap-open: Penalty for opening a new gap (default: -3).--gap-extend: Penalty for extending an existing gap (default: -1).--alphabet: Sets the alphabet to use for scoring (default: "ACGT").--no-plot: Disables the heatmap visualization (useful for batch processing).
Example:
python dnaat.py global your_sequences.fasta --match 5 --mismatch -3 --gap-open -10 --gap-extend -1 --no-plot
4. Using Example Data
If you run a command without providing a file path, the tool will use built-in example sequences.
python dnaat.py local
5. Performance Testing
To benchmark the C-accelerated functions against a pure Python implementation, you can run the dedicated test script:
python test_performance.py