Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Netiquette · Download · News · Gallery · G-quadruplexes · DSSR-Jmol · DSSR-PyMOL · Video Overview · DSSR v2.6.0 (DSSR Manual) · Homepage

Messages - xiangjun

Pages: 1 ... 48 49 [50] 51 52 ... 66
1226
Feature requests / Re: chain continuation character in analyze
« on: August 09, 2012, 07:43:01 am »
Hi Pascal,

I've implemented the -chain_markers option to analyze as of 3DNA v2.1beta dated 2012aug09. As an example, run the following commands,

Code: [Select]
find_pair -s 1egk.pdb stdout | analyze -chain_markers='+|x*' stdin
You will see the the portion below in output file '1egk.outs':

   1   (0.013) ....>A:...1_:[..A]A     +    
   2   (0.020) ....>A:...2_:[..G]G     |   
   3   (0.019) ....>A:...3_:[..G]G     |   
   4   (0.014) ....>A:...4_:[..A]A     |   
   5   (0.014) ....>A:...5_:[..G]G     |   
   6   (0.016) ....>A:...6_:[..A]A     |   
   7   (0.020) ....>A:...7_:[..G]G     |   
   8   (0.015) ....>A:...8_:[..A]A     |   
   9   (0.028) ....>A:...9_:[..G]G     |   
  10   (0.015) ....>A:..10_:[..A]A     |   
  11   (0.015) ....>A:..11_:[..U]U     |
  12   (0.022) ....>A:..12_:[..G]G     |
  13   (0.015) ....>A:..13_:[..G]G     |
  14   (0.021) ....>A:..14_:[..G]G     |
  15   (0.025) ....>A:..15_:[..U]U     |
  16   (0.016) ....>A:..16_:[..G]G     |
  17   (0.016) ....>A:..17_:[..C]C     |
  18   (0.016) ....>A:..18_:[..G]G     |
  19   (0.012) ....>A:..19_:[..A]A     |
  20   (0.017) ....>A:..20_:[..G]G     x
  21   (0.010) ....>B:..21_:[..C]C     +
  22   (0.018) ....>B:..22_:[..T]T     |
  23   (0.007) ....>B:..23_:[..C]C     |
  24   (0.016) ....>B:..24_:[..G]G     |
  25   (0.011) ....>B:..25_:[..C]C     |
  26   (0.013) ....>B:..26_:[..A]A     |
  27   (0.011) ....>B:..27_:[..C]C     |
  28   (0.006) ....>B:..28_:[..C]C     |
  29   (0.010) ....>B:..29_:[..C]C     |

As always, check it out and report back if that fits the bill.

Xiang-Jun

1227
Feature requests / Re: chain continuation character in analyze
« on: August 08, 2012, 12:00:46 pm »
I will think about the issue, and try to find a consistent way to handle find_pair in default and with the -s option, and streamline the output style between find_pair and analyze. I will post back in this thread once it is done.

The -pdbv3 is globally set to TRUE, so it also applies to o1p_o2p.

HTH

Xiang-Jun

1228
Feature requests / Re: chain continuation character in analyze
« on: August 08, 2012, 09:38:32 am »
The -chain_markers option works only for duplexes (default for find_pair), not yet with the -s option for single-stranded (ss) structures. 3DNA analyze checks for O3'(i) to P(i+1) distance with a cut-off of 2.5 Å for chain breaks; only two characters are used: 'x' for a break, and '-' for a covalent bond. I am a bit hesitated to make the current settings more complicated; you are the first 3DNA user to notice such little detailed info at all. Do you a solid use case to convince me?

In current 3DNA v2.1beta, no need to set -pdbv3; it's the default.

Xiang-Jun

1229
Feature requests / Re: chain continuation character in analyze
« on: August 06, 2012, 01:04:12 pm »
Please download the updated aug06 release of 3DNA v2.1beta. Now you can specify helix begin/continuation/end and isolated bp characters through option -chain_markers. For example,

