Hi Adam,

On my first attempt with Jared's commands, I pasted both for loops at the top 
PyMOL prompt with a semicolon between the commands.
This failed because I created a Python syntax error. 

When I issued Jared's commands one at a time, they worked.

Alternatively, rewrite Jared's for loops as list comprehensions.
Now you can paste the two list comprehensions separated by a semicolon at the 
PyMOL prompt.

[cmd.bond(f"/5fur//E/{i}/O3'", f"/5fur//E/{i+1}/P") for i in range(1, 80)]; 
[cmd.bond(f"/5fur//F/{i}/O3'", f"/5fur//F/{i+1}/P") for i in range(81, 160)]

This worked for me. I am using PyMOL 2.3.4, the incentive product, but it 
should work for older versions, even PyMOL 0.99.

You can issue many commands on one line if they are separated by semicolons. 
There are some restrictions and limitations.
For more details, https://github.com/MooersLab/EasyPyMOL and 
https://www.ncbi.nlm.nih.gov/pubmed/27488983

Best regards,

Blaine

Blaine Mooers, Ph.D.
Associate Professor
Department of Biochemistry and Molecular Biology
College of Medicine
University of Oklahoma Health Sciences Center
S.L. Young Biomedical Research Center (BRC) Rm. 466
975 NE 10th Street, BRC 466
Oklahoma City, OK 73104-5419

________________________________________
From: h. adam steinberg [h.adam.steinb...@gmail.com]
Sent: Sunday, March 22, 2020 8:16 AM
To: Jared Sampson
Cc: pymol-users
Subject: [EXTERNAL] Re: [PyMOL] broken DNA cartoon

Thank you Jared!

The commands didn’t work, but at least I now know why, and how to manually fix 
this.

On Mar 20, 2020, at 10:37 PM, Jared Sampson 
<jared.samp...@columbia.edu<mailto:jared.samp...@columbia.edu>> wrote:

Hi Adam -

That's a fun one.  It appears that most of these O3' atoms are not bonded to 
the P atom of the following nucleotide, which you can see if you show the DNA 
chains as sticks.  Creating a bond via `bond atom1, atom2` results in a normal 
cartoon.  Fortunately, the DNA chains are sequentially numbered, so you can do 
something like:

for i in range(1, 80): cmd.bond(f"/5fur//E/{i}/O3'", f"/5fur//E/{i+1}/P")
for i in range(81, 160): cmd.bond(f"/5fur//F/{i}/O3'", f"/5fur//F/{i+1}/P")

The offending bond lengths are much longer than a typical P–O bond, which is 
why PyMOL's default distance-based bonding doesn't pick it up.

Hope that helps.

Cheers,
Jared



From: h. adam steinberg 
<h.adam.steinb...@gmail.com><mailto:h.adam.steinb...@gmail.com>
Reply: h. adam steinberg 
<h.adam.steinb...@gmail.com><mailto:h.adam.steinb...@gmail.com>
Date: March 20, 2020 at 9:59:45 PM
To: pymol-users 
<pymol-users@lists.sourceforge.net><mailto:pymol-users@lists.sourceforge.net>
Subject:  [PyMOL] broken DNA cartoon

Hi All,

When I open 5FUR either from my drive or via fetch, the DNA cartoon is broken 
and mostly missing (it should span from left to right). Any ideas on how to get 
the cartoon to work?

Pymol version 2.3.4


_______________________________________________
PyMOL-users mailing list
Archives: 
http://www.mail-archive.com/pymol-users@lists.sourceforge.net<https://urldefense.proofpoint.com/v2/url?u=http-3A__www.mail-2Darchive.com_pymol-2Dusers-40lists.sourceforge.net&d=DwMFaQ&c=VjzId-SM5S6aVB_cCGQ0d3uo9UfKByQ3sI6Audoy6dY&r=k0gMbcsdOcdbPUNV5tW66KQSZfXL0ewVDPVBp7tqbks&m=ZC2vp55wsN9oFwgr_7x8uTkJWSRtOjFf-57C6a5eaPE&s=KSnVSB_1bn5_DFbGDbFWEcHlPnycwLNU9F17YUusNjw&e=>
Unsubscribe: 
https://sourceforge.net/projects/pymol/lists/pymol-users/unsubscribe<https://urldefense.proofpoint.com/v2/url?u=https-3A__sourceforge.net_projects_pymol_lists_pymol-2Dusers_unsubscribe&d=DwMFaQ&c=VjzId-SM5S6aVB_cCGQ0d3uo9UfKByQ3sI6Audoy6dY&r=k0gMbcsdOcdbPUNV5tW66KQSZfXL0ewVDPVBp7tqbks&m=ZC2vp55wsN9oFwgr_7x8uTkJWSRtOjFf-57C6a5eaPE&s=ykQcuf-69yksat0POrChZPePpS8xtSm3KjfNVuHSY6A&e=>



_______________________________________________
PyMOL-users mailing list
Archives: http://www.mail-archive.com/pymol-users@lists.sourceforge.net
Unsubscribe: 
https://sourceforge.net/projects/pymol/lists/pymol-users/unsubscribe

Reply via email to