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

Feature/morphology2 #32

Open
wants to merge 65 commits into
base: paul_develop
Choose a base branch
from

Conversation

wrightaprilm
Copy link
Contributor

Assorted features to make morphology work.

roblanf and others added 30 commits June 24, 2013 16:32
TO DO:

put in a function to catch when you use phyml
"get_all_morphology_models" in phyml.py (it should return an empty
list).
This update was suggested (and massively helped out) by Chris Laumer at
Harvard.

LG4 models are mixture models, which divide up sites based on their
rates in different ways. LG4M can be combined (in RAxML) with other
models in partitioned analyses, but LG4X can't.

LG4M has 1 parameter (gamma rate). LG4X has six free parameters - 3
rates and 3 weights (it doesn't use a gamma rate distribution).

Note that we can now fit partitioned models in partitionfinder that
can't actually be used in RAxML or PhyML, because we can e.g. specify a
model list that includes combinations of models that RAxML can't deal
with.
this is to make sure that the default behaviour of PF is to only use
lists of models that can actaully be analysed in RAxML.
This update was suggested (and massively helped out) by Chris Laumer at
Harvard.

LG4 models are mixture models, which divide up sites based on their
rates in different ways. LG4M can be combined (in RAxML) with other
models in partitioned analyses, but LG4X can't.

LG4M has 1 parameter (gamma rate). LG4X has six free parameters - 3
rates and 3 weights (it doesn't use a gamma rate distribution).

Note that we can now fit partitioned models in partitionfinder that
can't actually be used in RAxML or PhyML, because we can e.g. specify a
model list that includes combinations of models that RAxML can't deal
with.
this is to make sure that the default behaviour of PF is to only use
lists of models that can actaully be analysed in RAxML.
it now saves two plots as pdfs - one for downloads, one for citations
The first step to removing all of the run files.
Conflicts:
	partfinder/parser.py
	partfinder/raxml_models.py
	partfinder/reporter.py
	partfinder/subset.py
still needs more work, but this is a good start
@roblanf
Copy link
Collaborator

roblanf commented Jan 31, 2015

This is a pretty big pull request, and includes ALL of Paul's stuff as well as ALL of April's stuff (right @pbfrandsen? @wrightaprilm?).

I wonder if we should wait until the workshop to merge this. There are bound to be a lot of conflicts that would probably be best addressed with Paul, Brett, and myself in the room at the same time!!

@wrightaprilm
Copy link
Contributor Author

So, yes, this is all of my stuff. My code should be easily mergeable with paul_develop (it's mostly model-handling additions), but I'm not able to speak to how paul_develop relates to the rest of the code.

@roblanf
Copy link
Collaborator

roblanf commented Jan 31, 2015

OK, I'm an idiot. I thought this was the big merge into the main branch, now I see you're merging with Paul_develop.

@brettc, what do you think the best way to handle this is?

@brettc
Copy link
Owner

brettc commented Jan 31, 2015

Given it is not on the main develop branch, I think this is fine as long as a) Paul is happy with it b) all tests pass. We plan to merge the morphology stuff in anyway, as well as Paul's stuff, so having it all in one place might help.

It looks mostly harmless to me from a quick scan, but 2 Questions:

  1. What is shelve doing in there?
  2. Why the changes to threadpool?

Brett

@wrightaprilm
Copy link
Contributor Author

  1. I forgot that call to shelve was there. It's from before I realized I should be pulling from paul_develop and was developing off a branch that used pickle. I'll pull it out.
  2. I was testing the code out in a virtual session on my department's cluster, but only had one CPU available. I don't know much about threading, but the code choked in that function and tossing in that switch fixed it. That might be enough of a corner case problem that this can be removed.

@pbfrandsen
Copy link
Collaborator

I think this should be pretty straightforward. I will spend some time running the tests and merging the changes into the paul_develop branch early next week.

Sent from my iPad

On Jan 31, 2015, at 3:20 PM, April Wright notifications@github.com wrote:

  1. I forgot that call to shelve was there. It's from before I realized I should be pulling from paul_develop and was developing off a branch that used pickle. I'll pull it out.
  2. I was testing the code out in a virtual session on my department's cluster, but only had one CPU available. I don't know much about threading, but the code choked in that function and tossing in that switch fixed it. That might be enough of a corner case problem that this can be removed.


Reply to this email directly or view it on GitHub.

@brettc
Copy link
Owner

brettc commented Feb 1, 2015

The threading problem sounds odd --- it shouldn't even be called when only a single thread is being used. I'll add this to our list of things to check for v2.0.

@roblanf
Copy link
Collaborator

roblanf commented Feb 1, 2015

Brett - start a new issue for the threading problem.

Paul - good luck!

On 1 February 2015 at 16:07, Brett Calcott notifications@github.com wrote:

The threading problem sounds odd --- it shouldn't even be called when only
a single thread is being used. I'll add this to our list of things to check
for v2.0.


Reply to this email directly or view it on GitHub
#32 (comment).

Rob Lanfear
School of Biological Sciences,
Macquarie University,
Sydney

phone: +61 (0)2 9850 8204

www.robertlanfear.com

@pbfrandsen
Copy link
Collaborator

Just by way of an update, the paul_develop branch fails a bunch of tests by itself, so I haven't completed the merge. I'm tracking down what is going wrong in paul_develop before I merge in the morphology branch.

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

Successfully merging this pull request may close these issues.

None yet

4 participants