Code: [Select]
find_pair 1egk.pdb stdout
    #  default as before
find_pair -chain_markers='o|x+' 1egk.pdb stdout
    #  with helix beginning character assigned to 'o'

The same option can also be applied to 'analyze'.

Also, as noted previously, the same strand P...P and C1'...C1' distances are now output in two decimals.

Have a try and report back how it goes.

Xiang-Jun

1230
Feature requests / Re: BI/BII issue
« on: August 04, 2012, 03:13:30 pm »
As noted in the -tor output file,

Code: [Select]
          e-z: epsilon - zeta
              BI:  e-z = [-160, +20]
              BII: e-z = [+20, +200]

The criteria are based on "Nucleic acid backbone parameters" at the Jena website. Do you have another definition?

Also, the BI/BII classification is purely backbone-based (epsilon and zeta torsion angles), not specific to "B-DNA" whose definition may require characterization of the base pair geometry.

Xiang-Jun

1231
Feature requests / Re: chain continuation character in analyze
« on: August 04, 2012, 03:01:52 pm »
Quote
In the analyze file, you insert the '-' character when a strand is not broken and 'x' when its broken.
Then a new chain starts. May be you could add a third '+' character for these residues ?
Could you provide an example?

Quote
Also, for the same strand P...P and C1'...C1' distances, could you add two decimals instead of one?
Done -- the distribution will be updated after clarification of the above point.

Xiang-Jun

1232
General discussions (Q&As) / Re: how to bend a big DNA soomthly?
« on: July 27, 2012, 10:29:11 am »
3DNA per se does not provide a prescription "to bend a big DNA smoothly". How to choose roll angles to fit a smooth curve is problem specific; 3DNA is mechanical and rigorous in that it constructs a structure corresponding to the parameters you fed into "rebuild", or (reversibly) it can "analyze" a given DNA structure to provide parameters that fully describe its base geometry.

As mentioned previously, and made clear in the 2008 3DNA Nature Protocols paper, the various prescriptions of roll-introduced DNA bending in Figure 3 are based on the classic work of Calladine and Drew. That protocol was intended to illustrate 3DNA's capability of building structures, in schematic representation, based on user-supplied parameters, not to show how to derive roll angles for any desired DNA bending.

That said, 3DNA is handy for constructing and visualizing a DNA structure in three dimensions to help verify if a roll prescription fulfills one's assumptions -- seeing is believing as well as understanding. For example, by noticing a bend structure in zigzag type, you immediately realized that your roll parameters (as sinusoidal) were not chosen correctly.

There are literature publications on how to fit a smooth ribbon to curved DNA. Pubmed or Google Scholar is your friend; it helps if you could share your findings.

HTH,

Xiang-Jun
 

1233
General discussions (Q&As) / Re: Analysis_assumptions!
« on: July 24, 2012, 02:41:05 pm »
The 3DNA program mutate_bases does exactly as its name suggests, i.e., mutate DNA/RNA bases, and from a pure geometric approach. It is up to the user (with any other desirable tools) to make sense of "structural and binding differences" between mutated and native structures.

Xiang-Jun

1234
General discussions (Q&As) / Re: mutate_bases error
« on: July 24, 2012, 02:35:49 pm »
Quote
mutate_bases 'c=Y, s=14, m=DC' 3DFV.pdb 3DFV_mut.pdb

Change comma to space, as below:
Code: [Select]
mutate_bases 'c=Y s=14 m=DC' 3DFV.pdb 3DFV_mut.pdb
Comma or semicolon is used to separate multiple mutations. I am updating command line help message to make this point clearer.

Xiang-Jun
 

