FePhyFoFum / phyx

phylogenetics tools for linux (and other mostly posix compliant) computers
blackrim.org
GNU General Public License v3.0
111 stars 17 forks source link

pxssplit: command not found #182

Open sbrobeson opened 6 months ago

sbrobeson commented 6 months ago

apparent manual information and front list of programs reference an alignment splitter 'pxssplit' but while make seemed to work I am not able to run the command, receiving "command not found". redoing the make simply informs me that pxssplit is up to date. (not sure if similar to this.)

josephwb commented 6 months ago

@sbrobeson You can compile it with:

make pxssplit

The fact that it is not in the default list of programs to compile means that it might not be fully tested yet. It looks like it is one of mine, so I will take a look at it tomorrow. Sorry for the trouble. If this is something that you want to use, then processing your file(s)/commands(s) might help vet it.

josephwb commented 6 months ago

Oof yeah this is not functional atm. I can get it working if that is what you need.

sbrobeson commented 6 months ago

it would be great if you were able to get it working, thanks! it's not mission critical but having this would potentially speed up some processing steps for me in the future. I am noticing the same problem with 'pxnni' if you are going in to fix parts of phyx. both make pxssplit and make pxnni work, but I cannot use them ("command not found").

josephwb commented 6 months ago

The "command not found" message means you have compiled them, but not installed them. make install will install any phyx program that has been compiled; i.e., you can call it from anywhere. Alternatively, you can call it locally by doing (for example) ./pxnni (or using a path if you are not in the src directory).

I don't recall the details of how useful the NNI program is... I know at some point I had wanted it to generate all possible NNIs given a tree, but with no pressing use it fell through the cracks. In principle it is doable...

For pxssplit we need to provide instructions for how the alignment is chopped up. I have been going back-and-forth with either a RAxML-type (i.e., 'modelfile')

DNA, mtDNA = 1-2066
DNA, CTYB = 1-1029
DNA, ND2 = 1030-2066
DNA, EEF = 2067-2990
DNA, GADPH = 2991-3406
DNA, HMG = 3407-4079
DNA, RHOD = 4080-5058
DNA, TGFb2 = 5059-5721

or NEXUS-type (i.e., CHARSETs)

CHARSET Full_mtDNA = 1-2066;
CHARSET CYTB = 1-1029; [1029]
CHARSET ND2 = 1030-2066; [1037]
CHARSET EEF = 2067-2990; [924]
CHARSET GADPH = 2991-3406; [416]
CHARSET HMG = 3407-4079; [673]
CHARSET RHOD = 4080-5058; [979]
CHARSET TGFb2 = 5059-5721; [663]
CHARSET Full_nuclear = 2067-5721; [3655]

although both will likely get implemented at some point. Is there one you prefer? I can get that one going first.

sbrobeson commented 3 months ago

sorry for forgetting about this temporarily! with regard to pxnni, no problem, it's not something I personally need to use... just thought I would mention it as I found it as another non-working entry in the program list.

for pxssplit I would probably favour the RAxML-type format, if only one can be prioritised. this isn't so urgent for me now as I slopped together a (less easy) workaround but may probably still be helpful for future alignment-rearranging.

josephwb commented 3 months ago

That is how I am leaning as well, although this was put on the back burner. Thanks for letting me know your preference.