matrix_builder
Module¶
This module will generate the Markov chain’s instantaneous rate matrix, Q.

class
matrix_builder.
MatrixBuilder
(model_type, parameters)¶ Bases:
object
Parent class for model instantaneous matrix creation.
 Child class include the following:
 AminoAcid_Matrix
 Empirical amino acid models
 Nucleotide_Matrix
 Nucleotide models (GTR and nested)
 MechCodon_Matrix
 Socalled mechanistic codon models, which include GYstyle and MGstyle models (dN/dS models)
 ECM_Matrix
 ECM (Kosiol2007) empirical codon model
 MutSel_Matrix
 Mutationselection model (Halpern and Bruno 1998), extended for either codon or nucleotides
 Requires two positional argument:
 model_type, the type of model which will be built
 parameters, a dictionary containing parameters about the substitution process which will be checked.

class
matrix_builder.
AminoAcid_Matrix
(*args)¶ Bases:
matrix_builder.MatrixBuilder
Child class of MatrixBuilder. This class implements functions relevant to constructing amino acid model instantaneous matrices. Note that all empirical amino acid replacement matrices are in the file empirical_matrices.py.

class
matrix_builder.
Nucleotide_Matrix
(*args)¶ Bases:
matrix_builder.MatrixBuilder
Child class of MatrixBuilder. This class implements functions relevant to constructing nucleotide model instantaneous matrices. All models computed here are essentially nested versions of GTR.

class
matrix_builder.
MechCodon_Matrix
(*args)¶ Bases:
matrix_builder.MatrixBuilder
Child class of MatrixBuilder. This class implements functions relevant to “mechanistic” (dN/dS) codon models. Models include both GYstyle or MGstyle varieties, although users should always specify codon frequencies to class instance! Both dS and dN variation are allowed, as are GTR mutational parameters (not strictly HKY85).

class
matrix_builder.
MutSel_Matrix
(*args)¶ Bases:
matrix_builder.MatrixBuilder
Child class of MatrixBuilder. This class implements functions relevant to constructing mutationselection balance model instantaneous matrices, according to the HalpernBruno 1998 model. Here, this model is extended such that it can be used for either nucleotide or codon. This class will automatically detect which one you want based on the provided state frequencies or fitness values.

class
matrix_builder.
ECM_Matrix
(*args)¶ Bases:
matrix_builder.MatrixBuilder
Child class of MatrixBuilder. This class implements functions relevant to constructing a matrix specifically for the ECM (described in Kosiol2007) model. We support both restricted (instantaneous single changes only) and unrestricted (instantaneous single, double, or triple) versions of this model (see paper for details).
!!! NOTE: The ECM model supports omega (dN/dS) and kappa (TI/TV) ratios in their calculations, and therefore I have included these parameters here. HOWEVER, I do NOT recommend their use.