Releases: sjspielman/pyvolve
Pyvolve v1.1.0
Pyvolve v1.0.3
A few small bug fixes:
- Addresses deepcopy bug in model parameters
- Ensures compatibility with Biopython >= 1.78 which has deprecated bio.alphabet (https://biopython.org/wiki/Alphabet)
Pyvolve v1.0.2
Patch update to address a numerical tolerance bug in the ECMunrest model stationary frequencies.
Pyvolve v1.0.1
Patch to fix a bug that caused pyvolve to crash when counting substitutions over branch lengths that are <=1e-8
Pyvolve v1.0.0
A new major release of pyvolve! Key new features include..
-
When calling an Evolver instance, you can specify the algorithm of simulation to be the Gillespie ("jump chain") algorithm. Rather than exponentiating the matrix to simulate substitutions, this algorithm simulates waiting times for individual changes. Activate with the argument
algorithm=1
. The default (exponentiation) isalgorithm=0
. -
Pyvolve will now track the number of substitutions which occur along each branch. These values are guaranteed to be accurate when setting
algorithm=1
, but will almost certainly be underestimates whenalgorithm=0
. Whenalgorithm=1
, individual substitutions are directly recorded, but withalgorithm=0
the calculations are simply P-distance calculations, which might be correct at very small branch lengths but don't trust it. There are two ways to access this information:- call up the Evolver attribute, e.g. for a variable called
my_evolver
, asmy_evolver.branch_substitution_counts
. This will give a dictionary of counts for each relevant class of substitutions (nucleotide, amino acid, synonymous changes, or custom if you are using a custom code) for each branch. If internal nodes are not labeled,pyvolve
will do it for you; examine this by printing the processed tree withprint_tree()
. - specify a
countfile
when calling your Evolver instance, e.g.countfile = "my_countfile.csv"
. This will write a CSV to that file containing all the information in the dictionary.
- call up the Evolver attribute, e.g. for a variable called
Happy pyvolving!
Pyvolve v0.9.2
Identical to 0.9.1 but named to match PyPI.
Pyvolve v0.9.1
Fixed incorrect implementation of AB protein model and added several more protein models, totaling:
ab
blosum62
cprev
dayhoff
dayhoffdcmut
flu
hivb
hivw
jtt
jttdcmut
lg
mtart
mtinv
mtmam
mtmet
mtrev24
mtver
mtzoa
pmb
rtrev
vt
wag
jc69
(aka poisson
)
gcprev
Pyvolve v0.9.0
Addressed a bug in the LG matrix
Pyvolve v0.8.9
Addresses a bug in the specification of +G+I models.
Pyvolve v0.8.8
Inclusion of six additional protein models: HIVW, HIVB, mtMet, mtInv, mtVer, gcpREV.