How linudz/caastools works
CAAStools is a command-line bioinformatics suite for discovering and validating convergent amino-acid substitutions (CAAS) in orthologous-protein alignments. The principal workflow compares foreground and background species at alignment positions, filters candidate patterns, calculates empirical p-values, and writes discovery results. Separate resampling modes generate virtual phenotype groups; bootstrap analysis evaluates CAAS across those resamplings. The README documents these capabilities, while the sampled source shows discovery, alignment processing, statistics, and bootstrap internals. The launcher and some resampling dispatch details were not sampled, so their internal wiring is kept limited.
Main entry points: init_bootstrap.py Resampling · boot.py Bootstrap · disco.py Discovery · ct ct CLI
Components 16
CAAS Discovery
- Discovery
modules/disco.py - Phenotype Config
modules/pindex.py
Trait Resampling
- Resampling
modules/init_bootstrap.py - Phylogenetic Tree
- Trait Values
- RERconverge
- BM Permulations
scripts/permulations.r
Bootstrap Validation
- Bootstrap
modules/boot.py - Resampled Traits
modules/init_bootstrap.py
Alignment And Statistics
- Alignment Slicer
modules/runslice.py - Alignment Import
modules/alimport.py - Position Analysis
modules/caas_id.py - Pattern And P-values
modules/hyper.py
Other components
- Researcher
- ct CLI
ct - CAAS Results
Connections 21
- Researcher → ct CLI: runs tool
- ct CLI → Discovery: dispatches
- ct CLI → Resampling: dispatches
- ct CLI → Bootstrap: dispatches
- Discovery → Phenotype Config: loads config
- Discovery → Alignment Slicer: receives slices
- Alignment Slicer → Alignment Import: imports alignment
- Discovery → Position Analysis: processes positions
- Position Analysis → Pattern And P-values: calculates p-values
- Discovery → CAAS Results: writes candidates
- Researcher → Resampling: provides inputs
- Resampling → Phylogenetic Tree: reads tree
- Resampling → Trait Values: reads values
- Resampling → RERconverge: uses BM mode
- RERconverge → BM Permulations: runs script
- Resampling → Resampled Traits: writes groups
- Researcher → Bootstrap: requests validation
- Bootstrap → Resampled Traits: reads groups
- Bootstrap → Alignment Slicer: receives slices
- Bootstrap → Position Analysis: processes positions
- Bootstrap → CAAS Results: writes bootstrap results