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 · Homepage · DSSR · Web-DSSR · DSSR Manual · Reproduce DSSR · DSSR-Jmol · DSSR-PyMOL · Web-SNAP

Messages - xiangjun

Pages: [1] 2 3 ... 86
General discussions (Q&As) / Re: Circular DNA and Groove Information
« on: March 18, 2019, 12:15:35 pm »
In addition to groove dimensions for circular DNA or RNA, as you asked in your starting post, do you have any preference on how to list the base-pair step parameters? I am planning to add a new option, tentatively named '--circular', to the 3DNA analyze program. Does it sound good?

Best regards,


OK. Now I understand your point.

For the analysis of an NMR ensemble or MD trajectories, the --json option is the approach to go. Using 2n2d as an example, as given from DSSR -h or --help, you could:

Code: Bash
  1. x3dna-dssr -i=2n2d.pdb --nmr --json -o=2n2d-dssr.json
  2. # the following command extracts parameters related to the first nucleotide of the first model (with index 0)
  3. jq .models[0].parameters.nts[0] 2n2d-dssr.json

See the thread "DSSR: Analyzing NMR structures - overwritten output files". The R script by Markus should be of help.

Best regards,


Please provide an example file, command options, and the output file, to show the problem concretely.



General discussions (Q&As) / Re: Circular DNA and Groove Information
« on: March 08, 2019, 05:05:18 pm »

Thanks a lot for your kind words about 3DNA!

Yes, I'd like to incorporate the analysis of circular DNA or RNA into 3DNA. Your attached example looks beautiful and serves as a good starting point. Timewise, I'm recently busy with a deadline, but would hopefully get back to the topic late next week. I'll have a follow-up along this thread once I've something concrete to share.

Best regards,


RNA structures (DSSR) / Re: Junction definition
« on: March 07, 2019, 11:20:56 am »
OK. I got it. I'll look into the issue.

Regarding the definition of (junction) loops, the DSSR paper says:

In DSSR, a loop forms a ‘closed’ circle with any two sequential nucleotides connected either by a phosphodiester linkage or a canonical base pair, and is specified by the lengths of consecutive bridging-nucleotide segments (Figures 1F and 2C).

The situation becomes less intuitive/obvious when pseudoknots are included. You could try the --nested option to removed pseudoknots to see if the results make more sense.

Best regards,


RNA structures (DSSR) / Re: Junction definition
« on: March 06, 2019, 04:53:52 pm »

I cannot reproduce your reported result based on information provided (i.e., PDB id: 4gma). Could you please be more specific by attached the PDB file, DSSR version, and options you used?



Did you install 3DNA v2.4.2 and ran it on your structure as suggested?

Or did you upload your structure your structure to web 3DNA 2.0 at the Please provide output details on the analysis of your structure, not an output from giving a PDP entry.

Please respond specifically to my queries which are direct related to your questions.



MD simulations / Re: Analysis of helical parameter of DNA with unnatural
« on: February 28, 2019, 01:44:39 pm »
As a follow-up note to my previous response, you could also try the significantly enhanced web 3DNA 2.0 server at It runs on the latest 3DNA distribution.


MD simulations / Re: Analysis of helical parameter of DNA with unnatural
« on: February 28, 2019, 11:00:25 am »
Dear Priyabrata,

Thanks for your new question regarding the three missing pairs in your 4xno-MY.pdb structure. By attaching both PDB and the 3DNA output files, you've made the issue easy to solve.

The attached 4xno-MY.out contains the following info at the beginning:

    3DNA v2.3.4-2018nov06, created and maintained by Xiang-Jun Lu (PhD)
1. The list of the parameters given below correspond to the 5' to 3' direction
   of strand I and 3' to 5' direction of strand II.

2. All angular parameters, except for the phase angle of sugar pseudo-
   rotation, are measured in degrees in the range of [-180, +180], and all
   displacements are measured in Angstrom units.
File name: 4xno-DP4-md23_rst.pdb
Date and time: Mon Feb 18 16:56:33 2019

Number of base-pairs: 13
Number of atoms: 27438

Using 3DNA v2.4.2-2019feb26 would solve the problem. Please have a try and report back how it goes.

Best regards,


Bug reports / Re: x3dna-v2.4 :: checks for x2dn-v2.3 for homedir
« on: February 26, 2019, 11:56:50 am »
looking at get_3dna_homedir in app_fncs.c

when X3DNA env var not defined, it set homedir to $HOME/x3dna-v2.3/ or $HOMEDRIVE/x3dna-v2.3/

