harryjubb / arpeggio

Calculation of interatomic interactions in molecular structures
http://biosig.unimelb.edu.au/arpeggioweb/
GNU General Public License v3.0
69 stars 24 forks source link

Command Line vs WebServer #8

Closed johnny92694 closed 5 years ago

johnny92694 commented 5 years ago

I ran arpeggio as so

python arpeggio.py my.pdb -s /D// -wh python show_contacts.py my.pdb -s

So I compared my .pml file with the .pse file I got from the web server, and they're slightly different.

I would like to know how can you produce the same results that you get from the web server using command line? What are the designated options for arpeggio.py when running on the web server? How do you produce .pse file with command line?

Thank you.

harryjubb commented 5 years ago

Hi,

So I compared my .pml file with the .pse file I got from the web server, and they're slightly different.

Can you describe the differences? If you can diff the .pmls that would be helpful. Were there any differences in the output files? Has it impacted on any interaction calculations?

I would like to know how can you produce the same results that you get from the web server using command line?

The web server does some PDB sanitisation to avoid some common failure cases. The functionality in the clean_pdb.py script in https://github.com/harryjubb/pdbtools is used for this, the exact implementation differs though as it was originally part of the web server before being factored out. I've added a section to the FAQ to reflect this.

The command line version has has minor updates since the release of the web server. This may account for some differences. If choosing between the web server and command line output, I recommend the command line as it has been recently updated.

What are the designated options for arpeggio.py when running on the web server?

The web server is run in the same fashion as your examples, with the -wh option and an optional selection.

How do you produce .pse file with command line?

Run the .pml file in PyMOL in batch mode with the -cq options, and appends commands to the .pml script (or run them after the script) to generate the .pse file. For example, to append to the .pml script to generate a PNG image and a .pse session:

with open(pml_script_path, 'a') as fo:
        fo.write('\n')
        fo.write('hide dashes, undefined-proximal\norient binding_site\npng {}, dpi=72, ray=1\nshow dashes, undefined-proximal\norient\nsave {}\nquit\n'.format(image_path, pse_path))

Let me know if those answer your questions.