3DNA logo A Software Package for the Analysis, Rebuilding, and Visualization of Three-dimensional Nucleic Acid Structures
Xiang-Jun Lu & Wilma K. Olson

3DNA was created in the hope that it will be useful, but without any guarantees. Nothing is perfect, and we strive to improve its functionalities. Any comments, constructive suggestions, and bug reports are welcome.
 

3DNA users' manual

The 3DNA package is command-line driven, much like Unix commands. Running each program with the -h option (e.g., find_pair -h) will provide you with detailed usage information. Once you are familiar with the package, it should be straightforward to combine the various pieces in a script to automate your tasks. The utility program blocview, a Perl script, illustrates this idea. When finished, the page will provide detailed information on how to run the various programs, with cross links and examples. A brief users' manual in PDF is available to get you started.

find_pair [Added on Mon Sep 26 21:42:55 EDT 2005]

This program was originally designed to generate input for the analysis routines in 3DNA and for Curves directly from a PDB file. It fulfills its jobs nicely by automating the whole analysis process in an efficient and robust way. As time goes and needs rise, many new functionalities are added to it, making itself a useful program for locating all possible base-pairs, any higher order base associations, helical regions in complicated RNA structures, such as the large ribosomal subunit. Furthermore, it automatically finds hydration patterns around the identified base units and reorient them in the "best" (i.e., most extended) view.

Useing bdl084.pdb as an example, the most common usage is as follows:

find_pair -t bdlo84.pdb bdl084.inp

The option -t means PDB HETATM records are also taken into consideration, in addition to the ATOM records. For this simple case, where no nucleic acid residues have HETATM records, omitting the -t option makes no difference. As a rule, however, it is always a good idea to include this option.

The content of the output file bdl084.inp, which is in the format recognized by 3DNA analysis routines analyze, cehs and anyhelix, is as follows. Note that text after "#" is comment, for information only:

bdl084.pdb
bdl084.out
    2         # duplex
   12         # number of base-pairs
    1    1    # explicit bp numbering/hetero atoms
    1   24  0 #    1 | ....>A:...1_:[..C]C-----G[..G]:..24_:B<....  0.32  0.07 18.64  8.96 -1.04
    2   23  0 #    2 | ....>A:...2_:[..G]G-----C[..C]:..23_:B<....  0.57  0.49 17.08  8.92  0.06
    3   22  0 #    3 | ....>A:...3_:[..C]C-----G[..G]:..22_:B<....  0.34  0.16  6.99  8.91 -0.84
    4   21  0 #    4 | ....>A:...4_:[..G]G-----C[..C]:..21_:B<....  0.28  0.01 14.35  8.92 -1.20
    5   20  0 #    5 | ....>A:...5_:[..A]A-----T[..T]:..20_:B<....  0.11  0.01 16.03  8.87 -1.36
    6   19  0 #    6 | ....>A:...6_:[..A]A-----T[..T]:..19_:B<....  0.10  0.07 15.01  8.82 -1.27
    7   18  0 #    7 | ....>A:...7_:[..T]T-----A[..A]:..18_:B<....  0.21  0.17 16.75  8.80 -0.94
    8   17  0 #    8 | ....>A:...8_:[..T]T-----A[..A]:..17_:B<....  0.16  0.00 16.44  8.77 -1.33
    9   16  0 #    9 | ....>A:...9_:[..C]C-----G[..G]:..16_:B<....  0.24  0.00 16.11  8.94 -1.25
   10   15  0 #   10 | ....>A:..10_:[..G]G-----C[..C]:..15_:B<....  0.27  0.24 10.48  8.93 -0.76
   11   14  0 #   11 | ....>A:..11_:[..C]C-----G[..G]:..14_:B<....  0.29  0.21 17.42  9.01 -0.79
   12   13  0 #   12 | ....>A:..12_:[..G]G-----C[..C]:..13_:B<....  0.36  0.25  6.81  9.06 -0.63
##### Base-pair criteria used:   4.00 15.00  2.50 65.00  4.50  7.50 
##### 0 non-Watson-Crick base-pairs, and 1 helix (0 isolated bps)
##### Helix #1 (12): 1 - 12
  • The first line, bdl084.pdb, is the PDB structure to be analyzed.
  • The second line, bdl084.out, is the output file listing the detailed parameters calculated by 3DNA analysis routines.
  • "2" in line 3 means this is a double helix.
  • "12" on line 4 means this structures has 12 base-pairs.
  • One line 5, the first "1" means that explicit base paring information will be given in the following lines. A value of "0" would mean an idealized duplex base pairing scheme - thus for 12 base-pairs as in the case, the 1st residue pairs with the (last) 24th residue, the 2nd with the 23rd ... and the 12th with the 13th. This option was used in the early days before find_pair was fully developed. This number will always be "1".
    The second "1" corresponds to the -t option mentioned above. Otherwise, it would be "0".
  • The following 12 lines list the base pairing residues (the first two numbers) and the optional helical region information (3rd number). "0" as is the case here means the current base-pair belongs to a continuous helical region with the following base-pair. "1" means an isolated base-pair, and "9" means a helix break. The info following "#" gives details about the base-pair - the model number, chain ID, insert code, residue number, residue name in 3-letter and 1-letter abbreviation, followed by the calculated geometric parameters to characterize this base-pair. Key geometric features of the base-pair are summarized by the characters between the 1-letter residue IDs. In this case, they are all dashes, meaning standard Watson-Crick base-pairs.
  • As is evident, the last three lines summarize of the criteria used, the number of non-Watson-Crick base pairs and helices found etc.
Space gif image Spacer gif image