As a follow-up, I've simplified function get_3dna_homedir() in app_fncs.c in 3DNA v2.4.2-2019feb26. Now the X3DNA environment variable must be set. The code for checking 3DNA distribution from the home directory has been removed. This feature was added from early on, including the widely distributed 3DNA v1.5. From my memory, however, it has been rarely used. Moreover, since v2.1, the x3dna_ensemble Ruby script requires the setting of ENV['X3DNA'].


MD simulations / Re: Analysis of helical parameter of DNA with unnatural
« on: February 26, 2019, 11:43:57 am »
As a follow-up, the issue of special base identification has been solved in 3DNA v2.4.2-2019feb26. Using your sample XY.pdb as an example, running find_pair on it would give the following result.

# find_pair XY.pdb
    2         # duplex
   16         # number of base-pairs
    1     1    # explicit bp numbering/hetero atoms
    1    32   0 #    1 | ....>-:...1_:[DC5]C-----G[DG3]:..32_:-<....   0.46   0.40  19.88   9.09  -2.76
    2    31   0 #    2 | ....>-:...2_:[.DT]T-----A[.DA]:..31_:-<....   0.60   0.53  10.04   9.21  -2.83
    3    30   0 #    3 | ....>-:...3_:[.DT]T-----A[.DA]:..30_:-<....   0.36   0.30  17.72   8.87  -3.14
    4    29   0 #    4 | ....>-:...4_:[.DA]A-----T[.DT]:..29_:-<....   0.41   0.40  38.23   8.81  -1.88
    5    28   0 #    5 | ....>-:...5_:[.DT]T-----A[.DA]:..28_:-<....   0.17   0.00  16.14   8.71  -4.02
    6    27   0 #    6 | ....>-:...6_:[.DP]g-----c[.DZ]:..27_:-<....   0.33   0.22   7.19   9.17  -3.87
    7    26   0 #    7 | ....>-:...7_:[.DP]g-----c[.DZ]:..26_:-<....   0.10   0.05   9.70   9.19  -4.31
    8    25   0 #    8 | ....>-:...8_:[DP4]g-----c[DZ5]:..25_:-<....   0.26   0.16   1.36   9.34  -4.36
    9    24   0 #    9 | ....>-:...9_:[DZ5]c-----g[DP4]:..24_:-<....   0.28   0.08  18.81   9.16  -3.62
   10    23   0 #   10 | ....>-:..10_:[.DZ]c-----g[.DP]:..23_:-<....   0.80   0.27   3.53   9.02  -3.48
   11    22   0 #   11 | ....>-:..11_:[.DZ]c-----g[.DP]:..22_:-<....   0.12   0.08   8.89   9.26  -4.27
   12    21   0 #   12 | ....>-:..12_:[.DA]A-----T[.DT]:..21_:-<....   0.46   0.22  23.75   9.24  -0.92
   13    20   0 #   13 | ....>-:..13_:[.DT]T-----A[.DA]:..20_:-<....   0.54   0.39  32.66   9.18  -2.04
   14    19   0 #   14 | ....>-:..14_:[.DA]A-----T[.DT]:..19_:-<....   0.49   0.46   7.28   8.95  -3.22
   15    18   0 #   15 | ....>-:..15_:[.DA]A-----T[.DT]:..18_:-<....   0.91   0.90  18.95   9.13  -1.35
   16    17   0 #   16 | ....>-:..16_:[DG3]G-----C[DC5]:..17_:-<....   0.69   0.64   7.76   9.08  -2.64
##### Base-pair criteria used:     4.00     0.00    15.00     2.50    65.00     4.50     7.80 [ O N]
##### 0 non-Watson-Crick base-pairs, and 1 helix (0 isolated bps)
##### Helix #1 (16): 1 - 16

Best regards,


MD simulations / Re: Analysis of helical parameter of DNA with unnatural
« on: February 18, 2019, 10:33:13 am »
Hi Priyabrata Das,

Thanks for using 3DNA and reporting the unidentified pairing issue you experienced on the Forum.

The problem is due to DY, which is a special modified case that cannot be properly recognized by 3DNA. More specifically, it is the N7 atom (see the attached image below) that causes the trouble.

I may consider refining the algorithm in 3DNA v2.4 for base identification in special cases like this. For now, simply renaming N7 to NX (for example) would do the trick. Alternatively (and better yet), you may want to give DSSR a try (see below).

Best regards,


PS. The issue is fixed in DSSR v1.8.8, released today. Here is an excerpt of the DSSR output on your structure (XY.pdb).

