Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't use FBD with fixed user-specified node times #303

Open
1 of 2 tasks
davidcerny opened this issue Aug 17, 2024 · 1 comment
Open
1 of 2 tasks

Can't use FBD with fixed user-specified node times #303

davidcerny opened this issue Aug 17, 2024 · 1 comment

Comments

@davidcerny
Copy link

davidcerny commented Aug 17, 2024

I wanted to run an FBD analysis where both the topology and node times (and, by extension, temporal branch lengths as well) are fixed to a user-specified tree. While fixing the topology is simple enough, fixing the clock (temporal) branch lengths only appears to be possible for ultrametric trees.

What is the current observed behaviour?

For every fossil tip, I get a warning like this one:

      Node (Asilisaurus_kongwe) is not at the same depth as some other tip taking calibration into account.

followed by:

      Fixed branch lengths do not satisfy clock      Error in command "Prset"
      There was an error on at least one processor
      The error occurred when reading char. 36-36 on line 193
         in the file '/Users/David/Downloads/FBD_test/FBDtest_fixed_topology_and_brlens.nex'

   Returning execution to command line ...

   Error in command "Execute"

This is despite the fact that the branch lengths in the user tree do satisfy all the tip calibrations – I checked.

It is of course still possible to fix node times by specifying propset NodesliderClock(V)$prob = 0;, but as far as I can tell, this does not fix them to the values from the user-supplied tree.

What is the expected/wanted behaviour?

As long as myTree satisfies all the tip calibrations, it should be possible to use the prset brlenspr=clock:fixed(myTree); command to run an FBD analysis with fixed node times.

How may we reproduce this bug?

Execute this Nexus file.

Would you be able to compile and run MrBayes to test fixes to this bug?

  • Yes, I know how to use git and how to compile MrBayes.
  • No, sorry.

What is the environment that you run MrBayes in?

  • Operating system (including variant and release): macOS 14.5 (Sonoma)
  • Version of MrBayes: 3.2.7a, latest version of the develop branch (e7b8431)
  • If possible, include the output of the Version command in MrBayes below:
Version:   3.2.7a
Features:  MPI
Host type: arm-apple-darwin23.5.0 (CPU: arm)
Compiler:  clang 15.0.0
@davidcerny davidcerny changed the title Can't use FBD with fixed node times Can't use FBD with fixed user-specified node times Aug 17, 2024
@zhangchicool
Copy link
Collaborator

zhangchicool commented Aug 29, 2024

Hi David,

I think I came across this error before. The reason is that mrbayes has very strict checking of the times, making it hard to satisfy the criterion. I was able to do it by using 10 decimals ( see the attached example ). But otherwise I would just comment out the checking code and recompile, if you are confident about the input tree.

In the long run, it would be nice if someone could refine the checking code so that people would not struggle with fixing the tree.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants