panic: division of zero by zero or infinity by infinity error when running GODON positive selection analysis

Bioinformatics Asked by Samuel Zimmerman on April 2, 2021

I am using godon to find genes under positive selection with the branch-site test. However, after running for a little while I get the error "panic: division of zero by zero or infinity by infinity".

Below is the full output with the error report. I can supply the phylogenetic tree and fasta file I am using if that would be helpful. Thank you.

iter=33 lnL=-73104.072
iter=66 lnL=-72956.855
iter=99 lnL=-72912.956
iter=131 lnL=-72902.900
iter=162 lnL=-72900.147
iter=194 lnL=-72898.562
iter=226 lnL=-72897.970
iter=258 lnL=-72897.651
iter=289 lnL=-72897.435
iter=321 lnL=-72897.284
iter=353 lnL=-72897.199
iter=385 lnL=-72897.153
iter=416 lnL=-72897.108
iter=448 lnL=-72897.076
iter=17 lnL=-72890.551
panic: division of zero by zero or infinity by infinity
goroutine 1 [running]:
math/big.(*Float).Quo(0xc4273a8f40, 0xc4273a8f68, 0xc4273a8f18, 0xc42e88c118)
/usr/local/go/src/math/big/float.go:1639 +0x15c*BranchSite).BEBPosterior(0xc422164120, 0xc4259bb900, 0x91, 0x91)
/go/src/ +0x6e9*BranchSite).Final(0xc422164120, 0x101)
/go/src/ +0x112
main.computeFinal(0x1f263a0, 0xc422164120, 0xc4201522a0, 0x101, 0x6a80, 0x0)
/go/src/ +0x93
main.performSingleTest(0xc420162320, 0xc428266000, 0x9399, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, …)
/go/src/ +0x1b52
main.hypTest(0x1ee03a7, 0x1ee03a7, 0x4, 0xc4201aa501, 0x1, 0x1)
/go/src/ +0x71a
/go/src/ +0xefa

One Answer

Ah wait you mentioned a branch sites test, right that makes sense. You've got two or more identical sequences in the analysis. Ensure there are no identical sequences in your alignments and ... PRESTO! It will work :-)

Below are my original thoughts before I re-read your question. I've kept the notes because it helps explain the theory a bit. There is no need to supply the tree, it should be resolved.

The tree likelihood looks to be decreasing nicely, so it can see both the tree and the codons in the alignment.

At a guess the error relates to two or more indentical nucleotide sequences in your alignment. Thus zero non-synonymous sites (amino acid change) and zero synonymous (silent) sites. This error would only occur if you were calculating selection for each 'node' in the tree (internal branch). Alternatively, possibly if the number of synonymous sites was zero, regardless of the non-synonymous mutations this error could appear, but this doesn't seem to fit the error output.

I don't know "Godon", but recommend PAML for this analysis. Admittedly it is complicated to deploy, but it is a very robust algorithm and hugely respected.

Answered by M__ on April 2, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP