Nanotechnology Computational Biology

scientificprotocols authored almost 3 years ago

Authors: Ebbe Andersen & Morten Nielsen


Structural DNA nanotechnology has been heavily dependent on the development of dedicated software tools for the design of unique helical junctions, to define unique sticky-ends for tile assembly, and for predicting the products of the self-assembly reaction of multiple DNA strands [1-3]. Recently, several dedicated 3D editors for computer-aided design of DNA structures have been developed [4-7]. However, many of these tools are not efficient for designing DNA origami structures that requires the design of more than 200 unique DNA strands to be folded along a scaffold strand into a defined 3D shape [8]. We have recently developed a semi-automated DNA origami software package [9] that uses a 2D sequence editor in conjunction with several automated tools to facilitate the design process. Here we extend the use of the program for designing DNA origami structures in 3D and show the application by the construction of a DNA box with dimensions of 42×36 x 36 nm^3. The software is available at .


  1. Coffee


  1. A personal computer (Macintosh or Unix/Linux; Windows operating system is not supported yet).
  2. Java and Perl (available from and ).
  3. SARSE v. 1.38 with DNA origami package v. 1.1 (available from ).
  4. PyMOL 10.


1.) Start the program:

  • by clicking the SARSE icon.

2.) Import bitmap files:

  • Select New in the File menu and open the file blank.txt located in the tutorial-data folder.
  • Write the Project name “ACE” (for the similar design of face A, C, and E) and click Browse to select your preferred working directory.
  • Select Programs in the Tools menu.
  • Select the program package DNA-origami and the program import-bitmap.
  • Click the Options and click Browse to select the ABCE.bmp file in the tutorial-data folder.
  • Click Ok to activate the program and Ok to accept the result. The result is loaded back in the editor.
  • Repeat these steps to create separate projects called “B” (for unique face B design), “DF-left” (for the left part of face D and F design), and “DF-right” (for the right part of face D and F design) and import the corresponding bitmap files.

In the resulting files each black pixel of the bitmap file is translated into the symbol “A” (see Fig. 1). Each pixel is defined as having dimensions of 3.375 Å on the x-axis and 3 Å on the y-axis, corresponding to the helical rise per base pair in the B-form DNA double helix and to 1/10th of the measured distance between helices in the DNA origami structures [8], respectively. Because of this definition the shape has to be slightly longer on the y-axis in the editor.

TIPS. In the import-bitmap program there are options to help you rescale your bitmap to the appropriate size. The option called “Rescale” allows you to input the length of the DNA that you want to fold which will make the program rescale the shape to the appropriate amount of pixels. The option “Adjust dimensions” will slightly stretch the bitmap on the y-axis according to the definition given above.

3.) Fold the DNA strand through the shape:

  • Choose the “ACE” project by clicking the button at the top of the editing area (Fig. 1).
  • Choose Programs in the Tools menu.
  • Select the DNA-origami package.
  • Select the DNA-origami-fold program and click the Options button.
  • Choose the five parameters for folding the different type of faces as specified in Table 1.
  • Click Ok to activate the program.
  • Click Ok to accept the result (Fig. 2).
  • Repeat the operations for all projects.

Faces D and F are done in two parts (left and right) to be able to create a seam [8] down the middle.

The path of the scaffold strand is indicated with the symbol “R” and the staple strands with either “B” or “G” (Fig. 2). The colour scale of the symbols indicate the helical twist of each base in respect to the plane (blue = down, red = up, green = out, white = in). The staple strands crossover positions point from blue to red since they are crossing over between two adjacent helices in the plane.

TIPS. Use the Overview window that can be activated in the View menu (Fig. 2). The Overview window provides a zoomable image of the design file that is interactively linked to the editor window. By clicking at a specific position of the Overview window the editor is moved to the corresponding position.

CAUTION. The position of the staple strand crossover has to be a half number since it is defined to be between the two phosphates of the nucleotides in two adjacent columns.

TIPS. The symbols “R”, “G” and “B” stands for “red”, “green” and “blue”, respectively. To get a more easy view of the folded scaffold and staple strands you can use the color-symbols program (Fig. 3) and switch back to the twist colours by the color-twist program (Fig. 2).

4.) Inspect the edges of the design to modify staple strands:

  • Activate the color-symbols program as described above. The symbol colours are more easy to look at when editing the staple strands. If new crossovers should be designed (where the orientation of the phosphate backbone is important) it is useful to re-colour using the color-twist program.
  • Delete staple strand crossovers if they do not continue (as in Fig. 4). Deletion is done by selecting and changing the symbol to ”-”.
  • For creating staple strand connections across the seam of “DF-left” and “DF-right” the staple strand crossovers at the edges should be broken. Insert a “X” symbol at the positions where you want the staple strand to continue into another project file (Fig. 5). The “X” symbols will be combined at a later stage.
  • Add T-loops and T-ends at edges (as in Fig. 6). The editing is done by selecting a position or region with the mouse and changing the symbol to “T” by pressing the change symbol button or using the change symbol in the Edit menu or the short cut Alt+t.
  • Combine staple strands if regions exist that are smaller than e.g. 10 nucleotides. The staple strands are combined across the scaffold strand by making a connection of “B” or “G” symbols across the “R” symbols (as in Fig. 4).

TIPS. Use the History window that can be opened in the Edit menu to undo unwanted editing or if a wrong program was run on your design. Be aware that not all changes can be undone (refer to the documentation at ).

5.) Create sequence files for the final designs:

  • Determine sequence length for the design files individually by running the program calculate-length. Look at the header of the output file in the working directory where the length data is written.
  • Use a vector editor program like CLCbio Workbench – to define regions on the circular m13mp18 strand of the determined lengths of face A, B, C, D, E, F.
  • Export a fasta file for each region (premade fasta files can also be found in the tutorial-data folder).

CAUTION. Sequence directions should not be reversed at this point, since the programs used below will take care of this using the folding parameter information that is stored in the header of the design files.

6.) Construct atomic models of the DNA origami sheets:

  • Make seperate projects for all faces by opening the final “ACE” design and saving it as “A”, “C” and “E”. Do the same to create a seperate project for all.
  • Select the “A” project.
  • Open the Programs window and choose pdb-generator.
  • Choose Options and Browse for the file A.fasta.
  • Run the program. The program will tell you that an additional file was created in the working directory called pdbout.pdb. Accept the result.
  • In the “A” working directory rename the pdbout.pdb file to A.pdb.
  • Do the same for the “B”, “C”, “D-left”, “D-right”, “E”, “F-left” and “F-right” projects to create pdb files with corresponding names.
  • Combine D-left.pdb and D-right.pdb into one D.pdb file by merging the two files in a text editor. Do the same for F-left.pdb and F-right.pdb to create F.pdb.

NOTE. The pdb-generator models the bending of the helices towards the staple strand crossovers and at the edges it models the scaffold crossovers. This realistic modeling is important for the design of 3D crossovers between the faces, which will be done in step 8.

CAUTION. If you have a slow computer it will have difficulty in loading all the atomic model files in the next step. Instead of making the full atomic models it is possible to model only the phosphate backbone of the helices. To do this, choose it in the pdb-generator Options.

7.) Orient the atomic models into the 3D shape:

  • Open the PyMOL program and load all faces (A-F).
  • Rotate all faces to position them face on as displayed in SARSE. This can be done by executing the following commands in PyMOL:

    • PyMOL> rotate y,90
    • PyMOL> rotate x,-90
  • First we contruct the main box using the following commands:

    • PyMOL> rotate x,90,B
    • PyMOL> translate [0,-170,-170],B
    • PyMOL> rotate x,180,C
    • PyMOL> translate [0,0,-340],C
    • PyMOL> rotate z,180,E
    • PyMOL> rotate x,-90,E
    • PyMOL> translate [55,170,-170],E
  • Second we add the lids:

    • PyMOL> rotate y,90,D
    • PyMOL> rotate x,180,D
    • PyMOL> translate [225,0,-170],D
    • PyMOL> rotate y,90,F
    • PyMOL> rotate x,180,F
    • PyMOL> translate [-170,0,-170],F
  • Now we colour the models as in SARSE:

    • PyMOL> select chain M
    • Choose red color for the selection.
    • PyMOL> select chain B
    • Choose blue color for the selection.
    • PyMOL> select chain F
    • Choose green color for the selection.

Now there is a direct translation between the SARSE 2D editor and the 3D view in PyMOL (Fig. 7). The side of the faces seen in SARSE are placed on the outside of the box in the 3D editor for face A-E, but on the inside for face F.

8.) Design 3D crossover positions:

  • Place the SARSE and PyMOL windows side by side on a large screen.
  • In PyMOL show only face A and B by deselecting the others and rotate 45 degrees to view the edge between the faces (Fig. 8): PyMOL> rotate x, 45
  • Find the best crossover positions between the two faces by measuring the distance between staple strand 5’ and 3’ ends using the PyMOL Measurement Wizard.
  • Calculate the amount of T nucleotides needed for a linker connecting the 5’ and 3’ ends, where one single stranded nucleotide is assumed to be 4 Å.
  • Add “T”s for the linker and an “X” to mark the crossover between projects in the SARSE program.
  • Repeat this procedure for all twelve edges.

9.) Insert sequences into the design:

  • Select project “A”.
  • Open the program oligo-track and in Options choose the sequence file A.fasta.
  • Run the program and accept results. The result file shows the sequences plotted onto your design with staple strand names positioned at their 5’ ends and composed of the row and column number of the first nucleotide (Fig. 9).
  • Repeat procedure for all faces.
  • The designed staple strands are printed in the file out2.txt in the working directory (Fig. 9).

10.) Merge staple strands:

  • Copy all out2.txt files into a common Word file.
  • Color the staple strands of the faces in different colors.
  • Rename the staple strands to reflect which face they belong to.
  • Merge staple strands from different faces at the “X” symbols. Use SARSE to navigate the final design files with names and sequences to determine which staple strands should be combined.
  • Rename the merged staples to indicate which faces they link together.
  • When you are satisfied and confident that no errors were made during the design process, the file is used to order the sequences from your favorite DNA synthesis company.

DISCLAIMER. The ordering of 200+ oligos of 32+ nucleotides each represents a considerable price. We take no responsibility for possible errors in the programs used. Ordering primers designed using the SARSE – DNA origami package is solely your own responsibility.


Due to the semi-automated procedures the design can be made in less than one hour.

Critical Steps

1. Constructing appropriate bitmaps files and folding paths. - To start the design process it is nessesary to create appropriate bitmap files with dimensions as mentioned in the Procedure section, step 2. This is especially neccesary if you have complex shapes. Simple shapes can be made directly in the SARSE editor by selecting an area and changing the symbol to “A”. SARSE only folds a DNA strand from top to bottom of a shape, so it is nessesary to devise a folding path strategy for a given 3D object, which is best done on paper. - Folding DNA strands with 5’ and 3’ ends placed correctly. - In relation to designing the folding path it is critical to place the 5’ and 3’ ends correctly in the design to have the m13mp18 strand run continuously and directionally through the design. - Orienting the DNA origami sheets in the PyMOL viewer. - When working to produce crossovers between the planar DNA origami sheets in PyMOL it is important to orient them correctly. The best way to do this is to start orienting the sheets like they appear in SARSE, which can be done with the following two commands: - PyMOL> rotate y,90 - PyMOL> rotate x,-90 - Remember that the DNA sheets have two unique faces. - Connecting staple strands manually. - After producing the final output of the sequence design it is nessesary to manually connect the staple strands crossing the edges between elements. If unique symbols were used in the design files as suggested in Procedure, step 4 then this can be done. Alternatively, it is neccesary to compare the names of the oligos with column and row numbers and finding the partners by navigating the final sequence design in the SARSE editor.


  1. Program fails and a Warning message is displayed.
    • Click the View log to see the error messages that were generated from the program. If the error message contains “file not found!” then you likely didn’t click Browse to select the correct path to the file. Check the path to the file. The default path is written for a Mac operating system with the SARSE program placed in the Applications folder. You may change the standard path used by modifying the programs.xml file situated in the properties folder.
  2. Bitmap import fails.
    • If the view log displays “file not found!” then the above situation might apply. If not then you might be trying to import a bitmap file with a formatting that is not supported. Currently the package only supports bitmaps at 1 bit depth, i.e. monochrome. In addition, line endings may cause a problem. If the line ending of a bitmap file is not identical to that recognized by the Perl interpreter of your system, an error will occur. This likely happens if the bitmap is constructed on another operating system than the SARSE program runs on. The solution could be to change the line ending in an appropriate text editor or save the bitmap file in a graphics program running on the same system.
  3. Molecular models made by pdb-generator look strange.
    • This might either be caused by errors in the design of staple strands like the ones edited in Procedure step 4. Please inspect your design file for errors.
  4. Oligotrack produces staple strand output files with F symbols. This normally occurs if auto-generated staple strands have not been edited correctly (see examples of editing in Procedure step 4). To fix the problem use the History window to step back to the design file before the sequence was inserted. Identify the problem and correct it.

More troubleshooting:

We have recently created a wiki site for the SARSE program available at . Here troubleshooting points will be continuously added.

Anticipated Results

  1. Design project files.
    • The files produced by the Programs that are run inside SARSE are stored in the project folder and the editing steps are saved as undoable actions in the History window. This logging of your project will help in reproducing complex designs and other collaborators can inspect your design suggestions. If packaged in e.g. zip format they take up much less space.
  2. Atomic model. The construction of an atomic model of your designed 3D origami structure. The theoretical model can be used to compare to experimental data like DLS, SAXS and cryo-EM. Having this structure will allow you to further modify and functionalize your structure (like the DNA locks in the Andersen et al. paper). Easily compare your design with other nanoscale objects or biological macromolecules.
  3. Staple strand design.
    • The final staple strand design with sets corresponding to faces and staple strands connecting the edges. If different versions of the same structure is desired it is recommended to do mutually exclusive sets of staple strands, so that a set of e.g. edge crossovers might be substituted by staple strands that break these. The list is ready for ordering to manifest your design in reality.


  1. Seeman. Nucleic acid junctions and lattices. J Theor Biol, 99, 237-47 (1982).
  2. E. Winfree. DNA design toolbox.
  3. N. A. Pierce. NUPACK.
  4. J. J. Birac, W. B. Sherman, J. Kopatsch, P. E. Constantinou & N. C. Seeman. Architecture with GIDEON, a Program for Design in Structural DNA Nanotechnology. J Mol Graph Model, 25, 470-480 (2006).
  5. S. Williams, K. Lund, C. Lin, P. Wonka, S. Lindsay & H. Yan. Tiamat: A Three-Dimensional Editing Tool for Complex DNA Structures. DNA Computing. (2008)
  6. NanoEngineer-1 (2008).
  7. J. Zhu, B. Wei, Y. Yuan & Y. Mi. UNIQUIMER 3D, a software system for structural DNA nanotechnology design, analysis and evaluation. Nucleic Acids Res (2009)
  8. P. W. Rothemund. Folding DNA to create nanoscale shapes and patterns. Nature 440, 297-302 (2006).
  9. E. S. Andersen, M. Dong, M. M. Nielsen, K. Jahn, A. Lind-Thomsen, W. Mamdouh, K. V. Gothelf, F. Besenbacher, J. Kjems. DNA origami design of dolphin-shaped structures with flexible tails. ACS Nano 2, 1213-1218 (2008).
  10. The PyMOL Molecular Graphics System (2002).


We would like to thank Prof. Jørgen Kjems for supporting the development of the software program. Also Alan Lindt Thomsen for developing and extending the SARSE java editor and Jan Gorodkin for initiating this long-term editor project. We would like to thank the users of the SARSE – DNA origami package for their constructive comments on the first release of the program.


Figure 1: SARSE editor with imported shape shown as “A” symbols.

Fig 1

Table 1: Input parameters for folding the different faces using the DNA-origami-fold program.

Table 1

Figure 2: SARSE editor showing the result of the DNA-origami-fold with colours indicating the helical twist. The Overview window is opened to show the full design.

Fig 2

Figure 3: SARSE editor showing the result of the color-symbols program with the Overview window open.

Fig 3

Figure 4: Change symbol is used to delete unwanted symbols by inserting a ”-” symbol.

Fig 4

Figure 5: An “X” is inserted to show the connection point of staple strands between project files.

Fig 5

Figure 6: T-loops and T-ends are manually added by inserting “T”-symbols. Staple strands are merged by connecting them with symbols “B” or “G” (crossing the backbone strand “R” if necessary).

Fig 6

Figure 7: PyMol viewer showing the six faces oriented to form a box. The staple strands and backbone strand are coloured according to the colours used in the SARSE editor.

Fig 7

Figure 8: PyMol viewer showing the edge between face A and B allowing the design of 3D linkers.

Fig 8

Figure 9: SARSE editor showing the final sequence design of face A. The output text file with all staple strands is shown.

Fig 9

Associated Publications

Self-assembly of a nanoscale DNA box with a controllable lid, Ebbe S. Andersen, Mingdong Dong, Morten M. Nielsen, Kasper Jahn, Ramesh Subramani, Wael Mamdouh, Monika M. Golas, Bjoern Sander, Holger Stark, Cristiano L. P. Oliveira, Jan Skov Pedersen, Victoria Birkedal, Flemming Besenbacher, Kurt V. Gothelf, and Jørgen Kjems, Nature 459 (7243) 73 - 76 07/05/2009 doi:10.1038/nature07971

Author information

Ebbe Andersen & Morten Nielsen, Centre for DNA Nanotechnology (CDNA), Aarhus University, 8000 Aarhus, Denmark

Source: Protocol Exchange (2009) doi:10.1038/nprot.2009.75. Originally published online 7 May 2009.

Average rating 0 ratings