Netiquette · Download · News · Gallery · Homepage · DSSR Manual · G-quadruplexes · DSSR-Jmol · DSSR-PyMOL · DSSR Licensing · Video Overview· RNA Covers

Author Topic: buggy rebuild  (Read 32540 times)

Offline lukeczapla

  • with-posts
  • *
  • Posts: 7
    • View Profile
buggy rebuild
« on: June 23, 2017, 01:44:45 pm »
I tried to rebuild this structure (base-pair step parameters) and it comes out as junk.  The first base-pair is not even in the standard reference frame near the origin.  It does this in both v2.1 and v2.3.

command:

rebuild -atomic structure-5000bp-ID0-B0-1.dat out.pdb


Thanks
Luke Czapla

Offline xiangjun

  • Administrator
  • with-posts
  • *****
  • Posts: 1650
    • View Profile
    • 3DNA homepage
Re: buggy rebuild
« Reply #1 on: June 23, 2017, 06:46:39 pm »
Hi Luke,

This is not a bug in rebuild but related to the limitation of the classic PDB format. You can easily verify this by checking the outputted PDB file. By reducing the number of base pairs (say to 500) in your input, you can get an expected structure in the PDB format.

Try the -xml option to output the desired structure in PDBML format, as shown below:

Code: [Select]
rebuild -atomic -xml structure-5000bp-ID0-B0-1.dat big-str.xml
HTH,

Xiang-Jun
« Last Edit: June 23, 2017, 07:52:44 pm by xiangjun »

Offline lukeczapla

  • with-posts
  • *
  • Posts: 7
    • View Profile
Re: buggy rebuild
« Reply #2 on: June 23, 2017, 08:03:27 pm »
It's more than just the numbers, something's really going wrong with your code, here's the first nucleotide (which should be at the origin), and in v2.3 it's exactly the same:

REMARK    3DNA v2.1-2014mar25, created and maintained by Xiang-Jun Lu (PhD)
ATOM      1  C1'   A A   1    1962.0311187.0561104.807  1.00  1.00           C 
ATOM      2  N9    A A   1    1963.2191186.2081104.807  1.00  1.00           N 
ATOM      3  C8    A A   1    1964.5341186.6071104.807  1.00  1.00           C 
ATOM      4  N7    A A   1    1965.3871185.6121104.807  1.00  1.00           N 
ATOM      5  C5    A A   1    1964.5811184.4811104.807  1.00  1.00           C 
ATOM      6  C6    A A   1    1964.8791183.1081104.807  1.00  1.00           C 
ATOM      7  N6    A A   1    1966.1211182.6191104.807  1.00  1.00           N 
ATOM      8  N1    A A   1    1963.8421182.2421104.807  1.00  1.00           N 
ATOM      9  C2    A A   1    1962.5981182.7331104.807  1.00  1.00           C 
ATOM     10  N3    A A   1    1962.1901184.0001104.807  1.00  1.00           N 
ATOM     11  C4    A A   1    1963.2431184.8341104.807  1.00  1.00           C 



But it's fine, if you don't want to fix it, I can use my own code to rebuild the DNAs.  Most programs don't seem to support this XML format.  It's really a simple fix, just output 2 decimals, it will be properly read in Chimera, VMD, and 3Dmol.


Offline xiangjun

  • Administrator
  • with-posts
  • *****
  • Posts: 1650
    • View Profile
    • 3DNA homepage
Re: buggy rebuild
« Reply #3 on: June 23, 2017, 08:23:27 pm »
Did you notice the diagnostic message when running 'rebuild' when the structure is big? The coordinates are reset to account for f8.3 format. To verify if 'rebuild' is doing what it is supposed to do, simply 'analyze' the generated structures. It should give the parameters you start with.

So far, I am not convinced "something is really going wrong" with analyze/rebuild. What to fix? Everything is working as expected, from my perspective. It is nice to have open discussions, on the 3DNA Forum.

Xiang-Jun
« Last Edit: June 23, 2017, 08:30:19 pm by xiangjun »

Offline lukeczapla

  • with-posts
  • *
  • Posts: 7
    • View Profile
Re: buggy rebuild
« Reply #4 on: June 23, 2017, 08:40:55 pm »
if it had a flag to handle big numbers using %8.2f or %8.1f and override what you believe to be the only "correct" way to write a PDB file, that'd make it compatible with the common applications that are used to visualize systems and generate images, which don't agree with you that that's the only correct way to format a number in a PDB file.  So it's not that it's wrong, it's just that it's not flexible with these larger datasets and the reality of using the product for research.


Offline xiangjun

  • Administrator
  • with-posts
  • *****
  • Posts: 1650
    • View Profile
    • 3DNA homepage
Re: buggy rebuild
« Reply #5 on: June 23, 2017, 08:52:38 pm »
Quote
what you believe to be the only "correct" way to write a PDB file

Well, I just follow the standard PDB format, and as shown in the PDB entries from the RCSB. I have no opinon on this matter at all.

On a practical side, the source code of 3DNA is available. One can easily change f8.3 to f8.2 or f8.1, as desired. However, that will NOT solved the inherent limitation of the classic PDB format.

Xiang-Jun

