Files
biyelunwen/99.scripts/miscs/mrbayes.sh
T
agent e467d67723 Add scripts for phylogenetic analysis using MrBayes and RAxML
- Created `mbblock.txt` for MrBayes configuration.
- Implemented `mrbayes.sh` to convert FASTA to Nexus and run MrBayes.
- Developed `raxml.sh` to run modeltest-ng and raxml-ng on alignments.
- Added `04.filter_ogs.sh` to filter orthologous groups based on taxon count and sequence length.
- Implemented `01.run_mrbayes.sh` to execute MrBayes for multiple FASTA files.
- Created `02.mbsum.sh` to summarize MrBayes output while skipping high DSF analyses.
- Developed `03.run_raxml.sh` to run raxml-ng on filtered alignments.
2025-12-20 23:33:05 +08:00

21 lines
513 B
Bash

#! /bin/bash
set -e
SCRIPTS=${SCRIPTS:-"$PROJECTHOME/99.scripts"}
if [ "$#" -ne 2 ]; then
echo "Usage: $0 <input_fasta> <output_nexus>"
exit 1
fi
in_fasta=$(readlink -f "$1")
out_nex=$2
# Convert fasta to nexus
out_dir=$(dirname "$out_nex")
mkdir -p "$out_dir"
seqmagick convert --output-format nexus --alphabet dna --input-format fasta "$in_fasta" "$out_nex"
# append MrBayes block to nexus file
cat "$SCRIPTS"/miscs/mbblock.txt >>"$out_nex"
# Run MrBayes
mb "$out_nex" >"${out_dir}"/mrbayes.log 2>&1