Skip to content

A pipeline for running MSMC on a SLURM-controlled Linux cluster

License

Notifications You must be signed in to change notification settings

pickettbd/msmc-slurmPipeline

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MSMC Pipeline

This is a pipeline for running MSMC on a SLURM-controlled Linux cluster.

Directory Structure and Installation

These scripts assume a very specific directory structure and naming scheme.
You can modify the scripts to avoid it, but using it should also be fairly straightforward. First, create the directory structure:

	mkdir some_project_dir
	cd some_project_dir
	mkdir -p data job_files/{success,failed}
	git clone https://github.com/pickettbd/msmc-slurmPipeline scripts-msmc

The scripts must from the main project directory (some_project_dir) (not from the scripts-msmc dir).

Data Requirements

This project is written to work with a de novo genome assembly in fasta format and alignments of long reads (e.g., PacBio CLR (corrected)) to that assembly in BAM format.
The assembly can be created with tools like Canu (which can also correct the long reads, if necessary). The alignments can be performed with a tool like minimap2.

Software Dependencies

These scripts assume a GNU bash shell and cluster job submission controlled by SLURM. Usage of sed, awk, grep, printf, find, etc. are assumed to be the GNU version instead of basic BSD or other POSIX-based version without GNU extensions. If your environment does not meet this assumption, please adjust the scripts accordingly. The following tools are assumed to be installed on your machine with the executables available in your $PATH. The project assumes they are availble via system modules (e.g., Tcl or Lua), but removing the module purge and module load _____ commands would remove the dependency on system modules.

  • MSMC (v1.1.0): Implementation of the multiple sequential markovian coalescent
  • msmc-tools (commit 123791f): Tools and Utilities for msmc and msmc2
  • samtools/bcftools (v1.11): Suites of programs for interacting with high-throughput sequencing data
  • Python (v3.9.0): Programming language (v3.6+ required)
  • R (v4.0.0): Programming language for statistical computing and plotting
    • ggplot2 (3.3.1): a system for declaratively creating graphics
    • tibble (3.0.1): a modern reimagining of the data.frame

Notes

This pipeline does not support file names or paths that have whitespace in them. This pipeline may be run for a single individual or multiple individuals of the same species. The assumption is that they share the same "reference" genome. If multiple individuals do exist, a SNPable mask must also be made.

Step-by-step Instructions

Please view INSTRUCTIONS.md for a guided walkthrough.

Licensing and Citation

Please see the LICENSE file for licensing information. If you rely on this repo for a project (especially one that ends up being published in a peer-reviewed publication), please link to this repo and cite our paper:

Pickett BD, Glass JR, Ridge PG, Kauwe JSK. 2021. De novo genome assembly of the marine teleost, Bluefin Trevally (Caranx melampygus). G3 Genes|Genomes|Genetics 11(10):jkab229. doi: 10.1093/g3journal/jkab229.

About

A pipeline for running MSMC on a SLURM-controlled Linux cluster

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published