Closed MordorianGuy closed 1 year ago
There is the clock.rate
input, so something like this should work:
<tree spec="beast.base.evolution.tree.ClusterTree" clock.rate="0.001" ...
Does this not work?
There is the
clock.rate
input, so something like this should work:<tree spec="beast.base.evolution.tree.ClusterTree" clock.rate="0.001" ...
Does this not work?
I have used a RealParameter
, and it works, but the issue was more like a bug report 😅
By the way, have I understood you right that I may just use a string instead of creating a tag with RealParameter
spec?
The impression I got was that you were looking for a way to scale a cluster tree in the XML, not programmatically.
In the XML, a RealParameter Input can be initialised as a string value, like in the example. In a program, you can use this pattern:
tree = new ClusterTree();
tree.initByName("clock.rate", "0.001", "taxa",...
that is, initialise all inputs through initByName
, where the String constructor of the Input type is called when it is provided with a String value instead of an object.
What exactly is the bug?
The impression I got was that you were looking for a way to scale a cluster tree in the XML, not programmatically.
In the XML, a RealParameter Input can be initialised as a string value, like in the example. In a program, you can use this pattern:
tree = new ClusterTree(); tree.initByName("clock.rate", "0.001", "taxa",...
that is, initialise all inputs through
initByName
, where the String constructor of the Input type is called when it is provided with a String value instead of an object.What exactly is the bug?
Thank you very much for the clarification.
The bug is the absence of any clock.rate
input in an XML formed by BEAUti where I specified a cluster tree as initial and its clock rate.
Thanks for the explanation & bug report -- I can confirm that the value does not get written into the XML even though it can be changed in the XML. It appears that the value of the RealParameter changes, but because it is the default object and defaults are not written to the XML the parameter value does not end up in the output.
https://github.com/CompEvol/beast2/blob/67dd40a56650490702f2616b56bcfc27a0b6e6fa/src/beast/base/evolution/tree/ClusterTree.java#L74
I have explicitly set the rate of 0.001, but there is no input in my XML.