Difference between revisions of "OrthoMCL"

From UFRC
Jump to navigation Jump to search
 
(16 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
 
__NOEDITSECTION__
 
__NOEDITSECTION__
[[Category:Software]][[Category:Bioinformatics]][[Category:Genomics]]
+
[[Category:Software]][[Category:Biology]][[Category:Genomics]]
 
{|<!--Main settings - REQUIRED-->
 
{|<!--Main settings - REQUIRED-->
 
|{{#vardefine:app|orthomcl}}
 
|{{#vardefine:app|orthomcl}}
Line 21: Line 21:
  
 
<!--Modules-->
 
<!--Modules-->
==Required Modules==
+
==Environment Modules==
[[Modules|modules documentation]]
+
Run <code>module spider {{#var:app}}</code> to find out what environment modules are available for this application.
===Serial===
 
*{{#var:app}}
 
 
==System Variables==
 
==System Variables==
* HPC_{{#uppercase:{{#var:app}}}}_DIR - installation directory
+
* HPC_{{uc:{{#var:app}}}}_DIR - installation directory
 
* HPC_ORTHOMCL_BIN - executable directory
 
* HPC_ORTHOMCL_BIN - executable directory
* HPC_ORTHOMCL_CONF - configuration directory. It contains the orthomcl.config file that provides the MySQL connection settings, credentials, and the database structure.
+
* HPC_ORTHOMCL_CONF - configuration directory. It contains template orthomcl.config files for SQLite and MySQL connection settings, credentials, and database structures.
 
{{#if: {{#var: exe}}|==How To Run==
 
{{#if: {{#var: exe}}|==How To Run==
The '<code>$HPC_ORTHOMCL_CONF/orthomcl.config</code>' file provides a template for configuring an OrthoMCL database. Change the database name from 'orthomcl_jdoe_myproject:' to your own database that has a name with a pattern <code>'orthomcl_$USER_project_name'</code> in the string <code>'dbConnectString=dbi:mysql:'''orthomcl_jdoe_myproject:''':orthomcldb.ufhpc'</code>. MySQL server will allow the orthomcl user to create databases with that name pattern.
+
===Configuration===
 +
;Note
 +
: Only SQLite is supported as an OrthoMCL database out of the box at this time unless you attempt to stand up your own MariaDB database in another job using a container on your own.
  
We also provide orthomcl database management scripts for your convenience. They include
+
The '<code>$HPC_ORTHOMCL_CONF/orthomcl.config</code>' file provides a template for configuring an OrthoMCL SQLite database. Copy it to your working directory with
* hpc_list_orthomcl_databases
+
$ cp $HPC_ORTHOMCL_CONF/orthomcl.config .
* hpc_create_orthomcl_database
 
* hpc_remove_orthomcl_database
 
  
Please triple-check the name of the database you are removing to make sure you only remove one of your databases, which you absolutely do not need anymore.
+
The '<code>$HPC_ORTHOMCL_CONF/orthomcl.config.sql</code>' file provides a template for configuring an OrthoMCL MySQL database. Copy it to your working directory with
 +
$ cp $HPC_ORTHOMCL_CONF/orthomcl.config.sql .
  
OrthoMCL documentation is available from several sources.
+
Don't forget to create the schema with the following '''before''' creating a database:
 +
orthomclInstallSchema orthomcl.config
  
* A User Guide and other documents in text format are located in /apps/orthomcl/VERSION/doc/OrthoMCLEngine/Main/ and at [http://orthomcl.org/common/downloads/software/v2.0/UserGuide.txt].
 
  
* An alternative User Guide can be found at [http://onlinelibrary.wiley.com/doi/10.1002/0471250953.bi0612s35/full Wiley Online Library].
+
A wrapper script -- '<code>orthomcl_wrapper_SQLITE</code>' -- that creates a suitable orthomcl.config file and automates much of the pipeline is provided:
 +
 +
$ orthomcl_wrapper_SQLITE -p compliantFASTA -u 2 -s 100
 +
-p path to folder with input fasta files
 +
-u position of unique IDs in fasta headers
 +
-s number of parallel blast jobs to run in a slurm array.
 +
 
 +
 
 +
The wrapper script writes a '<code>run_split_blast_array.sh</code>' script that can be modified to resubmit blast jobs if necessary, and a '<code>finish.orthomcl.sh</code>' script to be run after all blast jobs complete.
 +
 
 +
 
 +
* Documentation for SQLite support can be found at https://github.com/stajichlab/OrthoMCL.
 +
 
 +
* OrthoMCL User Guide can be found at [http://onlinelibrary.wiley.com/doi/10.1002/0471250953.bi0612s35/full Wiley Online Library].
  
 
* The original publications that describe the functionality of the software are [http://dx.doi.org/10.1101%2Fgr.1224503 10.1101/gr.1224503] and [http://dx.doi.org/10.1093%2Fnar%2Fgkj123 10.1093/nar/gkj123].
 
* The original publications that describe the functionality of the software are [http://dx.doi.org/10.1101%2Fgr.1224503 10.1101/gr.1224503] and [http://dx.doi.org/10.1093%2Fnar%2Fgkj123 10.1093/nar/gkj123].
 +
 +
 +
 
|}}
 
|}}
 
{{#if: {{#var: conf}}|==Configuration==
 
{{#if: {{#var: conf}}|==Configuration==

Latest revision as of 22:40, 28 January 2024

Description

orthomcl website  

OrthoMCL is a genome-scale algorithm for grouping orthologous protein sequences. It provides not only groups shared by two or more species/genomes, but also groups representing species-specific gene expansion families. So it serves as an important utility for automated eukaryotic genome annotation. OrthoMCL starts with reciprocal best hits within each genome as potential in-paralog/recent paralog pairs and reciprocal best hits across any two genomes as potential ortholog pairs. Related proteins are interlinked in a similarity graph. Then MCL (Markov Clustering algorithm,Van Dongen 2000; www.micans.org/mcl) is invoked to split mega-clusters. This process is analogous to the manual review in COG construction. MCL clustering is based on weights between each pair of proteins, so to correct for differences in evolutionary distance the weights are normalized before running MCL.

Environment Modules

Run module spider orthomcl to find out what environment modules are available for this application.

System Variables

  • HPC_ORTHOMCL_DIR - installation directory
  • HPC_ORTHOMCL_BIN - executable directory
  • HPC_ORTHOMCL_CONF - configuration directory. It contains template orthomcl.config files for SQLite and MySQL connection settings, credentials, and database structures.

How To Run

Configuration

Note
Only SQLite is supported as an OrthoMCL database out of the box at this time unless you attempt to stand up your own MariaDB database in another job using a container on your own.

The '$HPC_ORTHOMCL_CONF/orthomcl.config' file provides a template for configuring an OrthoMCL SQLite database. Copy it to your working directory with

$ cp $HPC_ORTHOMCL_CONF/orthomcl.config .

The '$HPC_ORTHOMCL_CONF/orthomcl.config.sql' file provides a template for configuring an OrthoMCL MySQL database. Copy it to your working directory with

$ cp $HPC_ORTHOMCL_CONF/orthomcl.config.sql .

Don't forget to create the schema with the following before creating a database:

orthomclInstallSchema orthomcl.config


A wrapper script -- 'orthomcl_wrapper_SQLITE' -- that creates a suitable orthomcl.config file and automates much of the pipeline is provided:

$ orthomcl_wrapper_SQLITE -p compliantFASTA -u 2 -s 100
-p path to folder with input fasta files 
-u position of unique IDs in fasta headers
-s number of parallel blast jobs to run in a slurm array.


The wrapper script writes a 'run_split_blast_array.sh' script that can be modified to resubmit blast jobs if necessary, and a 'finish.orthomcl.sh' script to be run after all blast jobs complete.




Citation

If you publish research that uses orthomcl you have to cite it as follows:

  1. Feng Chen, Aaron J. Mackey, Christian J. Stoeckert, Jr., and David S. Roos. OrthoMCL-DB: querying a comprehensive multi-species collection of ortholog groups. Nucleic Acids Res. 2006 34: D363-8. Please cite this paper if you publish research results benefited from OrthoMCL-DB.
  2. Li Li, Christian J. Stoeckert, Jr., and David S. Roos. OrthoMCL: Identification of Ortholog Groups for Eukaryotic Genomes. Genome Res. 2003 13: 2178-2189.
  3. Feng Chen, Aaron J. Mackey, Jeroen K. Vermunt, and David S. Roos. Assessing Performance of Orthology Detection Strategies Applied to Eukaryotic Genomes. PLoS ONE 2007 2(4): e383.