1235
  • Well, with the excerpt from find_pair output, I can see what nucleotides (nts) you are referring to. As always, it's the details that count.
  • Quote
    I also thought you know what hairpin loop is, i don't know why, I'm sorry.
    I know what a hairpin loop is, but I certainly did not see what you were referring to in your previous post. Thanks for your wikipedia quota and link on "step-loop", however, I still miss your point as to how it is related to the helix (see attached figure) formed by nts 149-155 with 171-177 on chain A of PDB entry 3uzn.
  • So at this point, I have no comment to your initial question: "Can you say something about it?"
  • Quote
    Oh, and I was using 3DNA ver 1.5.
    I am glad to know that 3DNA v1.5, which was compiled (nearly) a decade ago, is still in use. As noted in "Download instructions", that version is obsolete, and "no longer supported". So it's the time to upgrade to v2.1 (beta).

Xiang-Jun

PS. Note that I have once again split the posts on hairpin-loop from the original thread 'Helices and Isolates in output of find_pair' to make each one focused on a specific topic, and not too lengthy.

1236
Could you provide us reproducible details how you got this "hairpin loop of length zero (between 155 and 156)"? Which version of 3DNA are you using? I did not see nucleotides 156-162 (chain A) at all in PDB entry 3uzn downloaded from the current RCSB website.

Xiang-Jun

1237
Thanks for your new question :). I have split this post from the original thread 'Helices and Isolates in output of find_pair' to make each one focused on a specific topic, and not too lengthy.

I am sure I've answered this question before, maybe through priviate emails. I'll write a post on this issue on the 3DNA homepage soon [link added on 2012-07-30]. Here is the short answer to your question:

The general patten of a base-pair id string is M-XYZ-N for bases M and N. Only when XYZ equals --- would M and N be a possible Watson-Crick pair. If Z is '+', the two z-axes of bases are pointing the same direction and thus have a positive dot product. See my post "Hoogsteen and reverse Hoogsteen base pairs".

HTH,

Xiang-Jun

1238
Thanks for providing a PDB list where find_pair cannot properly assign certain helices. It'd be more helpful if you could provide specific problematic helices, for at least some PDB entries, as you did for 1z58.

Best regards,

Xiang-Jun

1239
Thanks for providing detailed info about a mis-assigned helix by find_pair. As shown in the attached image, in PDB entry 1z58, nucleotides 336-338 and 346-348 should indeed be assigned into a helix. While the helix assignment algorithm of find_pair works elegantly for the majority of cases, it is clearly not sophisticated enough to properly handle complicated structures such as 1z58 (the large ribosomal subunit from the eubacterium Deinococcus radiodurans): if you pay close attention to the output from find_pair, you will see warning messages in such cases.

I'm interested in refining 3DNA on those complicated structures, and your reported example is a concrete case to start with. Do you have more examples? The more varied and detailed cases I have, the easier to test find_pair against, and the more 3DNA can work for you in the end.

Xiang-Jun

1240
For model #5 of PDB entry 1aju, let's store its coordinates in file 1aju-m5.pdb. Run
Code: [Select]
find_pair 1aju-m5.pdb 1aju-m5.bpsyou get 1aju-m5.bps, with the following content:
1aju-m5.pdb
1aju-m5.out
    2         # duplex
   13         # number of base-pairs
    1    1    # explicit bp numbering/hetero atoms
    1   30  0 #    1 | ...5>A:..16_:[..G]G-----C[..C]:..46_:A<...5  1.26  0.86 43.33  8.60  0.14
    2   29  0 #    2 | ...5>A:..17_:[..G]G-----C[..C]:..45_:A<...5  1.05  0.14 21.15  8.79 -2.62
    3   28  0 #    3 | ...5>A:..18_:[..C]C-----G[..G]:..44_:A<...5  0.47  0.27 13.69  9.09 -3.30
    4   27  0 #    4 | ...5>A:..19_:[..C]C-----G[..G]:..43_:A<...5  0.55  0.43 20.29  9.06 -2.56
    5   26  0 #    5 | ...5>A:..20_:[..A]A-----U[..U]:..42_:A<...5  1.04  1.00 16.36  8.68 -1.15
    6   25  0 #    6 | ...5>A:..21_:[..G]G-----C[..C]:..41_:A<...5  1.01  0.44  9.82  8.78 -2.61
    7   24  0 #    7 | ...5>A:..22_:[..A]A-----U[..U]:..40_:A<...5  0.88  0.75 23.30  8.87 -1.45
   10   23  0 #    8 | ...5>A:..26_:[..G]G-----C[..C]:..39_:A<...5  1.16  0.44 20.37  8.79 -1.94
   11   22  0 #    9 | ...5>A:..27_:[..A]A-----U[..U]:..38_:A<...5  1.09  1.03 16.74  8.87 -1.00
   12   21  0 #   10 | ...5>A:..28_:[..G]G-----C[..C]:..37_:A<...5  0.94  0.83 22.27  8.99 -1.29
   13   20  9 #   11 x ...5>A:..29_:[..C]C-----G[..G]:..36_:A<...5  1.14  0.55 24.72  8.76 -1.53
   15   18  1 #   12 + ...5>A:..31_:[..U]U-**--G[..G]:..34_:A<...5  4.82  2.03 40.01  7.97  7.88
   16   17  1 #   13 + ...5>A:..32_:[..G]G-**+-G[..G]:..33_:A<...5  6.66  0.32 62.30  6.72  9.42

