silently overrides initial proportion values
If sum of initial p0 and p1 >= ~.95 fastcodeml silently overrides these values. At the same time fastcodeml doesn't check if p0+p1 < 1. How it should be:
- If 0<p0+p1<1, the values shouldn't be overwriten.
- If p0+p1 > 1, program should exit with an error.
False override:
$ ./fast -hy 0 -b 1 -o -p p0=.4 -p p1=.553 ENSGT00390000016702.Primates.01.002.nwk ENSGT00390000016702.Primates.01.phy
Doing branch 1
LnL0: -3076.016672453507908 Function calls: 1
0.2476455 0.1007446 0.4252156 0.2753301 0.1283551 0.4976881 0.1622906 0.3852716
0.3788927 0.4720599 0.1965988
p0: 0.3997402 p1: 0.5526408 p2a: 0.0199870 p2b: 0.0276320
w0: 0.4000000 k: 0.2000000
No boundary check:
./fast -hy 0 -b 1 -o -p p0=2 -p p1=2 ENSGT00390000016702.Primates.01.002.nwk ENSGT00390000016702.Primates.01.phy
Doing branch 1
LnL0: -3259.721937976181380 Function calls: 1
0.5673338 0.5922620 0.5455047 0.3502837 0.4150040 0.4908271 0.5513535 0.5582327
0.3238036 0.4265502 0.1956523
p0: 0.4761905 p1: 0.4761905 p2a: 0.0238095 p2b: 0.0238095
w0: 0.4000000 k: 0.2000000