Offline lukeczapla

  • with-posts
  • *
  • Posts: 7
    • View Profile
Re: buggy rebuild
« Reply #6 on: June 23, 2017, 09:02:29 pm »
Believe me, if it was just changing a sprintf("%8.3f") to a sprintf("%8.2f") in your code, I would've done that already, I have the source.  But with this whole operation you're performing (following that warning you mentioned, which I did see), it is not so simple.  Therefore I just ended up writing my own code to rebuild double-stranded DNA.  Correct me if I'm wrong though, because I will go and change it myself if it's that simple.

Thank you

Offline xiangjun

  • Administrator
  • with-posts
  • *****
  • Posts: 1650
    • View Profile
    • 3DNA homepage
Re: buggy rebuild
« Reply #7 on: June 23, 2017, 09:16:09 pm »
The thread has diverged from its original subject matter. To repeat my point, 3DNA 'rebuild' is working as designed, from v1.5 in 2003, upto the current v2.3. I may consider an option for PDBx/mmCIF output format, but the PDB format will stay as is.

I'm glad you've written your own code to build your DNA model. Good luck!

Xiang-Jun


Offline lukeczapla

  • with-posts
  • *
  • Posts: 7
    • View Profile
Re: buggy rebuild
« Reply #8 on: June 23, 2017, 10:15:35 pm »
Ok I think I fixed it. I changed a line in reset_xyz() function to not reset the bp unless it's bigger than 99999.9 or -99999.99 and then it really is just changing to %8.2.  I should be good to go.


Offline xiangjun

  • Administrator
  • with-posts
  • *****
  • Posts: 1650
    • View Profile
    • 3DNA homepage
Re: buggy rebuild
« Reply #9 on: June 23, 2017, 10:32:32 pm »
Hi Luke,

Thanks for your feedback. I'm adding the --cif (or --mmcif) option to 'rebuild' and 'fiber' to handle large structures that cannot be accommodated by the classic PDB format. The --xml option was added in 3DNA before the PDBx/mmCIF format became the standard. As you noted, the PDBML (XML) format is seldomly implemented in common molecular viewers (including Jmol/PyMOL, as far as I have tested).

I'll release an updated 3DNA v2.3 when the coding of the --cif option is done. I've originally planed to add this feature to 3DNA v3. Since you've brought up this issue to my attention, I thought it'd be helpful to get it added in v2.3 as well.

Best regards,

Xiang-Jun 
« Last Edit: July 09, 2017, 10:33:30 am by xiangjun »

Offline lukeczapla

  • with-posts
  • *
  • Posts: 7
    • View Profile
Re: buggy rebuild
« Reply #10 on: June 23, 2017, 10:49:08 pm »
Thank you.  I had to play tricks with reverse_stnd2() and the spacings in the PDB prints to make something that a viewer could read.  So if you could implement that support for the PDBx/mmCIF format, then I won't have to remove all the CONECT records for it to view properly.  It is well intentioned and I want to make a web system that can simulate and visualize these really long DNA molecules and include 3DNA in the pipeline.

Thanks again.


Offline xiangjun

  • Administrator
  • with-posts
  • *****
  • Posts: 1650
    • View Profile
    • 3DNA homepage
Re: buggy rebuild
« Reply #11 on: June 23, 2017, 10:57:50 pm »
Wait until tomorrow to check back. The standard mmCIF format is the way to go for really long DNA molecules.

Xiang-Jun

Offline xiangjun

  • Administrator
  • with-posts
  • *****
  • Posts: 1650
    • View Profile
    • 3DNA homepage
Re: buggy rebuild
« Reply #12 on: June 23, 2017, 11:59:22 pm »
Hi Luke,

I've updated 3DNA to v2.3.1-2017jun24. It features the new --cif (or --mmcif) option in rebuild/fiber to output generated structures in the standard PDBx/mmCIF format. The previous largely unused -xml option for PDBML format output has been removed.

With the new option shown below,

Code: [Select]
rebuild -cif -atomic structure-5000bp-ID0-B0-1.dat big-str.cif
your structure would be like the attached image (created with Jmol).

Have a try, and please report back if it works as expected.

Xiang-Jun
« Last Edit: June 24, 2017, 11:56:26 am by xiangjun »

Offline lukeczapla

  • with-posts
  • *
  • Posts: 7
    • View Profile
Re: buggy rebuild
« Reply #13 on: June 24, 2017, 12:07:32 pm »
Thank you Xiang-Jun, that was exactly what I was looking to see.  A 5000 bp circular "mini-chromosome" with no proteins bound to it.  I will work to integrate PDBx/mmCIF into my work, UCSF Chimera definitely reads it in and I have to ask the guys at 3Dmol about loading it into the browser with their JavaScript viewer.  Do you have some special way to place the phosphates and sugar in rebuild?  I'd like to try to understand it better and see where it lines up for nucleosome-bound DNA that has a lot of slide.  I understand that you are more interested in the study of RNA structures in your research.

Thanks

 

Created and maintained by Dr. Xiang-Jun Lu [律祥俊] (xiangjun@x3dna.org)
The Bussemaker Laboratory at the Department of Biological Sciences, Columbia University.