##### Base-pair criteria used:     4.00     0.00    15.00     2.50    65.00     4.50     7.50 [ O N]
##### 2 non-Watson-Crick base-pairs, and 3 helices (2 isolated bps)
##### Helix #1 (11): 1 - 11  ***broken O3'(i) to P(i+1) linkage***
##### Helix #2 (1): 12
##### Helix #3 (1): 13
The helix continues up to base pair (bp) "A:..29_:[..C]C-----G[..G]:..36_:A" (#11). The next two bps are isolated, i.e., not part of a continuous helix formed by bps from 1 to 11. Please see the attached blocview-image showing nucleotides 28 to 37, with green for G, cyan for U, red for A, and yellow for C.

Regarding your question,
Quote
When bp is represented with bigger number first (like 20-9) does it mean anything?
As shown above, the numerical values for bps (the left two columns) from find_pair are nucleotide sequential numbers as they appear in the input PDB file. What do you mean "does it mean anything?". As always, please be specific, using an example to illustrate your point.

HTH,

Xiang-Jun

1241
Thanks for using 3DNA. In 'find_pair' output, '+' means isolated base-pair (bp), i.e., a bp not in a helical context. '|' means the bp is part of a helix, and 'x' means helix breaks at the bp.

It would help if you provide an example -- then our discussion would be more specific.

Xiang-Jun

1242
Quote
is there any way to incorporate protein information in the bp_step.par file such that the whole complex undergoes bend.
No. The rebuilding process in 3DNA is purely geometric, and it does not handle protein explicitly. If you have a DNA-protein complex to start with, bending DNA will most likely cause steric clashes.

Xiang-Jun

1243
Could you please make your point specific by using a concreate example? What do your mean "it is easy to make that bend DNA using 3DNA"?

Xiang-Jun

1244
General discussions (Q&As) / Re: create bases?
« on: July 12, 2012, 11:49:04 am »
Quote
The output file generated by analyze shows only 18 base pairs and does not include the first two TT in Y chain.

The first two TTs on chain Y are not paired to AAs in 3dfv: 'find_pair' identifies all 18 bps available and 'analyze' outputs only parameters for those 18 bps. Everything is as expected.

As for your first question, i.e., pairing the two TTs in chain Y with two AAs in chain Z, have you checked if the two ends are pseudo-continuous in crystal packing? If so, write the full coordinates in a PDB file, and then 3DNA 'find_pair/analyze' will work accordingly. If not, you need to model the pairing with certain assumption/approximations. 3DNA has no direct facility for the job, but may be tailored for the purpose. On the other hand, please have a check of Coot, NAB, PyMol etc tools which may fit the job better. Please report back how it goes, and I will consider adapting 3DNA for your requirement if no other practical approach is available.

Xiang-Jun

1245
Updated to 2012jul09 -- have a look and report back how it works.

Xiang-Jun

1246
There are two aspects to your question:
  • You want the original coordinates of the base pairs (bp) instead of those reoriented w.r.t. bp reference frames.
  • You are concerned about the speed of transformations or extracting from PDB files.
Using Python or any other scripting language, you do not need to parse hundreds of PDBs, but only two: one is the the original PDB file, and the other is 'allpairs.pdb'. By scanning the later, you have a list of all bps, then you can extract one-by-one from the same original PDB file. Have a try and report back how it goes -- I do not think speed is an issue here.

That said, the most efficient way would be to add an option to 'find_pair', presumably -original_coordinate, so that instead of transforming to bp reference frame, the original atomic coordinates are written directly to 'allpairs.pdb'. I will update the 3DNA v2.1beta distribution soon, so stay tuned.

Xiang-Jun



1247
Thanks for using 3DNA and your kind words about it! Over the years, user feedback/encouragement has been the driving force to move the project forward.

As you noticed, 'allpairs.pdb' has each of its base-pair (bp) reoriented in the local bp reference frame. If you want the all-atom bp coordinates in the native PDB, you can write a simple Python script to extract them from the original PDB file -- certainly no "complex matrix transformation" required. To make the point clear, let's use '6tna' as an example.

Code: [Select]
find_pair -p 6tna.pdb 6tna.bps
    # This generates 'allpairs.pdb', where each bp is delineated by a MODEL/ENDMDL pair
head allpairs.pdb
        # The first 2 lines are as below:
    # MODEL        1
    # REMARK    Section #0001 ....>A:...1_:[..G]G-----C[..C]:..72_:A<....

For the first bp, you can then simply extract nucleotides G1 on chain A (A.G1) and A.C72 from '6tna.pdb'. Check $X3DNA/perl_scripts/pdb_frag for a rudimentary implementation in Perl. By looping through 'allpairs.pdb' and checking for pattern "REMARK    Section #", you can convert all the bps to their native PDB coordinates.

HTH,

Xiang-Jun




1248
No idea if AMBER or CHARMM is parametrized for (strongly) bend DNA. Large DNA bending angle is normally found in protein-DNA complexes, e.g. IHF or CAP.

You will get more pertinent advice on this question in the AMBER or CHARMM mailing list.

Xiang-Jun

1249
Quote
So, my question is what is the basis of choosing roll parameters for a specific DNA bending angle?

Good question. However, that's what 3DNA cannot answer directly. As is made clear in the manual you referred to and in the 2008 3DNA Nature Protocols (NP) paper, the formulae for roll-introduced DNA curvature were based on the work of Calladine & Drew.

3DNA's usefulness in this area is described in the 2008 NP paper:

Quote
The complicated three-dimensional nature of local bending makes it difficult, even for a seasoned scientist, to visualize how the variation in roll at different dinucleotide steps leads to global curvature. With 3DNA, one simply prepares a data file with any prescribed set of parameters and builds the structure to see what it looks like (Fig. 3). The matrix-based scheme adopted in the 3DNA analysis/rebuilding programs makes this a completely reversible and rigorous process.


HTH,

Xiang-Jun

1250
Quote
Please explain figure 2 in the documentation.
Are you referring to recipe #2 of the 2008 3DNA Nature Protocols paper, "command-line script to create a 22 base-pair long schematic duplex structure with a 45° curvature per helical turn"? It was Figure 3, instead of 2.

All the (step-by-step) details about how to generate Roll-introduce DNA curvature are presented there. Just try to reproduce recipe #2, as another user recently went through. If you have any technical problems, please post back to the forum.

Xiang-Jun

Pages: 1 ... 48 49 [50] 51 52 ... 66

Funded by the NIH R24GM153869 grant on X3DNA-DSSR, an NIGMS National Resource for Structural Bioinformatics of Nucleic Acids

Created and maintained by Dr. Xiang-Jun Lu, Department of Biological Sciences, Columbia University