sate-dev / sate-core

3 stars 3 forks source link

Reading likelihood from RAxML_info #1

Closed smirarab closed 12 years ago

smirarab commented 12 years ago

Currently the likelihood score is read from RAxML_log file. When MIX model is used (or if CAT model is used and RAxML version is 7.2.8) after the tree space is searched using CAT, a final round of model parameter optimization occurs under GAMMA.

The result from this final GAMMA-based round is not reported in RAxML_log file. Instead the results are reported in RAxML_info file. Function read_raxml_results from tools.py needs to change to read the likelilhood from the RAxML_info file instead of the log file.

Thanks Siavash

smirarab commented 12 years ago

The following code can be used to solve the issue

raxml_log = os.path.join(dir, 'RAxML_info.%s' % id)                            
l = filter(lambda x : x.find("Final GAMMA-based Score of best tree")!=-1 , open(raxml_log, 'rU').readlines()) 
score = float(l[0].split(" ")[-1])

Of course, if score is None after doing this, we should go back to looking at the RAxML_log file using existing code.

jeetsukumaran commented 12 years ago

Hi Siavash,

Again, would you mind posting this as an issue on the GitHub site? That way it will get on the TODO list!

-- jeet

On 10/18/11 2:42 PM, Siavash Mirarab wrote:

Currently the likelihood score is read from RAxML_log file. When MIX model is used (or if CAT model is used and RAxML version is 7.2.8) after the tree space is searched using CAT, a final round of model parameter optimization occurs under GAMMA.

The result from this final GAMMA-based round is not reported in RAxML_log file. Instead the results are reported in RAxML_info file. Function read_raxml_results from tools.py needs to change to read the likelilhood from the RAxML_info file instead of the log file.

Thanks Siavash

jeetsukumaran commented 12 years ago

Siavash,

I've done with this with the latest commit. Please let me know if it there are any issues.