Code: [Select]
List of 4 types of 12 modified nucleotides
      nt    count  list
   1  DP-g    4    DP6,DP7,DP22,DP23
   2  DZ-c    4    DZ10,DZ11,DZ26,DZ27
   3 DP4-g    2    DP4/8,DP4/24
   4 DZ5-c    2    DZ5/9,DZ5/25

List of 16 base pairs
     nt1            nt2            bp  name        Saenger   LW   DSSR
   1 DC5/1          DG3/32         C-G WC          19-XIX    cWW  cW-W
   2 DT2            DA31           T-A WC          20-XX     cWW  cW-W
   3 DT3            DA30           T-A WC          20-XX     cWW  cW-W
   4 DA4            DT29           A-T WC          20-XX     cWW  cW-W
   5 DT5            DA28           T-A WC          20-XX     cWW  cW-W
   6 DP6            DZ27           g-c WC          19-XIX    cWW  cW-W
   7 DP7            DZ26           g-c WC          19-XIX    cWW  cW-W
   8 DP4/8          DZ5/25         g-c WC          19-XIX    cWW  cW-W
   9 DZ5/9          DP4/24         c-g WC          19-XIX    cWW  cW-W
  10 DZ10           DP23           c-g WC          19-XIX    cWW  cW-W
  11 DZ11           DP22           c-g WC          19-XIX    cWW  cW-W
  12 DA12           DT21           A-T WC          20-XX     cWW  cW-W
  13 DT13           DA20           T-A WC          20-XX     cWW  cW-W
  14 DA14           DT19           A-T WC          20-XX     cWW  cW-W
  15 DA15           DT18           A-T WC          20-XX     cWW  cW-W
  16 DG3/16         DC5/17         G-C WC          19-XIX    cWW  cW-W

Bug reports / Re: lib/readme inscorect URL
« on: February 12, 2019, 11:56:53 am »
Hi Eric,

Thank you so much for reporting the inconsistency issues with trollop.rb in 3DNA.

lib/README says that trollrop should be downloaded from,

The note was intended for myself, that I downloaded trollrop 1.16.2 using wget from that URL. The trollop.rb script is cleaned up (see below) and distributed with 3DNA, so users do not need a separate download.

Code: [Select]
# Note from Xiang-Jun Lu ( -- some minor revisions:
#     o   reformatted the code, 4 spaces indent, split long lines
#     o   corrected '-h' or '--version' to '-v'
#     o   corrected 'In thise case' to 'this'
#     o   removed '=> e' to avoid warning on unsed variable
#     o   refined FLOAT_RE to allow for + before the number
#     o   added [INTEGER_RE = /^[+-]?\d+$/] to allow for negative integer

To avoid confusions, the README file has been removed in the updated distribution of 3DNA v2.4.

while post says from

trollrop is available from

The post was dated on January 19, 2011, the URL for trollop was at the specific URL at that time. As you noticed, the URL for trollop has been changed again. Trollop may be relocated to yet another place (e.g., github) in the future.

Also, note that the 'trollop' gem has been deprecated and has been replaced by 'optimist'. In the 3DNA v2.4 distribution, the lib/trollop.rb single file is not a Rubygem dependency. It is a standalone "commandline option parser for Ruby that just gets out of your way." ( It was for this simplicity that I initially picked up trollop from several other options. I've been happily using trollop since then in my Ruby scripts.

any recommendation about specific version to use ? v1.16.2 or newer version will fit the requirements ?

The slightly revised version of trollop v1.16.2 distributed with 3DNA has been working well, as far as I am aware.

Best regards,


PS. Did you tried 3DNA v2.4.1 with zsh and confirm that the x3dna_setup script works as expected, or otherwise?

Bug reports / Re: x3dna-v2.4 :: checks for x2dn-v2.3 for homedir
« on: February 11, 2019, 11:58:50 am »
Hi edeveaud,

Thanks for reporting this issue.

Presumably, the X3DNA environment variable should always be set. Nevertheless, since the current version of 3DNA is v2.4, the out-of-date v2.3 folder should be fixed. Please check 3DNA v2.4.1-2019feb11 where v2.3 has been corrected to v2.4.

Best regards,


Bug reports / Re: x3dna_setup :: Unkown shell zsh
« on: February 11, 2019, 11:56:01 am »
Thanks for reporting this. I've revised the 'x3dna_setup' script to take 'zsh' into consideration.

Please check 3DNA v2.4.1-2019feb11 just released, and let me know if the issue has been fixed.

Best regards,


Pages: [1] 2 3 ... 86

Created and maintained by Dr. Xiang-Jun Lu [律祥俊], Principal Investigator of the NIH grant R01GM096889
Dr. Lu is currently affiliated with the Bussemaker Laboratory at the Department of Biological Sciences, Columbia University.