<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://dna.physics.ox.ac.uk/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Snodinb</id>
	<title>OxDNA - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://dna.physics.ox.ac.uk/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Snodinb"/>
	<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Special:Contributions/Snodinb"/>
	<updated>2026-04-25T00:05:11Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Publications&amp;diff=988</id>
		<title>Publications</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Publications&amp;diff=988"/>
		<updated>2015-09-08T15:40:22Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#T. E. Ouldridge, A. A. Louis and J. P. K. Doye, &#039;&#039;Phys. Rev. Lett&#039;&#039;. &#039;&#039;&#039;104&#039;&#039;&#039;, 178101 (2010)&lt;br /&gt;
#:[http://prl.aps.org/abstract/PRL/v104/i17/e178101 DNA Nanotweezers Studied with a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/0911.0555 arXiv])&lt;br /&gt;
#T. E. Ouldridge, A. A. Louis and J. P. K. Doye, &#039;&#039;J. Chem. Phys&#039;&#039;, &#039;&#039;&#039;134&#039;&#039;&#039;, 085101 (2011)&lt;br /&gt;
#:[http://link.aip.org/link/?JCP/134/085101 Structural, mechanical and thermodynamic properties of a coarse-grained DNA model] ([http://arxiv.org/abs/arXiv:1009.4480 arXiv])&lt;br /&gt;
#T. E. Ouldridge, D.Phil. Thesis, University of Oxford, 2011.&lt;br /&gt;
#:[http://ora.ox.ac.uk/objects/uuid:b2415bb2-7975-4f59-b5e2-8c022b4a3719 Coarse-grained modelling of DNA and DNA self-assembly]&lt;br /&gt;
#F. Romano, A. Hudson, J. P. K. Doye, T. E. Ouldridge, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;136&#039;&#039;&#039;, 215102 (2012)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v136/i21/p215102_s1 The effect of topology on the structure and free energy landscape of DNA kissing complexes] ([http://arxiv.org/abs/1203.3577 arXiv])&lt;br /&gt;
#C. De Michele, L. Rovigatti, T. Bellini, F. Sciortino, &#039;&#039;Soft Matter&#039;&#039; &#039;&#039;&#039;8&#039;&#039;&#039;, 8388 (2012)&lt;br /&gt;
#:[http://pubs.rsc.org/en/content/articlelanding/2012/sm/c2sm25845e Self-assembly of short DNA duplexes: from a coarse-grained model to experiments through a theoretical link] ([http://arxiv.org/abs/1204.0985 arXiv])&lt;br /&gt;
#C. Matek, T. E. Ouldridge, A. Levy, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Phys. Chem. B&#039;&#039; (2012)&lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/jp3080755 DNA cruciform arms nucleate through a correlated but non-synchronous cooperative mechanism] ([http://arxiv.org/abs/1206.2636 arXiv])&lt;br /&gt;
#P. Šulc, F. Romano, T. E. Ouldridge, L. Rovigatti, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;137&#039;&#039;&#039;, 135101 (2012)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v137/i13/p135101_s1 Sequence-dependent thermodynamics of a coarse-grained DNA model] ([http://arxiv.org/abs/1207.3391 arxiv]) &lt;br /&gt;
#F. Romano, D. Chakraborty, J. P. K. Doye, T. E. Ouldridge, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;138&#039;&#039;&#039;, 085101 (2013)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v138/i8/p085101_s1 Coarse-grained simulations of DNA overstretching] ([http://arxiv.org/abs/1209.5892 arXiv])&lt;br /&gt;
#P. Šulc, T. E. Ouldridge, F. Romano, J. P. K. Doye, A. A. Louis, &#039;&#039;Natural Computing&#039;&#039; &#039;&#039;&#039;13&#039;&#039;&#039;, 535  (2014) &lt;br /&gt;
#:[http://link.springer.com/article/10.1007%2Fs11047-013-9391-8 Simulating a burnt-bridges DNA motor with a coarse-grained DNA model] ([http://arxiv.org/abs/1212.4536 arXiv])&lt;br /&gt;
#T. E. Ouldridge, R. L. Hoare, A. A. Louis, J. P. K. Doye, J. Bath, A. J. Turberfield, &#039;&#039;ACS Nano&#039;&#039; (2013) &lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/nn3058483 Optimizing DNA nanotechnology through coarse-grained modelling: a two-footed DNA walker]&lt;br /&gt;
#T. E. Ouldridge, P. Šulc,  F. Romano, J. P. K. Doye, A. A. Louis, &#039;&#039;Nucleic Acids Res.&#039;&#039;, (2013) &lt;br /&gt;
#:[http://nar.oxfordjournals.org/content/early/2013/08/08/nar.gkt687 DNA hybridization kinetics: zippering, internal displacement and sequence dependence] ([http://arxiv.org/abs/1303.3370 arXiv])&lt;br /&gt;
#J.P.K. Doye, T. E. Ouldridge, A. A. Louis, F. Romano, P. Šulc, C. Matek, B.E.K. Snodin, L. Rovigatti, J. S. Schreck, R.M. Harrison, W.P.J. Smith, &#039;&#039;Phys. Chem. Chem. Phys&#039;&#039; (2013)&lt;br /&gt;
#:[http://pubs.rsc.org/en/content/articlelanding/2013/cp/c3cp53545b#!divAbstract Coarse-graining DNA for simulations of DNA nanotechnology] ([http://arxiv.org/abs/1308.3843 arXiv])&lt;br /&gt;
# N. Srinivas, T. E. Ouldridge, P. Šulc, J. M. Schaeffer, B. Yurke, A. A. Louis, J. P. K. Doye, E. Winfree, &#039;&#039;Nucleic Acids Res.&#039;&#039;, (2013)&lt;br /&gt;
#:[http://nar.oxfordjournals.org/content/early/2013/09/07/nar.gkt801.full?sid=762d341b-b72f-4a09-9235-20ad3ef8aeed  On the biophysics and kinetics of toehold-mediated DNA strand displacement]&lt;br /&gt;
#L. Rovigatti, F. Bomboi, F. Sciortino, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;140&#039;&#039;&#039;, 154903 (2014)&lt;br /&gt;
#:[http://dx.doi.org/10.1063/1.4870467 Accurate phase diagram of tetravalent DNA nanostars] ([http://arxiv.org/abs/1401.2837 arXiv])&lt;br /&gt;
# L. Rovigatti, P. Šulc, I. Reguly, F. Romano, &#039;&#039;J. Comput. Chem.&#039;&#039;, &#039;&#039;&#039;36&#039;&#039;&#039;, 1 (2015)&lt;br /&gt;
#:[http://onlinelibrary.wiley.com/doi/10.1002/jcc.23763/pdf A comparison between parallelization approaches in molecular dynamics simulations on GPUs] ([http://arxiv.org/abs/1401.4350 arXiv])&lt;br /&gt;
#P. Šulc, F. Romano, T. E. Ouldridge,  J. P. K. Doye, A. A. Louis,  &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;140&#039;&#039;&#039;, 235102 (2014)&lt;br /&gt;
#:[http://scitation.aip.org/content/aip/journal/jcp/140/23/10.1063/1.4881424 A nucleotide-level coarse-grained model of RNA] ([http://arxiv.org/abs/1403.4180 arXiv])&lt;br /&gt;
#L. Rovigatti, F. Smallenburg, F. Romano, F. Sciortino, &#039;&#039;ACS Nano&#039;&#039;, (2014)&lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/nn501138w Gels of DNA Nanostars Never Crystallise]&lt;br /&gt;
#C. Matek, T. E. Ouldridge, J. P. K. Doye, A. A. Louis, &#039;&#039;Sci. Rep.&#039;&#039;, &#039;&#039;&#039;5&#039;&#039;&#039;, 7655 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1038/srep07655 Plectoneme tip bubbles: Coupled denaturation and writhing in supercoiled DNA] ([http://arxiv.org/abs/1404.2869 arXiv])&lt;br /&gt;
#Q. Wang, B. M. Pettitt, &#039;&#039;Biophys. J.&#039;&#039; &#039;&#039;&#039;106&#039;&#039;&#039;, 1182–1193 (2014)&lt;br /&gt;
#:[http://www.sciencedirect.com/science/article/pii/S0006349514000927 Modeling DNA Thermodynamics under Torsional Stress]&lt;br /&gt;
#  J. S. Schreck, T. E. Ouldridge, F. Romano, P. Šulc, L. Shaw, A. A. Louis, J.P.K. Doye, &#039;&#039;Nucleic Acids Res.&#039;&#039; &#039;&#039;&#039;43&#039;&#039;&#039;, 6181-6190 (2014)&lt;br /&gt;
#:[http://nar.oxfordjournals.org/content/43/13/6181 DNA hairpins primarily promote duplex melting rather than inhibiting hybridization] ([http://arxiv.org/abs/1408.4401 arXiv])&lt;br /&gt;
#  R. Machinek, T.E. Ouldridge, N.E.C. Haley, J. Bath, A. J. Turberfield, &#039;&#039;Nature Comm.&#039;&#039; (2014)&lt;br /&gt;
#:[http://www.nature.com/ncomms/2014/141110/ncomms6324/full/ncomms6324.html Programmable energy landscapes for kinetic control of DNA strand displacement]&lt;br /&gt;
# M. Mosayebi, F. Romano, T. E. Ouldridge, A. A. Louis, J. P. K. Doye, &#039;&#039;J. Phys. Chem. B&#039;&#039; &#039;&#039;&#039;118&#039;&#039;&#039;, 14326-14335 (2014)&lt;br /&gt;
#:[http://arxiv.org/ct?url=http%3A%2F%2Fdx.doi.org%2F10%252E1021%2Fjp510061f&amp;amp;v=13bb91c1 The role of loop stacking in the dynamics of DNA hairpin formation] ([http://arxiv.org/abs/1410.1218 arXiv])&lt;br /&gt;
# P. Krstić, B. Ashcroft and S. Lindsay, &#039;&#039;Nanotechnology&#039;&#039;, (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1088/0957-4484/26/8/084001 Physical model for recognition tunneling]&lt;br /&gt;
# F. Romano and F. Sciortino, &#039;&#039;Phys. Rev. Lett.&#039;&#039; &#039;&#039;&#039;114&#039;&#039;&#039;, 078104 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1103/PhysRevLett.114.078104 Switching Bonds in a DNA Gel: An All-DNA Vitrimer]&lt;br /&gt;
#  J. S. Schreck, T. E. Ouldridge, F. Romano, A. A. Louis, J.P.K. Doye, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;142&#039;&#039;&#039;, 165101 (2015)&lt;br /&gt;
#:[http://scitation.aip.org/content/aip/journal/jcp/142/16/10.1063/1.4917199 Characterizing the bending and flexibility induced by bulges in DNA duplexes] ([http://arxiv.org/abs/1412.6309 arXiv])&lt;br /&gt;
#  M. Mosayebi, A. A. Louis, J.P.K. Doye, T. E. Ouldridge &#039;&#039;arxiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1502.03623 Force-induced rupture of a DNA duplex]&lt;br /&gt;
# T. E. Ouldridge, &#039;&#039;Mol. Phys.&#039;&#039; &#039;&#039;&#039;113&#039;&#039;&#039;, 1-15 (2015)&lt;br /&gt;
#:[http://www.tandfonline.com/doi/abs/10.1080/00268976.2014.975293 DNA nanotechnology: understanding and optimisation through simulation] ([http://arxiv.org/abs/1411.1927 arXiv])&lt;br /&gt;
# P. Šulc, T. E. Ouldridge, F. Romano, J.P.K. Doye, A. A. Louis,  &#039;&#039;Biophys. J.&#039;&#039; &#039;&#039;&#039;108&#039;&#039;&#039;, iss. 5, 1238-1247 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1016/j.bpj.2015.01.023 Modelling toehold-mediated RNA strand displacement] ([http://arxiv.org/abs/1411.3239 arXiv])&lt;br /&gt;
# B. E. K. Snodin, F. Randisi, M. Mosayebi, P. Šulc, J. S. Schreck, F. Romano, T. E. Ouldridge, R. Tsukanov, E. Nir, A. A. Louis, J. P. K. Doye, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;142&#039;&#039;&#039;, 234901 (2015)&lt;br /&gt;
#:[http://scitation.aip.org/content/aip/journal/jcp/142/23/10.1063/1.4921957 Introducing Improved Structural Properties and Salt Dependence into a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/1504.00821 arXiv])&lt;br /&gt;
# C. Matek, P. Šulc, F. Randisi, J.P.K. Doye, A. A. Louis,  &#039;&#039;arXiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1506.02539 Coarse-grained modelling of supercoiled RNA] ([http://arxiv.org/abs/1506.02539 arXiv])&lt;br /&gt;
# R. M. Harryson, F. Romano, T. E. Ouldridge, A. A. Louis, J.P.K. Doye,  &#039;&#039;arXiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1506.09005 Coarse-grained modelling of strong DNA bending I: Thermodynamics and comparison to an experimental &amp;quot;molecular vice&amp;quot;]&lt;br /&gt;
# R. M. Harryson, F. Romano, T. E. Ouldridge, A. A. Louis, J.P.K. Doye,  &#039;&#039;arXiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1506.09008 Coarse-grained modelling of strong DNA bending II: Cyclization]&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Cadnano&amp;diff=987</id>
		<title>Cadnano</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Cadnano&amp;diff=987"/>
		<updated>2015-08-23T09:27:35Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* Choosing the sequence */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Examples]]&lt;br /&gt;
[http://cadnano.org Cadnano] is a tool for designing DNA origami structures. oxDNA includes an interface that allows origami designs generated in cadnano to be used as starting configurations for simulation. Cadnano can also be used in this way to make non-origami structures such as DNA tiles for use in the model.&lt;br /&gt;
&lt;br /&gt;
== Example: DX tile ==&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/PetrSulc/images/tilechimera.png&lt;br /&gt;
&lt;br /&gt;
The use of cadnano for the purpose of creating starting configurations will be illustrated using a tile similar to the DX tile. In this case cadnano 2 will be used to design the tile, although the original cadnano operates in a similar way and is fully compatible with the interface to oxDNA. Note that, while using cadnano, any unwanted actions can be undone with ctrl+z (this feature is new in cadnano 2).&lt;br /&gt;
&lt;br /&gt;
First click the blue &amp;quot;add new square lattice&amp;quot; button on the toolbar - a new square lattice will be created in the lattice view. The circles represent a cross-sectional view of potential DNA double helices on the square lattice. Create two empty virtual double helices in the path view by clicking on any two adjacent circles, one on top of the other. Next, using the pencil tool from the toolbar on the right, fill in all four rows in the path view by dragging from one end of each row to the other. Each double helix has two rows, and each row represents one of the strands of a double helix.&lt;br /&gt;
&lt;br /&gt;
[[Image:cadnano_1.png]]&lt;br /&gt;
&lt;br /&gt;
The next step is to add the crossovers between the double helices. Using origami terminology, the thin blue lines represent the scaffold strands, while the thicker lines of different colour represent the staple strands. Make a crossover between the staple strands near the middle of the design, by first clicking on one of the staple strands near its middle and then clicking one of the numbers near the middle next to that staple strand. Also click the number just to the left or right of the crossover you just made, to make a second crossover. Do the same for the the scaffold strands - the crossovers can go either to the left or the right of the staple crossovers, not at the closest place to the staple crossovers, but the next closest place.&lt;br /&gt;
&lt;br /&gt;
[[Image:cadnano_2.png]]&lt;br /&gt;
&lt;br /&gt;
The tile is almost complete; the final step is to correct the lengths of the strands. Switch to the select tool and drag the ends of the strands to change their lengths. The two strands that are complementary to a double crossover should extend 8 bases past that crossover. The other two strands should extend 5 bases past those two strands. The yellow bar can help with tasks like this; drag it to any column to see the index of that column. If extra space is required, the virtual helices can be extended in either direction by clicking on the arrows at the top right of the topmost virtual helix in the path view.&lt;br /&gt;
&lt;br /&gt;
[[Image:cadnano_3.png]]&lt;br /&gt;
&lt;br /&gt;
The tile design is now finished and ready to be used as a starting configuration for simulation after some processing. The design can be found at ${oxDNA}/EXAMPLES/CADNANO_INTERFACE/TILE/tile.json.&lt;br /&gt;
&lt;br /&gt;
== Using Cadnano Designs as Starting Configurations for oxDNA ==&lt;br /&gt;
&lt;br /&gt;
The script candnano_interface.py is used to generate an oxDNA configuration and topology file from a cadnano design. In addition it creates some files containing information about the origami that can be useful later for analysing its trajectory. Its usage is&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;python cadnano_interface.py &amp;lt;cadnano_file&amp;gt; &amp;lt;design_type&amp;gt; [box_size]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The design type must be either sq or he, corresponding to either a square or honeycomb lattice - typically a 2D origami is on a square lattice, while a 3D origami is on a honeycomb lattice. The box size option allows the user to specify a simulation box size different to the default value of two times (in linear dimension) the largest dimension of the cadnano design.&lt;br /&gt;
&lt;br /&gt;
When the configuration and topology files are first created, they cannot be used in an ordinary oxDNA simulation until they have been relaxed. This is achieved using an oxDNA MD simulation with a very low temperature and a very strongly coupled thermostat. An example input file for this simulation is found at ${oxDNA}/EXAMPLES/CADNANO_INTERFACE/input_relax. The process is very fast as the simulation need only run for around 100 steps.&lt;br /&gt;
&lt;br /&gt;
For the tile discussed above, the configuration files before and after relaxation, as well as the topology file, can be found in ${oxDNA}/EXAMPLES/CADNANO_INTERFACE/TILE/.&lt;br /&gt;
&lt;br /&gt;
== Designs with forced crossovers ==&lt;br /&gt;
&lt;br /&gt;
Forced crossovers, that is crossovers made by the pencil tool instead of using the default cadnano default positions, will probably create a structure that cannot be relaxed using the input_relax method detailed in the previous section. There is now a way to relax these structures too, by using an alternative interaction_type with a custom interaction term between neighbours on a strand. An example and more detailed description are provided in the ${oxDNA}/EXAMPLES/RELAX_INITIAL_CONFIGURATION/ directory.&lt;br /&gt;
&lt;br /&gt;
Note that using this interaction to relax structures can be tricky and the difficulty varies depending on the design. It may be necessary to use a lot of trial and error, to modify the cadnano file, and to use external forces to guide the origami towards the correct structure.&lt;br /&gt;
&lt;br /&gt;
== Choosing the sequence ==&lt;br /&gt;
&lt;br /&gt;
By default, a scaffold strand with a random sequence is generated. It is possible to set the sequence instead. The script looks for a file containing the sequence called &amp;quot;caca.sqs&amp;quot;. That file should contain a letter (A,T,G,C or R for random) designating the sequence of the scaffold strand, for every pair of squares (which denote a base pair) in the cadnano design. This includes squares that do not contain a strand. So the sequence file should be an M by N grid of letters where M is the length of the helices and N is the number of helices in the cadnano design.&lt;br /&gt;
&lt;br /&gt;
== Limitations ==&lt;br /&gt;
&lt;br /&gt;
:For very large cadnano designs, or for designs of small origamis but with very long unused sections of virtual double helices, the script requires a very large amount of memory which may cause problems.&lt;br /&gt;
&lt;br /&gt;
:A large number of insertions or deletions on a small section of dna (where a section is defined as the bases between nodes, a node being a crossover or the end of a strand) may create a structure that cannot be relaxed.&lt;br /&gt;
&lt;br /&gt;
:Very large structures with very frequent crossovers may create a structure that cannot be relaxed.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Cadnano&amp;diff=986</id>
		<title>Cadnano</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Cadnano&amp;diff=986"/>
		<updated>2015-08-23T09:25:49Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Examples]]&lt;br /&gt;
[http://cadnano.org Cadnano] is a tool for designing DNA origami structures. oxDNA includes an interface that allows origami designs generated in cadnano to be used as starting configurations for simulation. Cadnano can also be used in this way to make non-origami structures such as DNA tiles for use in the model.&lt;br /&gt;
&lt;br /&gt;
== Example: DX tile ==&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/PetrSulc/images/tilechimera.png&lt;br /&gt;
&lt;br /&gt;
The use of cadnano for the purpose of creating starting configurations will be illustrated using a tile similar to the DX tile. In this case cadnano 2 will be used to design the tile, although the original cadnano operates in a similar way and is fully compatible with the interface to oxDNA. Note that, while using cadnano, any unwanted actions can be undone with ctrl+z (this feature is new in cadnano 2).&lt;br /&gt;
&lt;br /&gt;
First click the blue &amp;quot;add new square lattice&amp;quot; button on the toolbar - a new square lattice will be created in the lattice view. The circles represent a cross-sectional view of potential DNA double helices on the square lattice. Create two empty virtual double helices in the path view by clicking on any two adjacent circles, one on top of the other. Next, using the pencil tool from the toolbar on the right, fill in all four rows in the path view by dragging from one end of each row to the other. Each double helix has two rows, and each row represents one of the strands of a double helix.&lt;br /&gt;
&lt;br /&gt;
[[Image:cadnano_1.png]]&lt;br /&gt;
&lt;br /&gt;
The next step is to add the crossovers between the double helices. Using origami terminology, the thin blue lines represent the scaffold strands, while the thicker lines of different colour represent the staple strands. Make a crossover between the staple strands near the middle of the design, by first clicking on one of the staple strands near its middle and then clicking one of the numbers near the middle next to that staple strand. Also click the number just to the left or right of the crossover you just made, to make a second crossover. Do the same for the the scaffold strands - the crossovers can go either to the left or the right of the staple crossovers, not at the closest place to the staple crossovers, but the next closest place.&lt;br /&gt;
&lt;br /&gt;
[[Image:cadnano_2.png]]&lt;br /&gt;
&lt;br /&gt;
The tile is almost complete; the final step is to correct the lengths of the strands. Switch to the select tool and drag the ends of the strands to change their lengths. The two strands that are complementary to a double crossover should extend 8 bases past that crossover. The other two strands should extend 5 bases past those two strands. The yellow bar can help with tasks like this; drag it to any column to see the index of that column. If extra space is required, the virtual helices can be extended in either direction by clicking on the arrows at the top right of the topmost virtual helix in the path view.&lt;br /&gt;
&lt;br /&gt;
[[Image:cadnano_3.png]]&lt;br /&gt;
&lt;br /&gt;
The tile design is now finished and ready to be used as a starting configuration for simulation after some processing. The design can be found at ${oxDNA}/EXAMPLES/CADNANO_INTERFACE/TILE/tile.json.&lt;br /&gt;
&lt;br /&gt;
== Using Cadnano Designs as Starting Configurations for oxDNA ==&lt;br /&gt;
&lt;br /&gt;
The script candnano_interface.py is used to generate an oxDNA configuration and topology file from a cadnano design. In addition it creates some files containing information about the origami that can be useful later for analysing its trajectory. Its usage is&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;python cadnano_interface.py &amp;lt;cadnano_file&amp;gt; &amp;lt;design_type&amp;gt; [box_size]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The design type must be either sq or he, corresponding to either a square or honeycomb lattice - typically a 2D origami is on a square lattice, while a 3D origami is on a honeycomb lattice. The box size option allows the user to specify a simulation box size different to the default value of two times (in linear dimension) the largest dimension of the cadnano design.&lt;br /&gt;
&lt;br /&gt;
When the configuration and topology files are first created, they cannot be used in an ordinary oxDNA simulation until they have been relaxed. This is achieved using an oxDNA MD simulation with a very low temperature and a very strongly coupled thermostat. An example input file for this simulation is found at ${oxDNA}/EXAMPLES/CADNANO_INTERFACE/input_relax. The process is very fast as the simulation need only run for around 100 steps.&lt;br /&gt;
&lt;br /&gt;
For the tile discussed above, the configuration files before and after relaxation, as well as the topology file, can be found in ${oxDNA}/EXAMPLES/CADNANO_INTERFACE/TILE/.&lt;br /&gt;
&lt;br /&gt;
== Designs with forced crossovers ==&lt;br /&gt;
&lt;br /&gt;
Forced crossovers, that is crossovers made by the pencil tool instead of using the default cadnano default positions, will probably create a structure that cannot be relaxed using the input_relax method detailed in the previous section. There is now a way to relax these structures too, by using an alternative interaction_type with a custom interaction term between neighbours on a strand. An example and more detailed description are provided in the ${oxDNA}/EXAMPLES/RELAX_INITIAL_CONFIGURATION/ directory.&lt;br /&gt;
&lt;br /&gt;
Note that using this interaction to relax structures can be tricky and the difficulty varies depending on the design. It may be necessary to use a lot of trial and error, to modify the cadnano file, and to use external forces to guide the origami towards the correct structure.&lt;br /&gt;
&lt;br /&gt;
== Choosing the sequence ==&lt;br /&gt;
&lt;br /&gt;
By default, a structure with a random sequence is generated. It is possible to set the sequence instead. The script looks for a file containing the sequence called &amp;quot;caca.sqs&amp;quot;. That file should contain a letter (A,T,G,C or R for random) designating the sequence of the scaffold strand, for every pair of squares (which denote a base pair) in the cadnano design. This includes squares that do not contain a strand. So the sequence file should be an M by N grid of letters where M is the length of the helices and N is the number of helices in the cadnano design.&lt;br /&gt;
&lt;br /&gt;
== Limitations ==&lt;br /&gt;
&lt;br /&gt;
:For very large cadnano designs, or for designs of small origamis but with very long unused sections of virtual double helices, the script requires a very large amount of memory which may cause problems.&lt;br /&gt;
&lt;br /&gt;
:A large number of insertions or deletions on a small section of dna (where a section is defined as the bases between nodes, a node being a crossover or the end of a strand) may create a structure that cannot be relaxed.&lt;br /&gt;
&lt;br /&gt;
:Very large structures with very frequent crossovers may create a structure that cannot be relaxed.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Main_Page&amp;diff=983</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Main_Page&amp;diff=983"/>
		<updated>2015-07-16T13:56:41Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== oxDNA == &lt;br /&gt;
&lt;br /&gt;
oxDNA is a simulation code originally developed to implement the coarse-grained DNA model introduced by T. E. Ouldridge, J. P. K. Doye and A. A. Louis. It has been since reworked and it is now an extensible simulation+analysis framework. It natively supports DNA (oxDNA model), RNA (oxRNA model), Lennard-Jones and patchy particle simulations on both CPUs and NVIDIA GPUs.&lt;br /&gt;
&lt;br /&gt;
The code implements Monte Carlo and Molecular Dynamics and can be used as a basis to numerically study DNA, RNA, Lennard-Jones and patchy particle systems. The developers are F. Romano, P. Šulc, B. Snodin and T. E. Ouldridge in the [http://physchem.ox.ac.uk/~doye/jon/ Doye] and [http://www-thphys.physics.ox.ac.uk/people/ArdLouis/ Louis] groups at the University of Oxford and L. Rovigatti, formerly in the [http://pacci.phys.uniroma1.it/?q=node/40 Sciortino] group in Rome and now in the [http://comp-phys.univie.ac.at/homepages/homepage-likos/likos-group/ Likos] group in Vienna. Additionally, Molecular Dynamics simulations modeling DNA-linked nanoparticles have been implemented by J. Hendricks, T. Fochtman, and B. Walcutt in the [http://self-assembly.net/ Patitz] group at the University of Arkansas.&lt;br /&gt;
&lt;br /&gt;
The oxDNA and oxRNA models are intended to provide a physical representation of the thermodynamic and mechanical properties of single- and double-stranded DNA and RNA, as well as the transition between the two. At the same time, the representation of DNA and RNA is sufficiently simple to allow access to assembly processes which occur on long timescales, beyond the reach of atomistic simulations. Basic examples include duplex formation from single strands, and the folding of a self-complementary single strand into a hairpin. These are the underlying processes of the fast-growing field of  [http://en.wikipedia.org/wiki/DNA_nanotechnology DNA nanotechnology] and RNA nanotechnology, as well as many biophysical uses of DNA/RNA, allowing the model to be used to understand these fascinating systems.&lt;br /&gt;
&lt;br /&gt;
* [[Download and Installation]]&lt;br /&gt;
&lt;br /&gt;
* [[Features]]&lt;br /&gt;
&lt;br /&gt;
* [[DNA model introduction]]&lt;br /&gt;
&lt;br /&gt;
* [[RNA model introduction]]&lt;br /&gt;
&lt;br /&gt;
* [[Documentation]]&lt;br /&gt;
&lt;br /&gt;
* [[:Category:Examples|Examples]]&lt;br /&gt;
&lt;br /&gt;
* [[Screenshots|Screenshots and movies]]&lt;br /&gt;
&lt;br /&gt;
* [[Gallery of studied systems]]&lt;br /&gt;
&lt;br /&gt;
* [[Publications]]&lt;br /&gt;
&lt;br /&gt;
* [[Gallery of Journal Covers]]&lt;br /&gt;
&lt;br /&gt;
* [[License and Copyright]]&lt;br /&gt;
&lt;br /&gt;
* [[Previous version]]&lt;br /&gt;
&lt;br /&gt;
* [[Contact information]]&lt;br /&gt;
&lt;br /&gt;
== News ==&lt;br /&gt;
* Code implementing [[DNA_model_introduction#oxDNA2|oxDNA2]], a new version of the oxDNA model, is now included in the latest release. See the recent arXiv publication [http://arxiv.org/abs/1504.00821] for more information about the new model.&lt;br /&gt;
* Follow the latest updates about oxDNA on our twitter account: [https://twitter.com/ox_dna ox_dna]&lt;br /&gt;
* You can post questions about the installation and usage of our code to the newly created [http://sourceforge.net/p/oxdna/discussion/ Discussion forum] for oxDNA at sourceforge.net&lt;br /&gt;
&lt;br /&gt;
== Acknowledgments ==&lt;br /&gt;
&lt;br /&gt;
We thank our co-workers C. Matek, R. Harrison and W. Smith for having contributed bits of code and/or material for the examples and our webmasters Russell Jones and Greg Agacinski for maintaining the website.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=980</id>
		<title>Gallery of Journal Covers</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=980"/>
		<updated>2015-07-08T14:43:06Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
Here is a list of all the journal covers that papers using oxDNA (the model and/or the code) have been selected for.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We should mention that most of them were created with [http://www.cgl.ucsf.edu/chimera/ UCSF chimera].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|- style=&amp;quot;vertical-align:top;&amp;quot;&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Chem. Phys. 142, 2015&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Chem. Phys. 143, 2015&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | Biophys. J. 108, 2015&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover1.jpg|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover2.jpg|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover3.jpg|150px]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Chem. Phys. 140, 2014&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Chem. Phys. 137, 2012&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | Mol. Phys. 2015&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover4.jpg|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover5.jpg|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:Tmph20.v113.i01.cover.jpg|150px]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Comput. Chem. 36, 2015&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J Chem Phys 134, 2011&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:Jcc cover.png|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:Cover0.png|150px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=979</id>
		<title>Gallery of Journal Covers</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=979"/>
		<updated>2015-07-08T14:42:49Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
Here is a list of all the journal covers that papers using oxDNA (the model and/or the code) have been selected for.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We should mention that most of them were created with [http://www.cgl.ucsf.edu/chimera/ UCSF chimera].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|- style=&amp;quot;vertical-align:top;&amp;quot;&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Chem. Phys. 142, 2015&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Chem. Phys. 143, 2015&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | Biophys. J. 108, 2015&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover1.jpg|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover2.jpg|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover3.jpg|150px]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Chem. Phys. 140, 2014&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Chem. Phys. 137, 2012&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | Mol. Phys. 2015&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover4.jpg|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover5.jpg|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:Tmph20.v113.i01.cover.jpg|150px]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Comput. Chem. 36, 2015&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J Chem Phys 134, 2011&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:Jcc cover.png|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:Cover0|150px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=File:Cover0.png&amp;diff=978</id>
		<title>File:Cover0.png</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=File:Cover0.png&amp;diff=978"/>
		<updated>2015-07-08T14:41:35Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: JCP 134 2011&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;JCP 134 2011&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=977</id>
		<title>Gallery of Journal Covers</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=977"/>
		<updated>2015-07-08T14:39:31Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
Here is a list of all the journal covers that papers using oxDNA (the model and/or the code) have been selected for.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We should mention that most of them were created with [http://www.cgl.ucsf.edu/chimera/ UCSF chimera].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|- style=&amp;quot;vertical-align:top;&amp;quot;&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Chem. Phys. 142, 2015&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Chem. Phys. 143, 2015&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | Biophys. J. 108, 2015&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover1.jpg|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover2.jpg|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover3.jpg|150px]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Chem. Phys. 140, 2014&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Chem. Phys. 137, 2012&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | Mol. Phys. 2015&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover4.jpg|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:cover5.jpg|150px]]&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:Tmph20.v113.i01.cover.jpg|150px]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | J. Comput. Chem. 36, 2015&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width:200px; text-align:center;&amp;quot; | [[File:Jcc cover.png|150px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=976</id>
		<title>Gallery of Journal Covers</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=976"/>
		<updated>2015-07-08T14:19:08Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
|J. Chem. Phys. 142, 2015&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
|J. Chem. Phys. 143, 2015&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
|Biophys. J. 108, 2015&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
| [[File:cover1.jpg|150px]]&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
| [[File:cover2.jpg|150px]]&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
| [[File:cover3.jpg|150px]]&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
|J. Chem. Phys. 140, 2014&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
|J. Chem. Phys. 137, 2012&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
|Mol. Phys. 2015&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
| [[File:cover4.jpg|150px]]&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
| [[File:cover5.jpg|150px]]&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
| [[File:Tmph20.v113.i01.cover.jpg|150px]]&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
|J. Comput. Chem. 36, 2015&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
| [[File:Jcc cover.png|150px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=File:Jcc_cover.png&amp;diff=975</id>
		<title>File:Jcc cover.png</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=File:Jcc_cover.png&amp;diff=975"/>
		<updated>2015-07-08T14:14:48Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: cover of J Comp Chem&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;cover of J Comp Chem&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=File:Tmph20.v113.i01.cover.jpg&amp;diff=974</id>
		<title>File:Tmph20.v113.i01.cover.jpg</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=File:Tmph20.v113.i01.cover.jpg&amp;diff=974"/>
		<updated>2015-07-08T14:07:51Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: mol phys cover&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;mol phys cover&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=970</id>
		<title>Gallery of Journal Covers</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=970"/>
		<updated>2015-07-07T19:49:46Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;under construction....&lt;br /&gt;
&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
|JCP 142, 2015&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
|JCP 143, 2015&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
|BioPhysJ, 2015&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
| [[File:cover1.jpg|150px]]&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
| [[File:cover2.jpg|150px]]&lt;br /&gt;
|style=&amp;quot;width: 20%;&amp;quot;|&lt;br /&gt;
| [[File:cover3.jpg|150px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=969</id>
		<title>Gallery of Journal Covers</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=969"/>
		<updated>2015-07-07T19:48:48Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;under construction....&lt;br /&gt;
&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
|style=&amp;quot;width: 33%;&amp;quot;|&lt;br /&gt;
|JCP 142, 2015&lt;br /&gt;
|style=&amp;quot;width: 33%;&amp;quot;|&lt;br /&gt;
|JCP 143, 2015&lt;br /&gt;
|style=&amp;quot;width: 33%;&amp;quot;|&lt;br /&gt;
|BioPhysJ, 2015&lt;br /&gt;
|-&lt;br /&gt;
| [[File:cover1.jpg|150px]]&lt;br /&gt;
| [[File:cover2.jpg|150px]]&lt;br /&gt;
| [[File:cover3.jpg|150px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=968</id>
		<title>Gallery of Journal Covers</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=968"/>
		<updated>2015-07-07T19:48:31Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;under construction....&lt;br /&gt;
&lt;br /&gt;
{|width=&amp;quot;85%&amp;quot;|&lt;br /&gt;
|style=&amp;quot;width: 33%;&amp;quot;|&lt;br /&gt;
|JCP 142, 2015&lt;br /&gt;
|width=&amp;quot;33%&amp;quot;&lt;br /&gt;
|JCP 143, 2015&lt;br /&gt;
|width=&amp;quot;33%&amp;quot;&lt;br /&gt;
|BioPhysJ, 2015&lt;br /&gt;
|-&lt;br /&gt;
| [[File:cover1.jpg|150px]]&lt;br /&gt;
| [[File:cover2.jpg|150px]]&lt;br /&gt;
| [[File:cover3.jpg|150px]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=967</id>
		<title>Gallery of Journal Covers</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=967"/>
		<updated>2015-07-07T19:40:08Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;under construction....&lt;br /&gt;
&lt;br /&gt;
*JCP 142, 2015*&lt;br /&gt;
[[File:cover1.jpg|150px]]&lt;br /&gt;
&lt;br /&gt;
*JCP 143, 2015*&lt;br /&gt;
[[File:cover2.jpg|150px]]&lt;br /&gt;
&lt;br /&gt;
*BioPhysJ, 2015*&lt;br /&gt;
[[File:cover3.jpg|150px]]&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=966</id>
		<title>Gallery of Journal Covers</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=966"/>
		<updated>2015-07-07T19:38:12Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;under construction....&lt;br /&gt;
&lt;br /&gt;
[[File:cover1.jpg]]&lt;br /&gt;
&lt;br /&gt;
[[File:cover2.jpg]]&lt;br /&gt;
&lt;br /&gt;
[[File:cover3.jpg]]&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=File:Cover3.jpg&amp;diff=965</id>
		<title>File:Cover3.jpg</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=File:Cover3.jpg&amp;diff=965"/>
		<updated>2015-07-07T19:37:27Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: Biophys J 2015&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Biophys J 2015&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=File:Cover2.jpg&amp;diff=964</id>
		<title>File:Cover2.jpg</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=File:Cover2.jpg&amp;diff=964"/>
		<updated>2015-07-07T19:36:55Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: Cover of JCP 142 2015&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Cover of JCP 142 2015&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=File:Cover1.jpg&amp;diff=963</id>
		<title>File:Cover1.jpg</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=File:Cover1.jpg&amp;diff=963"/>
		<updated>2015-07-07T19:35:11Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: Cover of JCP 143 2015&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Cover of JCP 143 2015&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=962</id>
		<title>Gallery of Journal Covers</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Gallery_of_Journal_Covers&amp;diff=962"/>
		<updated>2015-07-07T19:34:09Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: Created page with &amp;quot;under construction....&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;under construction....&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Main_Page&amp;diff=961</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Main_Page&amp;diff=961"/>
		<updated>2015-07-07T19:32:45Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== oxDNA == &lt;br /&gt;
&lt;br /&gt;
oxDNA is a simulation code originally developed to implement the coarse-grained DNA model introduced by T. E. Ouldridge, J. P. K. Doye and A. A. Louis. It has been since reworked and it is now an extensible simulation+analysis framework. It natively supports DNA (oxDNA model), RNA (oxRNA model), Lennard-Jones and patchy particle simulations on both CPUs and NVIDIA GPUs.&lt;br /&gt;
&lt;br /&gt;
The code implements Monte Carlo and Molecular Dynamics and can be used as a basis to numerically study DNA, RNA, Lennard-Jones and patchy particle systems. The developers are F. Romano, P. Šulc, B. Snodin and T. E. Ouldridge in the [http://physchem.ox.ac.uk/~doye/jon/ Doye] and [http://www-thphys.physics.ox.ac.uk/people/ArdLouis/ Louis] groups at the University of Oxford and L. Rovigatti, formerly in the [http://pacci.phys.uniroma1.it/?q=node/40 Sciortino] group in Rome and now in the [http://comp-phys.univie.ac.at/homepages/homepage-likos/likos-group/ Likos] group in Vienna.&lt;br /&gt;
&lt;br /&gt;
The oxDNA and oxRNA models are intended to provide a physical representation of the thermodynamic and mechanical properties of single- and double-stranded DNA and RNA, as well as the transition between the two. At the same time, the representation of DNA and RNA is sufficiently simple to allow access to assembly processes which occur on long timescales, beyond the reach of atomistic simulations. Basic examples include duplex formation from single strands, and the folding of a self-complementary single strand into a hairpin. These are the underlying processes of the fast-growing field of  [http://en.wikipedia.org/wiki/DNA_nanotechnology DNA nanotechnology] and RNA nanotechnology, as well as many biophysical uses of DNA/RNA, allowing the model to be used to understand these fascinating systems.&lt;br /&gt;
&lt;br /&gt;
* [[Download and Installation]]&lt;br /&gt;
&lt;br /&gt;
* [[Features]]&lt;br /&gt;
&lt;br /&gt;
* [[DNA model introduction]]&lt;br /&gt;
&lt;br /&gt;
* [[RNA model introduction]]&lt;br /&gt;
&lt;br /&gt;
* [[Documentation]]&lt;br /&gt;
&lt;br /&gt;
* [[:Category:Examples|Examples]]&lt;br /&gt;
&lt;br /&gt;
* [[Screenshots|Screenshots and movies]]&lt;br /&gt;
&lt;br /&gt;
* [[Gallery of studied systems]]&lt;br /&gt;
&lt;br /&gt;
* [[Publications]]&lt;br /&gt;
&lt;br /&gt;
* [[Gallery of Journal Covers]]&lt;br /&gt;
&lt;br /&gt;
* [[License and Copyright]]&lt;br /&gt;
&lt;br /&gt;
* [[Previous version]]&lt;br /&gt;
&lt;br /&gt;
* [[Contact information]]&lt;br /&gt;
&lt;br /&gt;
== News ==&lt;br /&gt;
* Code implementing [[DNA_model_introduction#oxDNA2|oxDNA2]], a new version of the oxDNA model, is now included in the latest release. See the recent arXiv publication [http://arxiv.org/abs/1504.00821] for more information about the new model.&lt;br /&gt;
* Follow the latest updates about oxDNA on our twitter account: [https://twitter.com/ox_dna ox_dna]&lt;br /&gt;
* You can post questions about the installation and usage of our code to the newly created [http://sourceforge.net/p/oxdna/discussion/ Discussion forum] for oxDNA at sourceforge.net&lt;br /&gt;
&lt;br /&gt;
== Acknowledgments ==&lt;br /&gt;
&lt;br /&gt;
We thank our co-workers C. Matek, R. Harrison and W. Smith for having contributed bits of code and/or material for the examples and our webmasters Russell Jones and Greg Agacinski for maintaining the website.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=User:Snodinb/common.css&amp;diff=960</id>
		<title>User:Snodinb/common.css</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=User:Snodinb/common.css&amp;diff=960"/>
		<updated>2015-07-07T19:31:23Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: Blanked the page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=User:Snodinb/common.css&amp;diff=959</id>
		<title>User:Snodinb/common.css</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=User:Snodinb/common.css&amp;diff=959"/>
		<updated>2015-07-07T19:30:51Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{font-family: courier new}&lt;br /&gt;
#content {color: red}&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=User:Snodinb/common.css&amp;diff=958</id>
		<title>User:Snodinb/common.css</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=User:Snodinb/common.css&amp;diff=958"/>
		<updated>2015-07-07T19:28:21Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: Created page with &amp;quot;{font-family: courier new}&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{font-family: courier new}&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Publications&amp;diff=957</id>
		<title>Publications</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Publications&amp;diff=957"/>
		<updated>2015-07-01T14:34:31Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#T. E. Ouldridge, A. A. Louis and J. P. K. Doye, &#039;&#039;Phys. Rev. Lett&#039;&#039;. &#039;&#039;&#039;104&#039;&#039;&#039;, 178101 (2010)&lt;br /&gt;
#:[http://prl.aps.org/abstract/PRL/v104/i17/e178101 DNA Nanotweezers Studied with a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/0911.0555 arXiv])&lt;br /&gt;
#T. E. Ouldridge, A. A. Louis and J. P. K. Doye, &#039;&#039;J. Chem. Phys&#039;&#039;, &#039;&#039;&#039;134&#039;&#039;&#039;, 085101 (2011)&lt;br /&gt;
#:[http://link.aip.org/link/?JCP/134/085101 Structural, mechanical and thermodynamic properties of a coarse-grained DNA model] ([http://arxiv.org/abs/arXiv:1009.4480 arXiv])&lt;br /&gt;
#T. E. Ouldridge, D.Phil. Thesis, University of Oxford, 2011.&lt;br /&gt;
#:[http://ora.ox.ac.uk/objects/uuid:b2415bb2-7975-4f59-b5e2-8c022b4a3719 Coarse-grained modelling of DNA and DNA self-assembly]&lt;br /&gt;
#F. Romano, A. Hudson, J. P. K. Doye, T. E. Ouldridge, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;136&#039;&#039;&#039;, 215102 (2012)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v136/i21/p215102_s1 The effect of topology on the structure and free energy landscape of DNA kissing complexes] ([http://arxiv.org/abs/1203.3577 arXiv])&lt;br /&gt;
#C. De Michele, L. Rovigatti, T. Bellini, F. Sciortino, &#039;&#039;Soft Matter&#039;&#039; &#039;&#039;&#039;8&#039;&#039;&#039;, 8388 (2012)&lt;br /&gt;
#:[http://pubs.rsc.org/en/content/articlelanding/2012/sm/c2sm25845e Self-assembly of short DNA duplexes: from a coarse-grained model to experiments through a theoretical link] ([http://arxiv.org/abs/1204.0985 arXiv])&lt;br /&gt;
#C. Matek, T. E. Ouldridge, A. Levy, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Phys. Chem. B&#039;&#039; (2012)&lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/jp3080755 DNA cruciform arms nucleate through a correlated but non-synchronous cooperative mechanism] ([http://arxiv.org/abs/1206.2636 arXiv])&lt;br /&gt;
#P. Šulc, F. Romano, T. E. Ouldridge, L. Rovigatti, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;137&#039;&#039;&#039;, 135101 (2012)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v137/i13/p135101_s1 Sequence-dependent thermodynamics of a coarse-grained DNA model] ([http://arxiv.org/abs/1207.3391 arxiv]) &lt;br /&gt;
#F. Romano, D. Chakraborty, J. P. K. Doye, T. E. Ouldridge, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;138&#039;&#039;&#039;, 085101 (2013)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v138/i8/p085101_s1 Coarse-grained simulations of DNA overstretching] ([http://arxiv.org/abs/1209.5892 arXiv])&lt;br /&gt;
#P. Šulc, T. E. Ouldridge, F. Romano, J. P. K. Doye, A. A. Louis, &#039;&#039;Natural Computing&#039;&#039; &#039;&#039;&#039;13&#039;&#039;&#039;, 535  (2014) &lt;br /&gt;
#:[http://link.springer.com/article/10.1007%2Fs11047-013-9391-8 Simulating a burnt-bridges DNA motor with a coarse-grained DNA model] ([http://arxiv.org/abs/1212.4536 arXiv])&lt;br /&gt;
#T. E. Ouldridge, R. L. Hoare, A. A. Louis, J. P. K. Doye, J. Bath, A. J. Turberfield, &#039;&#039;ACS Nano&#039;&#039; (2013) &lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/nn3058483 Optimizing DNA nanotechnology through coarse-grained modelling: a two-footed DNA walker]&lt;br /&gt;
#T. E. Ouldridge, P. Šulc,  F. Romano, J. P. K. Doye, A. A. Louis, &#039;&#039;Nucleic Acids Res.&#039;&#039;, (2013) &lt;br /&gt;
#:[http://nar.oxfordjournals.org/content/early/2013/08/08/nar.gkt687 DNA hybridization kinetics: zippering, internal displacement and sequence dependence] ([http://arxiv.org/abs/1303.3370 arXiv])&lt;br /&gt;
#J.P.K. Doye, T. E. Ouldridge, A. A. Louis, F. Romano, P. Šulc, C. Matek, B.E.K. Snodin, L. Rovigatti, J. S. Schreck, R.M. Harrison, W.P.J. Smith, &#039;&#039;Phys. Chem. Chem. Phys&#039;&#039; (2013)&lt;br /&gt;
#:[http://pubs.rsc.org/en/content/articlelanding/2013/cp/c3cp53545b#!divAbstract Coarse-graining DNA for simulations of DNA nanotechnology] ([http://arxiv.org/abs/1308.3843 arXiv])&lt;br /&gt;
# N. Srinivas, T. E. Ouldridge, P. Šulc, J. M. Schaeffer, B. Yurke, A. A. Louis, J. P. K. Doye, E. Winfree, &#039;&#039;Nucleic Acids Res.&#039;&#039;, (2013)&lt;br /&gt;
#:[http://nar.oxfordjournals.org/content/early/2013/09/07/nar.gkt801.full?sid=762d341b-b72f-4a09-9235-20ad3ef8aeed  On the biophysics and kinetics of toehold-mediated DNA strand displacement]&lt;br /&gt;
#L. Rovigatti, F. Bomboi, F. Sciortino, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;140&#039;&#039;&#039;, 154903 (2014)&lt;br /&gt;
#:[http://dx.doi.org/10.1063/1.4870467 Accurate phase diagram of tetravalent DNA nanostars] ([http://arxiv.org/abs/1401.2837 arXiv])&lt;br /&gt;
# L. Rovigatti, P. Šulc, I. Reguly, F. Romano, &#039;&#039;J. Comput. Chem.&#039;&#039;, &#039;&#039;&#039;36&#039;&#039;&#039;, 1 (2015)&lt;br /&gt;
#:[http://onlinelibrary.wiley.com/doi/10.1002/jcc.23763/pdf A comparison between parallelization approaches in molecular dynamics simulations on GPUs] ([http://arxiv.org/abs/1401.4350 arXiv])&lt;br /&gt;
#P. Šulc, F. Romano, T. E. Ouldridge,  J. P. K. Doye, A. A. Louis,  &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;140&#039;&#039;&#039;, 235102 (2014)&lt;br /&gt;
#:[http://scitation.aip.org/content/aip/journal/jcp/140/23/10.1063/1.4881424 A nucleotide-level coarse-grained model of RNA] ([http://arxiv.org/abs/1403.4180 arXiv])&lt;br /&gt;
#L. Rovigatti, F. Smallenburg, F. Romano, F. Sciortino, &#039;&#039;ACS Nano&#039;&#039;, (2014)&lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/nn501138w Gels of DNA Nanostars Never Crystallise]&lt;br /&gt;
#C. Matek, T. E. Ouldridge, J. P. K. Doye, A. A. Louis, &#039;&#039;Sci. Rep.&#039;&#039;, &#039;&#039;&#039;5&#039;&#039;&#039;, 7655 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1038/srep07655 Plectoneme tip bubbles: Coupled denaturation and writhing in supercoiled DNA] ([http://arxiv.org/abs/1404.2869 arXiv])&lt;br /&gt;
#Q. Wang, B. M. Pettitt, &#039;&#039;Biophys. J.&#039;&#039; &#039;&#039;&#039;106&#039;&#039;&#039;, 1182–1193 (2014)&lt;br /&gt;
#:[http://www.sciencedirect.com/science/article/pii/S0006349514000927 Modeling DNA Thermodynamics under Torsional Stress]&lt;br /&gt;
#  J. S. Schreck, T. E. Ouldridge, F. Romano, P. Šulc, L. Shaw, A. A. Louis, J.P.K. Doye, &#039;&#039;arxiv&#039;&#039; (2014)&lt;br /&gt;
#:[http://arxiv.org/abs/1408.4401 DNA hairpins primarily promote duplex melting rather than inhibiting hybridization]&lt;br /&gt;
#  R. Machinek, T.E. Ouldridge, N.E.C. Haley, J. Bath, A. J. Turberfield, &#039;&#039;Nature Comm.&#039;&#039; (2014)&lt;br /&gt;
#:[http://www.nature.com/ncomms/2014/141110/ncomms6324/full/ncomms6324.html Programmable energy landscapes for kinetic control of DNA strand displacement]&lt;br /&gt;
# M. Mosayebi, F. Romano, T. E. Ouldridge, A. A. Louis, J. P. K. Doye, &#039;&#039;J. Phys. Chem. B&#039;&#039; &#039;&#039;&#039;118&#039;&#039;&#039;, 14326-14335 (2014)&lt;br /&gt;
#:[http://arxiv.org/ct?url=http%3A%2F%2Fdx.doi.org%2F10%252E1021%2Fjp510061f&amp;amp;v=13bb91c1 The role of loop stacking in the dynamics of DNA hairpin formation] ([http://arxiv.org/abs/1410.1218 arXiv])&lt;br /&gt;
# P. Krstić, B. Ashcroft and S. Lindsay, &#039;&#039;Nanotechnology&#039;&#039;, (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1088/0957-4484/26/8/084001 Physical model for recognition tunneling]&lt;br /&gt;
# F. Romano and F. Sciortino, &#039;&#039;Phys. Rev. Lett.&#039;&#039; &#039;&#039;&#039;114&#039;&#039;&#039;, 078104 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1103/PhysRevLett.114.078104 Switching Bonds in a DNA Gel: An All-DNA Vitrimer]&lt;br /&gt;
#  J. S. Schreck, T. E. Ouldridge, F. Romano, A. A. Louis, J.P.K. Doye, &#039;&#039;arxiv&#039;&#039; (2014)&lt;br /&gt;
#:[http://arxiv.org/abs/1412.6309 Characterizing the bending and flexibility induced by bulges in DNA duplexes]&lt;br /&gt;
#  M. Mosayebi, A. A. Louis, J.P.K. Doye, T. E. Ouldridge &#039;&#039;arxiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1502.03623 Force-induced rupture of a DNA duplex]&lt;br /&gt;
# T. E. Ouldridge, &#039;&#039;Mol. Phys.&#039;&#039; &#039;&#039;&#039;113&#039;&#039;&#039;, 1-15 (2015)&lt;br /&gt;
#:[http://www.tandfonline.com/doi/abs/10.1080/00268976.2014.975293 DNA nanotechnology: understanding and optimisation through simulation] ([http://arxiv.org/abs/1411.1927 arXiv])&lt;br /&gt;
# P. Šulc, T. E. Ouldridge, F. Romano, J.P.K. Doye, A. A. Louis,  &#039;&#039;Biophys. J.&#039;&#039; &#039;&#039;&#039;108&#039;&#039;&#039;, iss. 5, 1238-1247 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1016/j.bpj.2015.01.023 Modelling toehold-mediated RNA strand displacement] ([http://arxiv.org/abs/1411.3239 arXiv])&lt;br /&gt;
# B. E. K. Snodin, F. Randisi, M. Mosayebi, P. Šulc, J. S. Schreck, F. Romano, T. E. Ouldridge, R. Tsukanov, E. Nir, A. A. Louis, J. P. K. Doye, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;142&#039;&#039;&#039;, 234901 (2015)&lt;br /&gt;
#:[http://scitation.aip.org/content/aip/journal/jcp/142/23/10.1063/1.4921957 Introducing Improved Structural Properties and Salt Dependence into a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/1504.00821 arXiv])&lt;br /&gt;
# C. Matek, P. Šulc, F. Randisi, J.P.K. Doye, A. A. Louis,  &#039;&#039;arXiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1506.02539 Coarse-grained modelling of supercoiled RNA] ([http://arxiv.org/abs/1506.02539 arXiv])&lt;br /&gt;
# R. M. Harryson, F. Romano, T. E. Ouldridge, A. A. Louis, J.P.K. Doye,  &#039;&#039;arXiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1506.09005 Coarse-grained modelling of strong DNA bending I: Thermodynamics and comparison to an experimental &amp;quot;molecular vice&amp;quot;]&lt;br /&gt;
# R. M. Harryson, F. Romano, T. E. Ouldridge, A. A. Louis, J.P.K. Doye,  &#039;&#039;arXiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1506.09008 Coarse-grained modelling of strong DNA bending II: Cyclization]&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=952</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=952"/>
		<updated>2015-05-21T13:56:50Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* Output files */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Compile options==&lt;br /&gt;
&lt;br /&gt;
Compiling oxDNA requires that you have a working &amp;lt;tt&amp;gt;cmake&amp;lt;/tt&amp;gt; software and C++ compiler on your machine. The instructions are provided in the [[Download and Installation]] section.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;oxDNA input_file&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The input file contains all the relevant information for the program to run, such as what initial configuration to use, the topology of the system, how often to print the energies to a file, etc. Please make sure you read the [[Thermostat|thermostat]] page if you use molecular dynamics.&lt;br /&gt;
&lt;br /&gt;
==Input file==&lt;br /&gt;
&lt;br /&gt;
As always in UNIX environments, everything is case sensitive.&lt;br /&gt;
&lt;br /&gt;
*Options are in the form key = value&lt;br /&gt;
*There can be arbitrary spaces before and after both key and value&lt;br /&gt;
*Line with a leading # will be treated as comments&lt;br /&gt;
*The | (pipe) sign is the separator between the different values that can be used to specify a value for the key.&lt;br /&gt;
*Keys between [ and ] are optional, the value after the equal sign is the default value&lt;br /&gt;
&lt;br /&gt;
Here we provide a list of the most commonly used input options. The complete and most up-to-date list of possible options can be found [[Input_options|here]] or in the &amp;lt;tt&amp;gt;README&amp;lt;/tt&amp;gt; file in the main directory of the simulation code.&lt;br /&gt;
&lt;br /&gt;
The input options of the previous oxDNA version can be found [[Input_options_of_the_previous_version|here]].&lt;br /&gt;
&lt;br /&gt;
===Generic options===&lt;br /&gt;
The options listed here define the generic behavior of the entire program.&lt;br /&gt;
;[interaction_type = DNA]: DNA|DNA2|RNA|patchy|LJ&lt;br /&gt;
: (selects the model for the simulation. DNA ([[DNA_model_introduction|oxDNA model]]) is the default option. DNA2 ([[DNA_model_introduction#oxDNA2|oxDNA2 model]]), RNA ([[RNA_model_introduction|oxRNA model]]), LJ (Lennard-Jones) and patchy particles are also implemented&lt;br /&gt;
;[sim_type=MD]: MD|MC|VMMC&lt;br /&gt;
:MD = Molecular Dynamics, MC = Monte Carlo, VMMC = Virtual Move Monte Carlo&lt;br /&gt;
;backend: CPU | CUDA &lt;br /&gt;
: (only sim_type=MD is supported if you choose CUDA backend)&lt;br /&gt;
;backend_precision: float|double|mixed&lt;br /&gt;
: (mixed option is available only for CUDA backend. It is recommended choice for optimal performance on CUDA machines, double is recommended for CPU simulations)&lt;br /&gt;
;[debug=0]: 0|1&lt;br /&gt;
: 1 if you want verbose logs, 0 otherwise.&lt;br /&gt;
&lt;br /&gt;
===Simulation options===&lt;br /&gt;
	The options listed here specify the behaviour of the simulation.&lt;br /&gt;
&lt;br /&gt;
;steps: number of steps to be performed.&lt;br /&gt;
		&lt;br /&gt;
;[restart_step_counter=0]: 0|1&lt;br /&gt;
:0 means that the step counter will start from the value read in the configuration file; if 1, the step counter will be reset to 0. The total duration of the simulation is unchanged.&lt;br /&gt;
			&lt;br /&gt;
;[seed=time(NULL)]: seed for the random number generator. On Unix systems, it will use by default a number from /dev/urandom + time(NULL)&lt;br /&gt;
		&lt;br /&gt;
;T: temperature of the simulation. It can be expressed in simulation units or kelvin (append a k or K after the value) or celsius (append a c or C after the value).&lt;br /&gt;
:Examples:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Value&lt;br /&gt;
! Simulation Units&lt;br /&gt;
|-&lt;br /&gt;
| 0.1&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300 K&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300k&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85c&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85 C &lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
		&lt;br /&gt;
;verlet_skin: if a particle moves more than verlet_skin then the lists will be updated. Its name is somewhat misleading: the actual verlet skin is 2*verlet_skin.&lt;br /&gt;
	&lt;br /&gt;
;salt_concentration: used if interaction_type = DNA2. It specifies the salt concentration in M.&lt;br /&gt;
&lt;br /&gt;
;[use_average_seq=1]: 0|1&lt;br /&gt;
: specifies whether to use the default hard-coded average parameters for base-pairing and stacking interaction strengths or not. If sequence dependence is to be used, set this to 0 and specify seq_dep_file.&lt;br /&gt;
	&lt;br /&gt;
;[seq_dep_file]: specifies the file from which the sequence dependent parameters should be read. Mandatory if use_average_seq=no, ignored otherwise. A sample file is provided (sequence_dependent_parameters.txt).&lt;br /&gt;
&lt;br /&gt;
;[external_forces=0]: 0|1&lt;br /&gt;
: specifies whether there are external forces acting on the nucleotides or not. If it is set to 1, then a file which specifies the external forces&#039; configuration has to be provided (see external_forces_file).&lt;br /&gt;
&lt;br /&gt;
;[external_forces_file]: specifies the file containing all the external forces&#039; configurations. Currently there are six supported force types (see EXAMPLES/TRAPS for some examples):&lt;br /&gt;
:*string&lt;br /&gt;
:*twist&lt;br /&gt;
:*trap&lt;br /&gt;
:*repulsion_plane&lt;br /&gt;
:*repulsion_plane_moving&lt;br /&gt;
:*mutual_trap&lt;br /&gt;
	&lt;br /&gt;
====Molecular dynamics simulations options====&lt;br /&gt;
&lt;br /&gt;
;dt: time step of the integration.&lt;br /&gt;
&lt;br /&gt;
;thermostat: no|refresh|brownian &lt;br /&gt;
:no means no thermostat will be used. refresh will refresh all the particle&#039;s velocities from a maxwellian every newtonian_steps steps. john is an Anderson-like thermostat (see pt). Make sure you read [[Thermostat|thermostat]].&lt;br /&gt;
&lt;br /&gt;
;newtonian_steps: required if thermostat != no&lt;br /&gt;
:number of steps after which a procedure of thermalization will be performed.&lt;br /&gt;
			&lt;br /&gt;
;pt: used if thermostat == john. It&#039;s the probability that a particle&#039;s velocity will be refreshed during a thermalization procedure.&lt;br /&gt;
		&lt;br /&gt;
;diff_coeff: required if pt is not specified&lt;br /&gt;
:used internally to automatically compute the pt that would be needed if we wanted such a self diffusion coefficient. Not used if pt is set.&lt;br /&gt;
&lt;br /&gt;
====Monte Carlo simulations options====&lt;br /&gt;
	&lt;br /&gt;
;[check_energy_every=10]: this number times print_energy_every gives the number of steps after which the energy will be computed from scratch and checked against the actual value computed adding energy differences.&lt;br /&gt;
		&lt;br /&gt;
;[check_energy_threshold=1e-4]:	if abs((old_energy - new_energy)/old_energy) &amp;gt; check_energy_threshold then the program will die and warn the user.&lt;br /&gt;
	&lt;br /&gt;
;ensemble: NVT&lt;br /&gt;
:ensemble of the simulation. More ensembles could be added in future versions.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement (per dimension) for translational moves in simulation units.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement for rotational moves in simulation units.&lt;br /&gt;
&lt;br /&gt;
===Input/output===&lt;br /&gt;
The options listed here are used to manage the I/O (read and write configurations, energies and so on)&lt;br /&gt;
	&lt;br /&gt;
;conf_file: initial configuration file. &lt;br /&gt;
		&lt;br /&gt;
;topology: file containing the system&#039;s topology.&lt;br /&gt;
		&lt;br /&gt;
;trajectory_file: the main output of the program. All the configurations will be appended to this file as they are printed.&lt;br /&gt;
		&lt;br /&gt;
;[confs_to_skip=0]: valid only if conf_file is a trajectory. Skip the first confs_to_skip configurations and then load in memory the (confs_to_skip+1)th.&lt;br /&gt;
		&lt;br /&gt;
;[lastconf_file=last_conf.dat]: this is the file where the last configuration is saved (when the program finishes or is killed). Set to last_conf.dat by default&lt;br /&gt;
&lt;br /&gt;
;[refresh_vel=0]: 0|1&lt;br /&gt;
:if 1 the initial velocities will be refreshed from a maxwellian.&lt;br /&gt;
	&lt;br /&gt;
;energy_file: energy output file.&lt;br /&gt;
		&lt;br /&gt;
;[print_energy_every=1000]: this will make the program print the energies every print_energy_every steps.&lt;br /&gt;
		&lt;br /&gt;
;[no_stdout_energy=0]: 0|1&lt;br /&gt;
:if 1 the energy will be printed just to the energy_file.&lt;br /&gt;
		&lt;br /&gt;
;[time_scale=linear]: linear|log_lin&lt;br /&gt;
:using linear configurations will be saved every print_conf_interval.&lt;br /&gt;
:using log_lin configurations will be saved logarithmically for print_conf_ppc times. After that the logarithmic sequence will restart.&lt;br /&gt;
	&lt;br /&gt;
;print_conf_interval: linear interval if time_scale == linear. First step of the logarithmic scale if time_scale == log_lin.&lt;br /&gt;
		&lt;br /&gt;
;[print_reduced_conf_every=0]: every print_reduced_conf_every steps the program will print out the reduced configurations (i.e. confs containing only the centers of mass of strands).&lt;br /&gt;
&lt;br /&gt;
;reduced_conf_output_dir: used if print_reduced_conf_every &amp;gt; 0&lt;br /&gt;
:output directory for reduced_conf files.&lt;br /&gt;
		&lt;br /&gt;
;[log_file=stderr]: file where generic and debug informations will be logged. If not specified then stderr will be used.&lt;br /&gt;
&lt;br /&gt;
==Output files==&lt;br /&gt;
*The log file contains all the relevant information about the simulation (specified options, activated external forces, warnings about misconfigurations, critical errors, etc.). If the log file is omitted, all this information will be displayed on the standard output.&lt;br /&gt;
&lt;br /&gt;
*The energy file layout for MD simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| [time (steps * dt)]&lt;br /&gt;
| [potential energy]&lt;br /&gt;
| [kinetic energy]&lt;br /&gt;
| [total energy]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:while for MC simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| [time (steps)]&lt;br /&gt;
| [potential energy]&lt;br /&gt;
| [acceptance ratio for translational moves]&lt;br /&gt;
| [acceptance ratio for rotational moves]&lt;br /&gt;
| [acceptance ratio for volume moves]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:VMMC output also produces the following extra columns if umbrella sampling is enabled&lt;br /&gt;
:{|&lt;br /&gt;
|[order parameter coordinate 1]&lt;br /&gt;
|[order parameter coordinate 1]&lt;br /&gt;
|...&lt;br /&gt;
|[order parameter coordinate n]&lt;br /&gt;
|[current weight]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:N.B. potential, kinetic and total energies are divided by the total number of particles.&lt;br /&gt;
&lt;br /&gt;
*Configurations are saved in the trajectory file.&lt;br /&gt;
&lt;br /&gt;
==Configuration and topology files==&lt;br /&gt;
The current state of a system, as specified by oxDNA, is described by two files: a configuration file and a topology file. The configuration file contains all the general information (timestep, energy and box size) and the orientations and positions of each nucleotide. The topology file, on the other hand, keeps track of the backbone-backbone bonds between nucleotides in the same strand. Working configuration and topology files can be found in the &amp;lt;tt&amp;gt;[[Examples|EXAMPLES]]&amp;lt;/tt&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
===Configuration file===&lt;br /&gt;
The first three rows of a configuration file contain the timestep &amp;lt;tt&amp;gt;T&amp;lt;/tt&amp;gt; at which the configuration has been printed, the length of the box sides &amp;lt;tt&amp;gt;Lx&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;Ly&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Lz&amp;lt;/tt&amp;gt; and the total, potential and kinetic energies, &amp;lt;tt&amp;gt;Etot&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;U&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;K&amp;lt;/tt&amp;gt;, respectively:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
t = T&lt;br /&gt;
b = Lz Ly Lz&lt;br /&gt;
E = Etot U K&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after this header, each row contains position of the centre of mass, orientation, velocity and angular velocity of a single nucleotide in the following order:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\overbrace{r_x r_y r_z}^{\rm Position} \overbrace{b_x b_y b_z}^{\rm Backbone-base versor} \overbrace{n_x n_y n_z}^{\rm Normal versor} \overbrace{v_x v_y v_z}^{\rm Velocity} \overbrace{L_x L_y L_z}^{\rm Angular velocity}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Topology file===&lt;br /&gt;
The topology file stores the intra-strand, fixed bonding topology (i.e. which nucleotides share backbone links). The first row contains the total number of nucleotides &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; and the number of strands &amp;lt;tt&amp;gt;Ns&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
N Ns&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After this header, the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th row specifies strand, base and 3&#039; and 5&#039; neighbors of the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide in this way:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
S B 3&#039; 5&#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where S is the index of the strand (starting from 1) which the nucleotide belongs to, B is the base and 3&#039; and 5&#039; specify the index of the nucleotides with which the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide is bonded in the 3&#039; and 5&#039; direction, respectively. A &amp;lt;tt&amp;gt;-1&amp;lt;/tt&amp;gt; signals that the nucleotide terminates the strand in either 3&#039; or 5&#039; direction. The topology file of a strand of sequence &amp;lt;tt&amp;gt;GCGTTG&amp;lt;/tt&amp;gt; would be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
6 1&lt;br /&gt;
1 G -1 1&lt;br /&gt;
1 C 0 2&lt;br /&gt;
1 G 1 3&lt;br /&gt;
1 T 2 4&lt;br /&gt;
1 T 3 5&lt;br /&gt;
1 G 4 -1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Specifying the topology in this way can simplify the process of simulating, for example, circular DNA.&lt;br /&gt;
&lt;br /&gt;
===Generation of initial configurations===&lt;br /&gt;
In order to generate initial configuration and topology files, we provide the &amp;lt;tt&amp;gt;${oxDNA}/UTILS/generate-sa.py&amp;lt;/tt&amp;gt; script. The usage of the script is&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;generate-sa.py &amp;lt;box side&amp;gt; &amp;lt;file with sequence&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
where &amp;lt;tt&amp;gt;&amp;lt;box side&amp;gt;&amp;lt;/tt&amp;gt; specifies the length of the box side in simulation units and &amp;lt;tt&amp;gt;&amp;lt;file with sequence&amp;gt;&amp;lt;/tt&amp;gt; contains the sequence of the strands to be generated, one row per strand. If double strands are needed, each sequence must be preceded by &amp;lt;tt&amp;gt;DOUBLE&amp;lt;/tt&amp;gt;. For example, a file containing&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DOUBLE AGGGCT&lt;br /&gt;
CCTGTA&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
would generate a double strand with a sequence &amp;lt;tt&amp;gt;AGGGCT&amp;lt;/tt&amp;gt; and a single strand with a sequence &amp;lt;tt&amp;gt;CCTGTA&amp;lt;/tt&amp;gt;. The sequences are given in 3&#039;-5&#039; order.&lt;br /&gt;
&lt;br /&gt;
Positions and orientations of the strands are all chosen at random in such a way that the resulting initial configuration does not contain significant excluded volume interactions between nucleotides belonging to different strands. Generated single- and double-strands have helical conformations (i.e. they are in the minimum of the intra-strand interaction energy).&lt;br /&gt;
&lt;br /&gt;
The output configuration and topology are stored in &amp;lt;tt&amp;gt;generated.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;generated.top&amp;lt;/tt&amp;gt;, respectively. &lt;br /&gt;
Since this script will initialize nucleotides&#039; velocities and angular velocities to 0, when performing a molecular (or Brownian) dynamics simulation remember to put &amp;lt;tt&amp;gt;refresh_vel = 1&amp;lt;/tt&amp;gt; in the [[Documentation#Input_file|input]] file.&lt;br /&gt;
&lt;br /&gt;
==Analysis of configurations==&lt;br /&gt;
The configurations produced by oxDNA can be analysed with the &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; program in &amp;lt;tt&amp;gt;${oxDNA}/UTILS/process_data/&amp;lt;/tt&amp;gt; directory. This program takes as command line arguments the input file (to recover the temperature and topology file), a configuration/trajectory file and an optional number. Since &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; reads analyses a single configuration, the optional number selects the configuration which it needs to analyse in the trajectory. Analysing a whole trajectory can be done by looping over a counter.&lt;br /&gt;
&lt;br /&gt;
Please note that &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; is not compiled automatically. If you never compiled it, do so as described in the [[Download_and_Installation#Installation|installation instructions]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; can be used as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
${oxDNA}/UTILS/process_data/output_bonds &amp;lt;input_file&amp;gt; &amp;lt;trajectory_file&amp;gt; [counter]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The program outputs some debugging information to the standard error and information regarding the interaction energies to the standard output. The contributions arising from each of the terms in the potential (see the appendix of [[Publications|Ref. 2]]) are reported for each pair of nucleotides that have non-zero total interactions.&lt;br /&gt;
&lt;br /&gt;
This output can be easily parsed to analyse the configurations.&lt;br /&gt;
&lt;br /&gt;
For each pair of nucleotides that do interact in the configuration, the program prints out a line containing:&lt;br /&gt;
* The id of the two particles (starting from 0)&lt;br /&gt;
* The total interaction energy&lt;br /&gt;
* The hydrogen bonding (base pairing) energy&lt;br /&gt;
* The stacking energy&lt;br /&gt;
* The cross stacking energy&lt;br /&gt;
* The excluded volume energy&lt;br /&gt;
* The FENE interaction energy&lt;br /&gt;
* A letter indicating a status code. This will be &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; for pairs that interact through bonded interactions (i.e. they are neighbors along a strand) and it will be &amp;lt;tt&amp;gt;H&amp;lt;/tt&amp;gt; when a base pair is present. Our definition of base pair is when two nucleotides have a hydrogen bonding energy less than 0.1 in simulation units (see [[Publications|Ref. 2]]).&lt;br /&gt;
&lt;br /&gt;
===Geometry of the Model===&lt;br /&gt;
In the configuration/trajectory files only the positions and orientations of the nucleotides are stored. If one wants to recover the positions of the individual interaction sites in the model, some maths need to be done.&lt;br /&gt;
&lt;br /&gt;
The position of the base, stacking and backbone sites can be recovered as follows:&lt;br /&gt;
&lt;br /&gt;
base site:     (center) + 0.40 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
stacking site: (center) + 0.34 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
backbone site: (center) - 0.40 * (axis_vector)&lt;br /&gt;
&lt;br /&gt;
The picture in the [[Model_introduction|introduction]] might help understanding where the sites are.&lt;br /&gt;
&lt;br /&gt;
==External Forces==&lt;br /&gt;
The code implements several types of external forces that can be imposed on the system that can be used either to simulate tension exerted on DNA or simply to accelerate the formation of secondary or tertiary structure. External forces can be tricky to treat, especially in a dynamics simulation, since they are an external source of work. Care should be taken in adjusting the time step, thermostat parameters and such.&lt;br /&gt;
&lt;br /&gt;
To enable external forces, one needs to specify &amp;lt;tt&amp;gt;external_forces = 1&amp;lt;/tt&amp;gt; in the input file and also supply an external force file to read from with the key &amp;lt;tt&amp;gt;external_forces_file = &amp;lt;file&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The syntax of the external forces file is quite simple. Examples of such files can be found in the [[Hairpin_formation|hairpin formation]] and [[Pseudoknot|Pseudoknot formation]] examples. Each force is specified within a block contained in curly brackets. Empty lines and lines beginning with an hash symbol (&amp;lt;tt&amp;gt;#&amp;lt;/tt&amp;gt;) are ignored. Different forces require different keys to be present. If the file has the wrong syntax, oxDNA should spit out a sensible error message while parsing the file.&lt;br /&gt;
&lt;br /&gt;
The different types of forces implemented at the moment are:&lt;br /&gt;
* harmonic trap&lt;br /&gt;
* string &lt;br /&gt;
* repulsion plane&lt;br /&gt;
* mutual trap&lt;br /&gt;
&lt;br /&gt;
All forces act on the centre of the particle.&lt;br /&gt;
&lt;br /&gt;
Forces of different kinds can be combined in the same simulation. There is a maximum number of 10 external forces per particle for memory reasons. This can be manually overridden recompiling the code with a different value of the macro &amp;lt;tt&amp;gt;MAX_EXT_FORCES&amp;lt;/tt&amp;gt; (currently 10) in &amp;lt;tt&amp;gt;defs.h&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===String===&lt;br /&gt;
A string is implemented as a force that does not depend on the particle position. Its value can be constant or can change linearly with time. It is useful as it does not fluctuate with time.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = string&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;F0&#039;&#039;&#039; (float) the value of the force at time = 0 in simulation units (please note that the value of the time may or may not be reset when starting a simulation, depending on the input file)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) growing rate of the force (simulation units/time steps). Typical values are very small (&amp;lt; 10^(-5))&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of the force (automatically normalised by the code)&lt;br /&gt;
&lt;br /&gt;
The following bit of code will create an external force on the first nucleotide in the system starting at 1 simulation units (48.6 pN) and growing linearly with time at the rate of 48.6pN every million time steps. The force will pull the nucleotide along the &amp;lt;tt&amp;gt;z&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = string&lt;br /&gt;
particle = 0&lt;br /&gt;
F0 = 1.&lt;br /&gt;
rate = 1e-6&lt;br /&gt;
dir = 0., 0., 1.&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Harmonic trap===&lt;br /&gt;
This type of force implements an harmonic trap, of arbitrary stiffness, that can move linearly with time. It can be useful to fix the position of the nucleotides to simulate attachment to something or to implement (quasi) constant extension simulations.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;pos0&#039;&#039;&#039; (3 floats separated by commas) rest position of the trap&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * dx)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) speed of the trap (length simulation units/time steps)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of movement of the trap&lt;br /&gt;
&lt;br /&gt;
Here is an example input for a harmonic trap acting on the third nucleotide constraining it to stay close to the origin. In this example the trap does not move (&amp;lt;tt&amp;gt;rate=0&amp;lt;/tt&amp;gt;), but one could have it move at a constant speed along the direction specified by &amp;lt;tt&amp;gt;dir&amp;lt;/tt&amp;gt;, in this case the &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = trap&lt;br /&gt;
particle = 2&lt;br /&gt;
pos0 = 0., 0., 0.&lt;br /&gt;
stiff = 1.0&lt;br /&gt;
rate = 0.&lt;br /&gt;
dir = 1.,0.,0.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note that the trap does not comply with periodic boundary conditions. This is most likely what you want.&lt;br /&gt;
&lt;br /&gt;
===Repulsion plane===&lt;br /&gt;
This kind of external force implements a repulsion plane that constrains a particle (or the whole system) to stay on one side of it. It is implemented as a harmonic repulsion, but the stiffness can be made arbitrarily high to mimic a hard repulsion.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = repulsion_plane&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force. If set to the special value -1, the force will be exerted on all particles.&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * D, where D is distance from the plane. The force is exerted only if the nucleotide is below the plane)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) a direction normal to the plane&lt;br /&gt;
* &#039;&#039;&#039;position&#039;&#039;&#039; (1 float number) specifies the position of the plane&lt;br /&gt;
&lt;br /&gt;
If direction is &amp;lt;tt&amp;gt; direction =  u,v,w &amp;lt;/tt&amp;gt; , then the plane contains all the points (x,y,z) that satisfy the equation: u*x + v*y + w*z + position = 0.&lt;br /&gt;
Only nucleotides  with coordinates (x,y,z) that satisfy u*x + v*y + w*z + position &amp;lt; 0 will feel the force.&lt;br /&gt;
The force exerted on a nucleotide is equal to stiff * D, where D is the distance of the nucleotide from the plane, where &amp;lt;math&amp;gt; D = | ux + vy + wz + \mbox{position}| / \sqrt{u^2 + v^2 + w^2 }.&amp;lt;/math&amp;gt;&lt;br /&gt;
For nucleotides for which u*x + v*y + w*z + position &amp;gt;= 0, no force will be exerted.&lt;br /&gt;
&lt;br /&gt;
Here is an example. This plane acts on the whole system and will not exert any force on nucleotides with a positive &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate. A force proportional to 48.6 pN * (&amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate) will be exerted on all particles . &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = repulsion_plane&lt;br /&gt;
#whole system&lt;br /&gt;
particle = -1&lt;br /&gt;
stiff = 1. #48.6 pN /(simulation length unit)  &lt;br /&gt;
dir = 1, 0, 0&lt;br /&gt;
position = 0&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If in the above example you would specify position = 3, then the force would be exerted on all nucleotides with coordinate x &amp;gt; -3.&lt;br /&gt;
&lt;br /&gt;
===Mutual trap===&lt;br /&gt;
This force is useful to form initial configurations. It is a harmonic force that at every moment pulls a particle towards a reference particle. It is possible to specify the separation at which the force will be 0.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = mutual_trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force.&lt;br /&gt;
* &#039;&#039;&#039;ref_particle&#039;&#039;&#039; (int) particle to pull towards. Please note that this particle will not feel any force (the name mutual trap is thus misleading).&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap&lt;br /&gt;
* &#039;&#039;&#039;r0&#039;&#039;&#039; (float) equilibrium distance of the trap.&lt;br /&gt;
&lt;br /&gt;
Here is an example, extracted from the [[Pseudoknot|pseudoknot formation example]]. This will pull particle 14 towards particle 39, favouring an equilibrium distance of 1.4 (which corresponds roughly to the minimum of the hydrogen bonding potential, not a coincidence). The same force with opposite sign is exerted on particle 39 through a separate force. It is not necessary to have both particles feel the force, but it usually works much better.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 14&lt;br /&gt;
ref_particle = 39&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 39&lt;br /&gt;
ref_particle = 14&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visualisation of structures==&lt;br /&gt;
oxDNA produces a trajectory file where all the relevant information is&lt;br /&gt;
stored. A converter is provided (&amp;lt;tt&amp;gt;traj2vis.py&amp;lt;/tt&amp;gt;) in the&lt;br /&gt;
&amp;lt;tt&amp;gt;UTILS&amp;lt;/tt&amp;gt; directory that is able to produce files in the &amp;lt;tt&amp;gt;xyz&amp;lt;/tt&amp;gt;&lt;br /&gt;
and &amp;lt;tt&amp;gt;pdb&amp;lt;/tt&amp;gt; formats. The same program can be used on a configuration&lt;br /&gt;
file and it will produce a snapshot.&lt;br /&gt;
&lt;br /&gt;
Since the model is coarse-grained, we have to &amp;quot;trick&amp;quot; the visualisers into&lt;br /&gt;
thinking that the interaction sites in the model are actually atoms.&lt;br /&gt;
Advanced nucleic acids representations such as ribbons will not work on the&lt;br /&gt;
outputs.&lt;br /&gt;
&lt;br /&gt;
All the images in the [[Screenshots]] page were produced with the pdb representation using UCSF chimera (see later on).&lt;br /&gt;
&lt;br /&gt;
===xyz format===&lt;br /&gt;
&lt;br /&gt;
just run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2vis.py xyz &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(where &amp;lt;tt&amp;gt;$oxDNA&amp;lt;/tt&amp;gt; is the oxDNA source directory) to get the xyz representation in a file called the same as the trajectory&lt;br /&gt;
file with &amp;lt;tt&amp;gt;.xyz&amp;lt;/tt&amp;gt; appended. Please note that boundary conditions are&lt;br /&gt;
implemented strand-wise, so strands that are bound might appear at two&lt;br /&gt;
different sizes of the box. Also, the center of mass of the system (where&lt;br /&gt;
each strand is weighted the same regardless of the length) is set to 0 at&lt;br /&gt;
each frame. Carbons represent the backbone sites and oxygens the base sites.&lt;br /&gt;
&lt;br /&gt;
The resulting file can be read with a variety of programs. Here we will&lt;br /&gt;
explain how to visualise it sensibly in [http://www.ks.uiuc.edu/Research/vmd/ VMD].&lt;br /&gt;
&lt;br /&gt;
* Run VMD and load the xyz file.&lt;br /&gt;
* In the graphics menu, go to Representations.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name C&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.8 and Bond Radius 0.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name O&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.6 and Bond Radius 0.&lt;br /&gt;
&lt;br /&gt;
This should produce a ball representation of our model DNA. Bonds&lt;br /&gt;
automatically produced by VMD are NOT meaningful in our context.&lt;br /&gt;
&lt;br /&gt;
===pdb format===&lt;br /&gt;
Run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2chimera.py &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
to produce a trajectory/configuration in the pdb format. A further file&lt;br /&gt;
called &amp;lt;tt&amp;gt;chimera.com&amp;lt;/tt&amp;gt; will be produced (more on this later). All&lt;br /&gt;
comments above about periodic boundaries and centre of mass apply here as&lt;br /&gt;
well.&lt;br /&gt;
&lt;br /&gt;
The pdb file can be visualised in VMD just like the xyz format, but a nicer&lt;br /&gt;
output can be produced with [http://www.cgl.ucsf.edu/chimera/ UCSF Chimera] (although only for snapshots at&lt;br /&gt;
the moment) as follows:&lt;br /&gt;
&lt;br /&gt;
Run chimera and load the pdb file. An ugly output will be displayed.&lt;br /&gt;
&lt;br /&gt;
Bring up the command line under the &amp;lt;tt&amp;gt;Tools → General Controls&amp;lt;/tt&amp;gt; menu.&lt;br /&gt;
Input &amp;lt;tt&amp;gt;read chimera.com&amp;lt;/tt&amp;gt; in the command line and press enter. You&lt;br /&gt;
should get a nicer visualisation with different bases in different colors,&lt;br /&gt;
all the covalent bonds in the right place, etc.&lt;br /&gt;
&lt;br /&gt;
On large configurations, the production of ellipsoids will be extremely&lt;br /&gt;
slow. You can remove it by removing the line&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;aniso scale 0.75 smoothing 4&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
from the commands file. Loading the resulting file should be much faster.&lt;br /&gt;
&lt;br /&gt;
UCSF chimera can in turn export the scene in a variety of formats.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=951</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=951"/>
		<updated>2015-05-21T13:56:26Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* Output files */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Compile options==&lt;br /&gt;
&lt;br /&gt;
Compiling oxDNA requires that you have a working &amp;lt;tt&amp;gt;cmake&amp;lt;/tt&amp;gt; software and C++ compiler on your machine. The instructions are provided in the [[Download and Installation]] section.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;oxDNA input_file&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The input file contains all the relevant information for the program to run, such as what initial configuration to use, the topology of the system, how often to print the energies to a file, etc. Please make sure you read the [[Thermostat|thermostat]] page if you use molecular dynamics.&lt;br /&gt;
&lt;br /&gt;
==Input file==&lt;br /&gt;
&lt;br /&gt;
As always in UNIX environments, everything is case sensitive.&lt;br /&gt;
&lt;br /&gt;
*Options are in the form key = value&lt;br /&gt;
*There can be arbitrary spaces before and after both key and value&lt;br /&gt;
*Line with a leading # will be treated as comments&lt;br /&gt;
*The | (pipe) sign is the separator between the different values that can be used to specify a value for the key.&lt;br /&gt;
*Keys between [ and ] are optional, the value after the equal sign is the default value&lt;br /&gt;
&lt;br /&gt;
Here we provide a list of the most commonly used input options. The complete and most up-to-date list of possible options can be found [[Input_options|here]] or in the &amp;lt;tt&amp;gt;README&amp;lt;/tt&amp;gt; file in the main directory of the simulation code.&lt;br /&gt;
&lt;br /&gt;
The input options of the previous oxDNA version can be found [[Input_options_of_the_previous_version|here]].&lt;br /&gt;
&lt;br /&gt;
===Generic options===&lt;br /&gt;
The options listed here define the generic behavior of the entire program.&lt;br /&gt;
;[interaction_type = DNA]: DNA|DNA2|RNA|patchy|LJ&lt;br /&gt;
: (selects the model for the simulation. DNA ([[DNA_model_introduction|oxDNA model]]) is the default option. DNA2 ([[DNA_model_introduction#oxDNA2|oxDNA2 model]]), RNA ([[RNA_model_introduction|oxRNA model]]), LJ (Lennard-Jones) and patchy particles are also implemented&lt;br /&gt;
;[sim_type=MD]: MD|MC|VMMC&lt;br /&gt;
:MD = Molecular Dynamics, MC = Monte Carlo, VMMC = Virtual Move Monte Carlo&lt;br /&gt;
;backend: CPU | CUDA &lt;br /&gt;
: (only sim_type=MD is supported if you choose CUDA backend)&lt;br /&gt;
;backend_precision: float|double|mixed&lt;br /&gt;
: (mixed option is available only for CUDA backend. It is recommended choice for optimal performance on CUDA machines, double is recommended for CPU simulations)&lt;br /&gt;
;[debug=0]: 0|1&lt;br /&gt;
: 1 if you want verbose logs, 0 otherwise.&lt;br /&gt;
&lt;br /&gt;
===Simulation options===&lt;br /&gt;
	The options listed here specify the behaviour of the simulation.&lt;br /&gt;
&lt;br /&gt;
;steps: number of steps to be performed.&lt;br /&gt;
		&lt;br /&gt;
;[restart_step_counter=0]: 0|1&lt;br /&gt;
:0 means that the step counter will start from the value read in the configuration file; if 1, the step counter will be reset to 0. The total duration of the simulation is unchanged.&lt;br /&gt;
			&lt;br /&gt;
;[seed=time(NULL)]: seed for the random number generator. On Unix systems, it will use by default a number from /dev/urandom + time(NULL)&lt;br /&gt;
		&lt;br /&gt;
;T: temperature of the simulation. It can be expressed in simulation units or kelvin (append a k or K after the value) or celsius (append a c or C after the value).&lt;br /&gt;
:Examples:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Value&lt;br /&gt;
! Simulation Units&lt;br /&gt;
|-&lt;br /&gt;
| 0.1&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300 K&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300k&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85c&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85 C &lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
		&lt;br /&gt;
;verlet_skin: if a particle moves more than verlet_skin then the lists will be updated. Its name is somewhat misleading: the actual verlet skin is 2*verlet_skin.&lt;br /&gt;
	&lt;br /&gt;
;salt_concentration: used if interaction_type = DNA2. It specifies the salt concentration in M.&lt;br /&gt;
&lt;br /&gt;
;[use_average_seq=1]: 0|1&lt;br /&gt;
: specifies whether to use the default hard-coded average parameters for base-pairing and stacking interaction strengths or not. If sequence dependence is to be used, set this to 0 and specify seq_dep_file.&lt;br /&gt;
	&lt;br /&gt;
;[seq_dep_file]: specifies the file from which the sequence dependent parameters should be read. Mandatory if use_average_seq=no, ignored otherwise. A sample file is provided (sequence_dependent_parameters.txt).&lt;br /&gt;
&lt;br /&gt;
;[external_forces=0]: 0|1&lt;br /&gt;
: specifies whether there are external forces acting on the nucleotides or not. If it is set to 1, then a file which specifies the external forces&#039; configuration has to be provided (see external_forces_file).&lt;br /&gt;
&lt;br /&gt;
;[external_forces_file]: specifies the file containing all the external forces&#039; configurations. Currently there are six supported force types (see EXAMPLES/TRAPS for some examples):&lt;br /&gt;
:*string&lt;br /&gt;
:*twist&lt;br /&gt;
:*trap&lt;br /&gt;
:*repulsion_plane&lt;br /&gt;
:*repulsion_plane_moving&lt;br /&gt;
:*mutual_trap&lt;br /&gt;
	&lt;br /&gt;
====Molecular dynamics simulations options====&lt;br /&gt;
&lt;br /&gt;
;dt: time step of the integration.&lt;br /&gt;
&lt;br /&gt;
;thermostat: no|refresh|brownian &lt;br /&gt;
:no means no thermostat will be used. refresh will refresh all the particle&#039;s velocities from a maxwellian every newtonian_steps steps. john is an Anderson-like thermostat (see pt). Make sure you read [[Thermostat|thermostat]].&lt;br /&gt;
&lt;br /&gt;
;newtonian_steps: required if thermostat != no&lt;br /&gt;
:number of steps after which a procedure of thermalization will be performed.&lt;br /&gt;
			&lt;br /&gt;
;pt: used if thermostat == john. It&#039;s the probability that a particle&#039;s velocity will be refreshed during a thermalization procedure.&lt;br /&gt;
		&lt;br /&gt;
;diff_coeff: required if pt is not specified&lt;br /&gt;
:used internally to automatically compute the pt that would be needed if we wanted such a self diffusion coefficient. Not used if pt is set.&lt;br /&gt;
&lt;br /&gt;
====Monte Carlo simulations options====&lt;br /&gt;
	&lt;br /&gt;
;[check_energy_every=10]: this number times print_energy_every gives the number of steps after which the energy will be computed from scratch and checked against the actual value computed adding energy differences.&lt;br /&gt;
		&lt;br /&gt;
;[check_energy_threshold=1e-4]:	if abs((old_energy - new_energy)/old_energy) &amp;gt; check_energy_threshold then the program will die and warn the user.&lt;br /&gt;
	&lt;br /&gt;
;ensemble: NVT&lt;br /&gt;
:ensemble of the simulation. More ensembles could be added in future versions.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement (per dimension) for translational moves in simulation units.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement for rotational moves in simulation units.&lt;br /&gt;
&lt;br /&gt;
===Input/output===&lt;br /&gt;
The options listed here are used to manage the I/O (read and write configurations, energies and so on)&lt;br /&gt;
	&lt;br /&gt;
;conf_file: initial configuration file. &lt;br /&gt;
		&lt;br /&gt;
;topology: file containing the system&#039;s topology.&lt;br /&gt;
		&lt;br /&gt;
;trajectory_file: the main output of the program. All the configurations will be appended to this file as they are printed.&lt;br /&gt;
		&lt;br /&gt;
;[confs_to_skip=0]: valid only if conf_file is a trajectory. Skip the first confs_to_skip configurations and then load in memory the (confs_to_skip+1)th.&lt;br /&gt;
		&lt;br /&gt;
;[lastconf_file=last_conf.dat]: this is the file where the last configuration is saved (when the program finishes or is killed). Set to last_conf.dat by default&lt;br /&gt;
&lt;br /&gt;
;[refresh_vel=0]: 0|1&lt;br /&gt;
:if 1 the initial velocities will be refreshed from a maxwellian.&lt;br /&gt;
	&lt;br /&gt;
;energy_file: energy output file.&lt;br /&gt;
		&lt;br /&gt;
;[print_energy_every=1000]: this will make the program print the energies every print_energy_every steps.&lt;br /&gt;
		&lt;br /&gt;
;[no_stdout_energy=0]: 0|1&lt;br /&gt;
:if 1 the energy will be printed just to the energy_file.&lt;br /&gt;
		&lt;br /&gt;
;[time_scale=linear]: linear|log_lin&lt;br /&gt;
:using linear configurations will be saved every print_conf_interval.&lt;br /&gt;
:using log_lin configurations will be saved logarithmically for print_conf_ppc times. After that the logarithmic sequence will restart.&lt;br /&gt;
	&lt;br /&gt;
;print_conf_interval: linear interval if time_scale == linear. First step of the logarithmic scale if time_scale == log_lin.&lt;br /&gt;
		&lt;br /&gt;
;[print_reduced_conf_every=0]: every print_reduced_conf_every steps the program will print out the reduced configurations (i.e. confs containing only the centers of mass of strands).&lt;br /&gt;
&lt;br /&gt;
;reduced_conf_output_dir: used if print_reduced_conf_every &amp;gt; 0&lt;br /&gt;
:output directory for reduced_conf files.&lt;br /&gt;
		&lt;br /&gt;
;[log_file=stderr]: file where generic and debug informations will be logged. If not specified then stderr will be used.&lt;br /&gt;
&lt;br /&gt;
==Output files==&lt;br /&gt;
*The log file contains all the relevant information about the simulation (specified options, activated external forces, warnings about misconfigurations, critical errors, etc.). If the log file is omitted, all this information will be displayed on the standard output.&lt;br /&gt;
&lt;br /&gt;
*The energy file layout for MD simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| [time (steps * dt)]&lt;br /&gt;
| [potential energy]&lt;br /&gt;
| [kinetic energy]&lt;br /&gt;
| [total energy]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:while for MC simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| [time (steps)]&lt;br /&gt;
| [potential energy]&lt;br /&gt;
| [acceptance ratio for translational moves]&lt;br /&gt;
| [acceptance ratio for rotational moves]&lt;br /&gt;
| [acceptance ratio for volume moves]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:the VMMC output also produces the following extra columns if umbrella sampling is enabled&lt;br /&gt;
:{|&lt;br /&gt;
|[order parameter coordinate 1]&lt;br /&gt;
|[order parameter coordinate 1]&lt;br /&gt;
|...&lt;br /&gt;
|[order parameter coordinate n]&lt;br /&gt;
|[current weight]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:N.B. potential, kinetic and total energies are divided by the total number of particles.&lt;br /&gt;
&lt;br /&gt;
*Configurations are saved in the trajectory file.&lt;br /&gt;
&lt;br /&gt;
==Configuration and topology files==&lt;br /&gt;
The current state of a system, as specified by oxDNA, is described by two files: a configuration file and a topology file. The configuration file contains all the general information (timestep, energy and box size) and the orientations and positions of each nucleotide. The topology file, on the other hand, keeps track of the backbone-backbone bonds between nucleotides in the same strand. Working configuration and topology files can be found in the &amp;lt;tt&amp;gt;[[Examples|EXAMPLES]]&amp;lt;/tt&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
===Configuration file===&lt;br /&gt;
The first three rows of a configuration file contain the timestep &amp;lt;tt&amp;gt;T&amp;lt;/tt&amp;gt; at which the configuration has been printed, the length of the box sides &amp;lt;tt&amp;gt;Lx&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;Ly&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Lz&amp;lt;/tt&amp;gt; and the total, potential and kinetic energies, &amp;lt;tt&amp;gt;Etot&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;U&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;K&amp;lt;/tt&amp;gt;, respectively:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
t = T&lt;br /&gt;
b = Lz Ly Lz&lt;br /&gt;
E = Etot U K&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after this header, each row contains position of the centre of mass, orientation, velocity and angular velocity of a single nucleotide in the following order:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\overbrace{r_x r_y r_z}^{\rm Position} \overbrace{b_x b_y b_z}^{\rm Backbone-base versor} \overbrace{n_x n_y n_z}^{\rm Normal versor} \overbrace{v_x v_y v_z}^{\rm Velocity} \overbrace{L_x L_y L_z}^{\rm Angular velocity}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Topology file===&lt;br /&gt;
The topology file stores the intra-strand, fixed bonding topology (i.e. which nucleotides share backbone links). The first row contains the total number of nucleotides &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; and the number of strands &amp;lt;tt&amp;gt;Ns&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
N Ns&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After this header, the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th row specifies strand, base and 3&#039; and 5&#039; neighbors of the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide in this way:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
S B 3&#039; 5&#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where S is the index of the strand (starting from 1) which the nucleotide belongs to, B is the base and 3&#039; and 5&#039; specify the index of the nucleotides with which the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide is bonded in the 3&#039; and 5&#039; direction, respectively. A &amp;lt;tt&amp;gt;-1&amp;lt;/tt&amp;gt; signals that the nucleotide terminates the strand in either 3&#039; or 5&#039; direction. The topology file of a strand of sequence &amp;lt;tt&amp;gt;GCGTTG&amp;lt;/tt&amp;gt; would be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
6 1&lt;br /&gt;
1 G -1 1&lt;br /&gt;
1 C 0 2&lt;br /&gt;
1 G 1 3&lt;br /&gt;
1 T 2 4&lt;br /&gt;
1 T 3 5&lt;br /&gt;
1 G 4 -1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Specifying the topology in this way can simplify the process of simulating, for example, circular DNA.&lt;br /&gt;
&lt;br /&gt;
===Generation of initial configurations===&lt;br /&gt;
In order to generate initial configuration and topology files, we provide the &amp;lt;tt&amp;gt;${oxDNA}/UTILS/generate-sa.py&amp;lt;/tt&amp;gt; script. The usage of the script is&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;generate-sa.py &amp;lt;box side&amp;gt; &amp;lt;file with sequence&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
where &amp;lt;tt&amp;gt;&amp;lt;box side&amp;gt;&amp;lt;/tt&amp;gt; specifies the length of the box side in simulation units and &amp;lt;tt&amp;gt;&amp;lt;file with sequence&amp;gt;&amp;lt;/tt&amp;gt; contains the sequence of the strands to be generated, one row per strand. If double strands are needed, each sequence must be preceded by &amp;lt;tt&amp;gt;DOUBLE&amp;lt;/tt&amp;gt;. For example, a file containing&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DOUBLE AGGGCT&lt;br /&gt;
CCTGTA&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
would generate a double strand with a sequence &amp;lt;tt&amp;gt;AGGGCT&amp;lt;/tt&amp;gt; and a single strand with a sequence &amp;lt;tt&amp;gt;CCTGTA&amp;lt;/tt&amp;gt;. The sequences are given in 3&#039;-5&#039; order.&lt;br /&gt;
&lt;br /&gt;
Positions and orientations of the strands are all chosen at random in such a way that the resulting initial configuration does not contain significant excluded volume interactions between nucleotides belonging to different strands. Generated single- and double-strands have helical conformations (i.e. they are in the minimum of the intra-strand interaction energy).&lt;br /&gt;
&lt;br /&gt;
The output configuration and topology are stored in &amp;lt;tt&amp;gt;generated.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;generated.top&amp;lt;/tt&amp;gt;, respectively. &lt;br /&gt;
Since this script will initialize nucleotides&#039; velocities and angular velocities to 0, when performing a molecular (or Brownian) dynamics simulation remember to put &amp;lt;tt&amp;gt;refresh_vel = 1&amp;lt;/tt&amp;gt; in the [[Documentation#Input_file|input]] file.&lt;br /&gt;
&lt;br /&gt;
==Analysis of configurations==&lt;br /&gt;
The configurations produced by oxDNA can be analysed with the &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; program in &amp;lt;tt&amp;gt;${oxDNA}/UTILS/process_data/&amp;lt;/tt&amp;gt; directory. This program takes as command line arguments the input file (to recover the temperature and topology file), a configuration/trajectory file and an optional number. Since &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; reads analyses a single configuration, the optional number selects the configuration which it needs to analyse in the trajectory. Analysing a whole trajectory can be done by looping over a counter.&lt;br /&gt;
&lt;br /&gt;
Please note that &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; is not compiled automatically. If you never compiled it, do so as described in the [[Download_and_Installation#Installation|installation instructions]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; can be used as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
${oxDNA}/UTILS/process_data/output_bonds &amp;lt;input_file&amp;gt; &amp;lt;trajectory_file&amp;gt; [counter]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The program outputs some debugging information to the standard error and information regarding the interaction energies to the standard output. The contributions arising from each of the terms in the potential (see the appendix of [[Publications|Ref. 2]]) are reported for each pair of nucleotides that have non-zero total interactions.&lt;br /&gt;
&lt;br /&gt;
This output can be easily parsed to analyse the configurations.&lt;br /&gt;
&lt;br /&gt;
For each pair of nucleotides that do interact in the configuration, the program prints out a line containing:&lt;br /&gt;
* The id of the two particles (starting from 0)&lt;br /&gt;
* The total interaction energy&lt;br /&gt;
* The hydrogen bonding (base pairing) energy&lt;br /&gt;
* The stacking energy&lt;br /&gt;
* The cross stacking energy&lt;br /&gt;
* The excluded volume energy&lt;br /&gt;
* The FENE interaction energy&lt;br /&gt;
* A letter indicating a status code. This will be &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; for pairs that interact through bonded interactions (i.e. they are neighbors along a strand) and it will be &amp;lt;tt&amp;gt;H&amp;lt;/tt&amp;gt; when a base pair is present. Our definition of base pair is when two nucleotides have a hydrogen bonding energy less than 0.1 in simulation units (see [[Publications|Ref. 2]]).&lt;br /&gt;
&lt;br /&gt;
===Geometry of the Model===&lt;br /&gt;
In the configuration/trajectory files only the positions and orientations of the nucleotides are stored. If one wants to recover the positions of the individual interaction sites in the model, some maths need to be done.&lt;br /&gt;
&lt;br /&gt;
The position of the base, stacking and backbone sites can be recovered as follows:&lt;br /&gt;
&lt;br /&gt;
base site:     (center) + 0.40 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
stacking site: (center) + 0.34 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
backbone site: (center) - 0.40 * (axis_vector)&lt;br /&gt;
&lt;br /&gt;
The picture in the [[Model_introduction|introduction]] might help understanding where the sites are.&lt;br /&gt;
&lt;br /&gt;
==External Forces==&lt;br /&gt;
The code implements several types of external forces that can be imposed on the system that can be used either to simulate tension exerted on DNA or simply to accelerate the formation of secondary or tertiary structure. External forces can be tricky to treat, especially in a dynamics simulation, since they are an external source of work. Care should be taken in adjusting the time step, thermostat parameters and such.&lt;br /&gt;
&lt;br /&gt;
To enable external forces, one needs to specify &amp;lt;tt&amp;gt;external_forces = 1&amp;lt;/tt&amp;gt; in the input file and also supply an external force file to read from with the key &amp;lt;tt&amp;gt;external_forces_file = &amp;lt;file&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The syntax of the external forces file is quite simple. Examples of such files can be found in the [[Hairpin_formation|hairpin formation]] and [[Pseudoknot|Pseudoknot formation]] examples. Each force is specified within a block contained in curly brackets. Empty lines and lines beginning with an hash symbol (&amp;lt;tt&amp;gt;#&amp;lt;/tt&amp;gt;) are ignored. Different forces require different keys to be present. If the file has the wrong syntax, oxDNA should spit out a sensible error message while parsing the file.&lt;br /&gt;
&lt;br /&gt;
The different types of forces implemented at the moment are:&lt;br /&gt;
* harmonic trap&lt;br /&gt;
* string &lt;br /&gt;
* repulsion plane&lt;br /&gt;
* mutual trap&lt;br /&gt;
&lt;br /&gt;
All forces act on the centre of the particle.&lt;br /&gt;
&lt;br /&gt;
Forces of different kinds can be combined in the same simulation. There is a maximum number of 10 external forces per particle for memory reasons. This can be manually overridden recompiling the code with a different value of the macro &amp;lt;tt&amp;gt;MAX_EXT_FORCES&amp;lt;/tt&amp;gt; (currently 10) in &amp;lt;tt&amp;gt;defs.h&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===String===&lt;br /&gt;
A string is implemented as a force that does not depend on the particle position. Its value can be constant or can change linearly with time. It is useful as it does not fluctuate with time.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = string&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;F0&#039;&#039;&#039; (float) the value of the force at time = 0 in simulation units (please note that the value of the time may or may not be reset when starting a simulation, depending on the input file)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) growing rate of the force (simulation units/time steps). Typical values are very small (&amp;lt; 10^(-5))&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of the force (automatically normalised by the code)&lt;br /&gt;
&lt;br /&gt;
The following bit of code will create an external force on the first nucleotide in the system starting at 1 simulation units (48.6 pN) and growing linearly with time at the rate of 48.6pN every million time steps. The force will pull the nucleotide along the &amp;lt;tt&amp;gt;z&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = string&lt;br /&gt;
particle = 0&lt;br /&gt;
F0 = 1.&lt;br /&gt;
rate = 1e-6&lt;br /&gt;
dir = 0., 0., 1.&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Harmonic trap===&lt;br /&gt;
This type of force implements an harmonic trap, of arbitrary stiffness, that can move linearly with time. It can be useful to fix the position of the nucleotides to simulate attachment to something or to implement (quasi) constant extension simulations.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;pos0&#039;&#039;&#039; (3 floats separated by commas) rest position of the trap&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * dx)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) speed of the trap (length simulation units/time steps)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of movement of the trap&lt;br /&gt;
&lt;br /&gt;
Here is an example input for a harmonic trap acting on the third nucleotide constraining it to stay close to the origin. In this example the trap does not move (&amp;lt;tt&amp;gt;rate=0&amp;lt;/tt&amp;gt;), but one could have it move at a constant speed along the direction specified by &amp;lt;tt&amp;gt;dir&amp;lt;/tt&amp;gt;, in this case the &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = trap&lt;br /&gt;
particle = 2&lt;br /&gt;
pos0 = 0., 0., 0.&lt;br /&gt;
stiff = 1.0&lt;br /&gt;
rate = 0.&lt;br /&gt;
dir = 1.,0.,0.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note that the trap does not comply with periodic boundary conditions. This is most likely what you want.&lt;br /&gt;
&lt;br /&gt;
===Repulsion plane===&lt;br /&gt;
This kind of external force implements a repulsion plane that constrains a particle (or the whole system) to stay on one side of it. It is implemented as a harmonic repulsion, but the stiffness can be made arbitrarily high to mimic a hard repulsion.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = repulsion_plane&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force. If set to the special value -1, the force will be exerted on all particles.&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * D, where D is distance from the plane. The force is exerted only if the nucleotide is below the plane)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) a direction normal to the plane&lt;br /&gt;
* &#039;&#039;&#039;position&#039;&#039;&#039; (1 float number) specifies the position of the plane&lt;br /&gt;
&lt;br /&gt;
If direction is &amp;lt;tt&amp;gt; direction =  u,v,w &amp;lt;/tt&amp;gt; , then the plane contains all the points (x,y,z) that satisfy the equation: u*x + v*y + w*z + position = 0.&lt;br /&gt;
Only nucleotides  with coordinates (x,y,z) that satisfy u*x + v*y + w*z + position &amp;lt; 0 will feel the force.&lt;br /&gt;
The force exerted on a nucleotide is equal to stiff * D, where D is the distance of the nucleotide from the plane, where &amp;lt;math&amp;gt; D = | ux + vy + wz + \mbox{position}| / \sqrt{u^2 + v^2 + w^2 }.&amp;lt;/math&amp;gt;&lt;br /&gt;
For nucleotides for which u*x + v*y + w*z + position &amp;gt;= 0, no force will be exerted.&lt;br /&gt;
&lt;br /&gt;
Here is an example. This plane acts on the whole system and will not exert any force on nucleotides with a positive &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate. A force proportional to 48.6 pN * (&amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate) will be exerted on all particles . &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = repulsion_plane&lt;br /&gt;
#whole system&lt;br /&gt;
particle = -1&lt;br /&gt;
stiff = 1. #48.6 pN /(simulation length unit)  &lt;br /&gt;
dir = 1, 0, 0&lt;br /&gt;
position = 0&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If in the above example you would specify position = 3, then the force would be exerted on all nucleotides with coordinate x &amp;gt; -3.&lt;br /&gt;
&lt;br /&gt;
===Mutual trap===&lt;br /&gt;
This force is useful to form initial configurations. It is a harmonic force that at every moment pulls a particle towards a reference particle. It is possible to specify the separation at which the force will be 0.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = mutual_trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force.&lt;br /&gt;
* &#039;&#039;&#039;ref_particle&#039;&#039;&#039; (int) particle to pull towards. Please note that this particle will not feel any force (the name mutual trap is thus misleading).&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap&lt;br /&gt;
* &#039;&#039;&#039;r0&#039;&#039;&#039; (float) equilibrium distance of the trap.&lt;br /&gt;
&lt;br /&gt;
Here is an example, extracted from the [[Pseudoknot|pseudoknot formation example]]. This will pull particle 14 towards particle 39, favouring an equilibrium distance of 1.4 (which corresponds roughly to the minimum of the hydrogen bonding potential, not a coincidence). The same force with opposite sign is exerted on particle 39 through a separate force. It is not necessary to have both particles feel the force, but it usually works much better.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 14&lt;br /&gt;
ref_particle = 39&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 39&lt;br /&gt;
ref_particle = 14&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visualisation of structures==&lt;br /&gt;
oxDNA produces a trajectory file where all the relevant information is&lt;br /&gt;
stored. A converter is provided (&amp;lt;tt&amp;gt;traj2vis.py&amp;lt;/tt&amp;gt;) in the&lt;br /&gt;
&amp;lt;tt&amp;gt;UTILS&amp;lt;/tt&amp;gt; directory that is able to produce files in the &amp;lt;tt&amp;gt;xyz&amp;lt;/tt&amp;gt;&lt;br /&gt;
and &amp;lt;tt&amp;gt;pdb&amp;lt;/tt&amp;gt; formats. The same program can be used on a configuration&lt;br /&gt;
file and it will produce a snapshot.&lt;br /&gt;
&lt;br /&gt;
Since the model is coarse-grained, we have to &amp;quot;trick&amp;quot; the visualisers into&lt;br /&gt;
thinking that the interaction sites in the model are actually atoms.&lt;br /&gt;
Advanced nucleic acids representations such as ribbons will not work on the&lt;br /&gt;
outputs.&lt;br /&gt;
&lt;br /&gt;
All the images in the [[Screenshots]] page were produced with the pdb representation using UCSF chimera (see later on).&lt;br /&gt;
&lt;br /&gt;
===xyz format===&lt;br /&gt;
&lt;br /&gt;
just run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2vis.py xyz &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(where &amp;lt;tt&amp;gt;$oxDNA&amp;lt;/tt&amp;gt; is the oxDNA source directory) to get the xyz representation in a file called the same as the trajectory&lt;br /&gt;
file with &amp;lt;tt&amp;gt;.xyz&amp;lt;/tt&amp;gt; appended. Please note that boundary conditions are&lt;br /&gt;
implemented strand-wise, so strands that are bound might appear at two&lt;br /&gt;
different sizes of the box. Also, the center of mass of the system (where&lt;br /&gt;
each strand is weighted the same regardless of the length) is set to 0 at&lt;br /&gt;
each frame. Carbons represent the backbone sites and oxygens the base sites.&lt;br /&gt;
&lt;br /&gt;
The resulting file can be read with a variety of programs. Here we will&lt;br /&gt;
explain how to visualise it sensibly in [http://www.ks.uiuc.edu/Research/vmd/ VMD].&lt;br /&gt;
&lt;br /&gt;
* Run VMD and load the xyz file.&lt;br /&gt;
* In the graphics menu, go to Representations.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name C&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.8 and Bond Radius 0.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name O&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.6 and Bond Radius 0.&lt;br /&gt;
&lt;br /&gt;
This should produce a ball representation of our model DNA. Bonds&lt;br /&gt;
automatically produced by VMD are NOT meaningful in our context.&lt;br /&gt;
&lt;br /&gt;
===pdb format===&lt;br /&gt;
Run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2chimera.py &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
to produce a trajectory/configuration in the pdb format. A further file&lt;br /&gt;
called &amp;lt;tt&amp;gt;chimera.com&amp;lt;/tt&amp;gt; will be produced (more on this later). All&lt;br /&gt;
comments above about periodic boundaries and centre of mass apply here as&lt;br /&gt;
well.&lt;br /&gt;
&lt;br /&gt;
The pdb file can be visualised in VMD just like the xyz format, but a nicer&lt;br /&gt;
output can be produced with [http://www.cgl.ucsf.edu/chimera/ UCSF Chimera] (although only for snapshots at&lt;br /&gt;
the moment) as follows:&lt;br /&gt;
&lt;br /&gt;
Run chimera and load the pdb file. An ugly output will be displayed.&lt;br /&gt;
&lt;br /&gt;
Bring up the command line under the &amp;lt;tt&amp;gt;Tools → General Controls&amp;lt;/tt&amp;gt; menu.&lt;br /&gt;
Input &amp;lt;tt&amp;gt;read chimera.com&amp;lt;/tt&amp;gt; in the command line and press enter. You&lt;br /&gt;
should get a nicer visualisation with different bases in different colors,&lt;br /&gt;
all the covalent bonds in the right place, etc.&lt;br /&gt;
&lt;br /&gt;
On large configurations, the production of ellipsoids will be extremely&lt;br /&gt;
slow. You can remove it by removing the line&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;aniso scale 0.75 smoothing 4&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
from the commands file. Loading the resulting file should be much faster.&lt;br /&gt;
&lt;br /&gt;
UCSF chimera can in turn export the scene in a variety of formats.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=DNA_model_introduction&amp;diff=950</id>
		<title>DNA model introduction</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=DNA_model_introduction&amp;diff=950"/>
		<updated>2015-04-13T21:01:35Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* oxDNA2 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The model treats DNA as a string of rigid nucleotides, which interact through potentials which depend on the position and orientation of the nucleotides. The interactions are:&lt;br /&gt;
#Sugar-phosphate backbone connectivity,&lt;br /&gt;
#Excluded volume,&lt;br /&gt;
#Hydrogen bonding,&lt;br /&gt;
#Nearest-neighbour stacking,&lt;br /&gt;
#Cross-stacking between base-pair steps in a duplex,&lt;br /&gt;
#Coaxial stacking.&lt;br /&gt;
&lt;br /&gt;
This interactions are illustrated below. Orientational modulations of the stacking potential encourage the bases to form coplanar stacks, the twist arising from the different length scales of the backbone separation and the optimum stacking separation. The possibility of unstacking allows single strands to be very flexible. Hydrogen bonding  can occur between complementary bases when they are anti-aligned, leading to the formation of double helical structures.&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/The_model.png&lt;br /&gt;
&lt;br /&gt;
(a) Model interaction sites with their interaction ranges (the typical range of an interaction is twice the radius of the sphere shown).&lt;br /&gt;
&lt;br /&gt;
(b) Representation of these interaction site in a visualisation that makes the planarity of the base clear.&lt;br /&gt;
&lt;br /&gt;
(c) A duplex in this representation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/interactions.png&lt;br /&gt;
&lt;br /&gt;
Indication of the interactions which hold together a typical duplex. V(b.b.) indicates the phosphate-sugar backbone connectivity.&lt;br /&gt;
&lt;br /&gt;
In the original model, all complementary base pairs and stacking partners interact with the same strength (there is no attractive interaction between non-complementary bases). A sequence-dependent parameterisation of the hydrogen-bonding and stacking interactions is included as an option in the code release.&lt;br /&gt;
The melting temperatures of a set of short DNA oligomers in the sequence-dependent coarse-grained model, compared to the melting temperatures as predicted by SantaLucia&#039;s nearest-neighbor model ([http://www.pnas.org/content/95/4/1460.full]), are available here: [http://www-thphys.physics.ox.ac.uk/people/PetrSulc/data/CG_model_Tm.txt]&lt;br /&gt;
&lt;br /&gt;
The original model incorporates electrostatics only through the short-ranged excluded volume. For this reason, it is only appropriate for the study of systems at high salt concentration, when electrostatic interactions are strongly screened. It also does not incorporate the differentiation between the major and minor grooves of DNA double helices. &lt;br /&gt;
&lt;br /&gt;
===oxDNA2===&lt;br /&gt;
&lt;br /&gt;
A new version of the oxDNA model, called oxDNA2, has recently been released ([http://arxiv.org/abs/1504.00821]). It introduces different widths for the major and minor DNA double helical grooves (an example double helix is shown below), a new electrostatic interaction which allows DNA to be studied at salt concentrations of 0.1M and above, improved large-scale structure prediction, and differentiation between AA and TT stacking strengths.&lt;br /&gt;
&lt;br /&gt;
https://dna.physics.ox.ac.uk/images/3/37/Perfect_yesmm_nopov.png&lt;br /&gt;
&lt;br /&gt;
The oxDNA2 model is included in the latest release of the oxDNA code. It can be used in a very similar way to the original oxDNA model. Only a couple of lines in the input file must be added. Firstly, the following line must be included:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
interaction_type = DNA2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In addition, the salt concentration for the simulation must be specified. For example, to run a simulation with a salt concentration of 0.5M, one should write:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
salt_concentration = 0.5&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Everything else should work in the same way as it does for the original oxDNA model.&lt;br /&gt;
&lt;br /&gt;
===Simulation units===&lt;br /&gt;
The code uses units for energy, mass, length and time that are convenient for a typical system. The relationship between simulation units (SU) and SI units is given below.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Simulation unit &lt;br /&gt;
! Physical unit&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of length&lt;br /&gt;
| 8.518x10&amp;lt;math&amp;gt;^{-10}&amp;lt;/math&amp;gt; m&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of energy&lt;br /&gt;
| 4.142x10&amp;lt;math&amp;gt;^{-20}&amp;lt;/math&amp;gt; J&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of temperature      &lt;br /&gt;
| 3000 K&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of force&lt;br /&gt;
| 4.863x10&amp;lt;math&amp;gt;^{-11}&amp;lt;/math&amp;gt; N&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of mass&lt;br /&gt;
| 5.24x10&amp;lt;math&amp;gt;^{-25}&amp;lt;/math&amp;gt; kg&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of time&lt;br /&gt;
| 3.03x10&amp;lt;math&amp;gt;^{-12}&amp;lt;/math&amp;gt; s&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The model and its performance is discussed in detail in the following references (the thesis provides the most complete analysis):&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, D.Phil. Thesis, University of Oxford, 2011.&lt;br /&gt;
[http://ora.ox.ac.uk/objects/uuid:b2415bb2-7975-4f59-b5e2-8c022b4a3719 Coarse-grained modelling of DNA and DNA self-assembly]&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, A. A. Louis and J. P. K. Doye, J. Chem. Phys, 134, 085101 (2011)&lt;br /&gt;
[http://link.aip.org/link/?JCP/134/085101 Structural, mechanical and thermodynamic properties of a coarse-grained DNA model] ([http://arxiv.org/abs/arXiv:1009.4480 arXiv])&lt;br /&gt;
&lt;br /&gt;
P. Šulc, F. Romano, T. E. Ouldridge, L. Rovigatti, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;137&#039;&#039;&#039;, 135101 (2012)&lt;br /&gt;
[http://jcp.aip.org/resource/1/jcpsa6/v137/i13/p135101_s1 Sequence-dependent thermodynamics of a coarse-grained DNA model] ([http://arxiv.org/abs/1207.3391 arxiv])&lt;br /&gt;
&lt;br /&gt;
B. E. K. Snodin, F. Randisi, M. Mosayebi, P. Šulc, J. S. Schreck, F. Romano, T. E. Ouldridge, R. Tsukanov, E. Nir, A. A. Louis, J. P. K. Doye,  &#039;&#039;arxiv&#039;&#039; (2015)&lt;br /&gt;
[http://arxiv.org/abs/1504.00821 Introducing Improved Structural Properties and Salt Dependence into a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/1504.00821 arXiv])&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Main_Page&amp;diff=949</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Main_Page&amp;diff=949"/>
		<updated>2015-04-10T16:00:00Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* News */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== oxDNA == &lt;br /&gt;
&lt;br /&gt;
oxDNA is a simulation code originally developed to implement the coarse-grained DNA model introduced by T. E. Ouldridge, J. P. K. Doye and A. A. Louis. It has been since reworked and it is now an extensible simulation+analysis framework. It natively supports DNA (oxDNA model), RNA (oxRNA model), Lennard-Jones and patchy particle simulations on both CPUs and NVIDIA GPUs.&lt;br /&gt;
&lt;br /&gt;
The code implements Monte Carlo and Molecular Dynamics and can be used as a basis to numerically study DNA, RNA, Lennard-Jones and patchy particle systems. The developers are F. Romano, P. Šulc, B. Snodin and T. E. Ouldridge in the [http://physchem.ox.ac.uk/~doye/jon/ Doye] and [http://www-thphys.physics.ox.ac.uk/people/ArdLouis/ Louis] groups at the University of Oxford and L. Rovigatti, formerly in the [http://pacci.phys.uniroma1.it/?q=node/40 Sciortino] group in Rome and now in the [http://comp-phys.univie.ac.at/homepages/homepage-likos/likos-group/ Likos] group in Vienna.&lt;br /&gt;
&lt;br /&gt;
The oxDNA and oxRNA models are intended to provide a physical representation of the thermodynamic and mechanical properties of single- and double-stranded DNA and RNA, as well as the transition between the two. At the same time, the representation of DNA and RNA is sufficiently simple to allow access to assembly processes which occur on long timescales, beyond the reach of atomistic simulations. Basic examples include duplex formation from single strands, and the folding of a self-complementary single strand into a hairpin. These are the underlying processes of the fast-growing field of  [http://en.wikipedia.org/wiki/DNA_nanotechnology DNA nanotechnology] and RNA nanotechnology, as well as many biophysical uses of DNA/RNA, allowing the model to be used to understand these fascinating systems.&lt;br /&gt;
&lt;br /&gt;
* [[Download and Installation]]&lt;br /&gt;
&lt;br /&gt;
* [[Features]]&lt;br /&gt;
&lt;br /&gt;
* [[DNA model introduction]]&lt;br /&gt;
&lt;br /&gt;
* [[RNA model introduction]]&lt;br /&gt;
&lt;br /&gt;
* [[Documentation]]&lt;br /&gt;
&lt;br /&gt;
* [[:Category:Examples|Examples]]&lt;br /&gt;
&lt;br /&gt;
* [[Screenshots|Screenshots and movies]]&lt;br /&gt;
&lt;br /&gt;
* [[Gallery of studied systems]]&lt;br /&gt;
&lt;br /&gt;
* [[Publications]]&lt;br /&gt;
&lt;br /&gt;
* [[License and Copyright]]&lt;br /&gt;
&lt;br /&gt;
* [[Previous version]]&lt;br /&gt;
&lt;br /&gt;
* [[Contact information]]&lt;br /&gt;
&lt;br /&gt;
== News ==&lt;br /&gt;
* Code implementing [[DNA_model_introduction#oxDNA2|oxDNA2]], a new version of the oxDNA model, is now included in the latest release. See the recent arXiv publication [http://arxiv.org/abs/1504.00821] for more information about the new model.&lt;br /&gt;
* Follow the latest updates about oxDNA on our twitter account: [https://twitter.com/ox_dna ox_dna]&lt;br /&gt;
* You can post questions about the installation and usage of our code to the newly created [http://sourceforge.net/p/oxdna/discussion/ Discussion forum] for oxDNA at sourceforge.net&lt;br /&gt;
&lt;br /&gt;
== Acknowledgments ==&lt;br /&gt;
&lt;br /&gt;
We thank our co-workers C. Matek, R. Harrison and W. Smith for having contributed bits of code and/or material for the examples and our webmasters Russell Jones and Greg Agacinski for maintaining the website.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=948</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=948"/>
		<updated>2015-04-10T15:55:32Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* Simulation options */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Compile options==&lt;br /&gt;
&lt;br /&gt;
Compiling oxDNA requires that you have a working &amp;lt;tt&amp;gt;cmake&amp;lt;/tt&amp;gt; software and C++ compiler on your machine. The instructions are provided in the [[Download and Installation]] section.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;oxDNA input_file&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The input file contains all the relevant information for the program to run, such as what initial configuration to use, the topology of the system, how often to print the energies to a file, etc. Please make sure you read the [[Thermostat|thermostat]] page if you use molecular dynamics.&lt;br /&gt;
&lt;br /&gt;
==Input file==&lt;br /&gt;
&lt;br /&gt;
As always in UNIX environments, everything is case sensitive.&lt;br /&gt;
&lt;br /&gt;
*Options are in the form key = value&lt;br /&gt;
*There can be arbitrary spaces before and after both key and value&lt;br /&gt;
*Line with a leading # will be treated as comments&lt;br /&gt;
*The | (pipe) sign is the separator between the different values that can be used to specify a value for the key.&lt;br /&gt;
*Keys between [ and ] are optional, the value after the equal sign is the default value&lt;br /&gt;
&lt;br /&gt;
Here we provide a list of the most commonly used input options. The complete and most up-to-date list of possible options can be found [[Input_options|here]] or in the &amp;lt;tt&amp;gt;README&amp;lt;/tt&amp;gt; file in the main directory of the simulation code.&lt;br /&gt;
&lt;br /&gt;
The input options of the previous oxDNA version can be found [[Input_options_of_the_previous_version|here]].&lt;br /&gt;
&lt;br /&gt;
===Generic options===&lt;br /&gt;
The options listed here define the generic behavior of the entire program.&lt;br /&gt;
;[interaction_type = DNA]: DNA|DNA2|RNA|patchy|LJ&lt;br /&gt;
: (selects the model for the simulation. DNA ([[DNA_model_introduction|oxDNA model]]) is the default option. DNA2 ([[DNA_model_introduction#oxDNA2|oxDNA2 model]]), RNA ([[RNA_model_introduction|oxRNA model]]), LJ (Lennard-Jones) and patchy particles are also implemented&lt;br /&gt;
;[sim_type=MD]: MD|MC|VMMC&lt;br /&gt;
:MD = Molecular Dynamics, MC = Monte Carlo, VMMC = Virtual Move Monte Carlo&lt;br /&gt;
;backend: CPU | CUDA &lt;br /&gt;
: (only sim_type=MD is supported if you choose CUDA backend)&lt;br /&gt;
;backend_precision: float|double|mixed&lt;br /&gt;
: (mixed option is available only for CUDA backend. It is recommended choice for optimal performance on CUDA machines, double is recommended for CPU simulations)&lt;br /&gt;
;[debug=0]: 0|1&lt;br /&gt;
: 1 if you want verbose logs, 0 otherwise.&lt;br /&gt;
&lt;br /&gt;
===Simulation options===&lt;br /&gt;
	The options listed here specify the behaviour of the simulation.&lt;br /&gt;
&lt;br /&gt;
;steps: number of steps to be performed.&lt;br /&gt;
		&lt;br /&gt;
;[restart_step_counter=0]: 0|1&lt;br /&gt;
:0 means that the step counter will start from the value read in the configuration file; if 1, the step counter will be reset to 0. The total duration of the simulation is unchanged.&lt;br /&gt;
			&lt;br /&gt;
;[seed=time(NULL)]: seed for the random number generator. On Unix systems, it will use by default a number from /dev/urandom + time(NULL)&lt;br /&gt;
		&lt;br /&gt;
;T: temperature of the simulation. It can be expressed in simulation units or kelvin (append a k or K after the value) or celsius (append a c or C after the value).&lt;br /&gt;
:Examples:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Value&lt;br /&gt;
! Simulation Units&lt;br /&gt;
|-&lt;br /&gt;
| 0.1&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300 K&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300k&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85c&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85 C &lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
		&lt;br /&gt;
;verlet_skin: if a particle moves more than verlet_skin then the lists will be updated. Its name is somewhat misleading: the actual verlet skin is 2*verlet_skin.&lt;br /&gt;
	&lt;br /&gt;
;salt_concentration: used if interaction_type = DNA2. It specifies the salt concentration in M.&lt;br /&gt;
&lt;br /&gt;
;[use_average_seq=1]: 0|1&lt;br /&gt;
: specifies whether to use the default hard-coded average parameters for base-pairing and stacking interaction strengths or not. If sequence dependence is to be used, set this to 0 and specify seq_dep_file.&lt;br /&gt;
	&lt;br /&gt;
;[seq_dep_file]: specifies the file from which the sequence dependent parameters should be read. Mandatory if use_average_seq=no, ignored otherwise. A sample file is provided (sequence_dependent_parameters.txt).&lt;br /&gt;
&lt;br /&gt;
;[external_forces=0]: 0|1&lt;br /&gt;
: specifies whether there are external forces acting on the nucleotides or not. If it is set to 1, then a file which specifies the external forces&#039; configuration has to be provided (see external_forces_file).&lt;br /&gt;
&lt;br /&gt;
;[external_forces_file]: specifies the file containing all the external forces&#039; configurations. Currently there are six supported force types (see EXAMPLES/TRAPS for some examples):&lt;br /&gt;
:*string&lt;br /&gt;
:*twist&lt;br /&gt;
:*trap&lt;br /&gt;
:*repulsion_plane&lt;br /&gt;
:*repulsion_plane_moving&lt;br /&gt;
:*mutual_trap&lt;br /&gt;
	&lt;br /&gt;
====Molecular dynamics simulations options====&lt;br /&gt;
&lt;br /&gt;
;dt: time step of the integration.&lt;br /&gt;
&lt;br /&gt;
;thermostat: no|refresh|brownian &lt;br /&gt;
:no means no thermostat will be used. refresh will refresh all the particle&#039;s velocities from a maxwellian every newtonian_steps steps. john is an Anderson-like thermostat (see pt). Make sure you read [[Thermostat|thermostat]].&lt;br /&gt;
&lt;br /&gt;
;newtonian_steps: required if thermostat != no&lt;br /&gt;
:number of steps after which a procedure of thermalization will be performed.&lt;br /&gt;
			&lt;br /&gt;
;pt: used if thermostat == john. It&#039;s the probability that a particle&#039;s velocity will be refreshed during a thermalization procedure.&lt;br /&gt;
		&lt;br /&gt;
;diff_coeff: required if pt is not specified&lt;br /&gt;
:used internally to automatically compute the pt that would be needed if we wanted such a self diffusion coefficient. Not used if pt is set.&lt;br /&gt;
&lt;br /&gt;
====Monte Carlo simulations options====&lt;br /&gt;
	&lt;br /&gt;
;[check_energy_every=10]: this number times print_energy_every gives the number of steps after which the energy will be computed from scratch and checked against the actual value computed adding energy differences.&lt;br /&gt;
		&lt;br /&gt;
;[check_energy_threshold=1e-4]:	if abs((old_energy - new_energy)/old_energy) &amp;gt; check_energy_threshold then the program will die and warn the user.&lt;br /&gt;
	&lt;br /&gt;
;ensemble: NVT&lt;br /&gt;
:ensemble of the simulation. More ensembles could be added in future versions.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement (per dimension) for translational moves in simulation units.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement for rotational moves in simulation units.&lt;br /&gt;
&lt;br /&gt;
===Input/output===&lt;br /&gt;
The options listed here are used to manage the I/O (read and write configurations, energies and so on)&lt;br /&gt;
	&lt;br /&gt;
;conf_file: initial configuration file. &lt;br /&gt;
		&lt;br /&gt;
;topology: file containing the system&#039;s topology.&lt;br /&gt;
		&lt;br /&gt;
;trajectory_file: the main output of the program. All the configurations will be appended to this file as they are printed.&lt;br /&gt;
		&lt;br /&gt;
;[confs_to_skip=0]: valid only if conf_file is a trajectory. Skip the first confs_to_skip configurations and then load in memory the (confs_to_skip+1)th.&lt;br /&gt;
		&lt;br /&gt;
;[lastconf_file=last_conf.dat]: this is the file where the last configuration is saved (when the program finishes or is killed). Set to last_conf.dat by default&lt;br /&gt;
&lt;br /&gt;
;[refresh_vel=0]: 0|1&lt;br /&gt;
:if 1 the initial velocities will be refreshed from a maxwellian.&lt;br /&gt;
	&lt;br /&gt;
;energy_file: energy output file.&lt;br /&gt;
		&lt;br /&gt;
;[print_energy_every=1000]: this will make the program print the energies every print_energy_every steps.&lt;br /&gt;
		&lt;br /&gt;
;[no_stdout_energy=0]: 0|1&lt;br /&gt;
:if 1 the energy will be printed just to the energy_file.&lt;br /&gt;
		&lt;br /&gt;
;[time_scale=linear]: linear|log_lin&lt;br /&gt;
:using linear configurations will be saved every print_conf_interval.&lt;br /&gt;
:using log_lin configurations will be saved logarithmically for print_conf_ppc times. After that the logarithmic sequence will restart.&lt;br /&gt;
	&lt;br /&gt;
;print_conf_interval: linear interval if time_scale == linear. First step of the logarithmic scale if time_scale == log_lin.&lt;br /&gt;
		&lt;br /&gt;
;[print_reduced_conf_every=0]: every print_reduced_conf_every steps the program will print out the reduced configurations (i.e. confs containing only the centers of mass of strands).&lt;br /&gt;
&lt;br /&gt;
;reduced_conf_output_dir: used if print_reduced_conf_every &amp;gt; 0&lt;br /&gt;
:output directory for reduced_conf files.&lt;br /&gt;
		&lt;br /&gt;
;[log_file=stderr]: file where generic and debug informations will be logged. If not specified then stderr will be used.&lt;br /&gt;
&lt;br /&gt;
==Output files==&lt;br /&gt;
*The log file contains all the relevant information about the simulation (specified options, activated external forces, warnings about misconfigurations, critical errors, etc.). If the log file is omitted, all this information will be displayed on the standard output.&lt;br /&gt;
&lt;br /&gt;
*The energy file layout for MD simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| time&lt;br /&gt;
| potential energy&lt;br /&gt;
| kinetic energy&lt;br /&gt;
| total energy&lt;br /&gt;
| hydrogen bonding energy&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:while for MC simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| time&lt;br /&gt;
| potential energy&lt;br /&gt;
| hydrogen bonding energy&lt;br /&gt;
| acceptance ratio for translational moves&lt;br /&gt;
| acceptance ratio for rotational moves&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:N.B. potential, kinetic and total energies are divided by the number of particles whereas the hydrogen bonding energy is not.&lt;br /&gt;
&lt;br /&gt;
*Configurations are saved in the trajectory file.&lt;br /&gt;
&lt;br /&gt;
==Configuration and topology files==&lt;br /&gt;
The current state of a system, as specified by oxDNA, is described by two files: a configuration file and a topology file. The configuration file contains all the general information (timestep, energy and box size) and the orientations and positions of each nucleotide. The topology file, on the other hand, keeps track of the backbone-backbone bonds between nucleotides in the same strand. Working configuration and topology files can be found in the &amp;lt;tt&amp;gt;[[Examples|EXAMPLES]]&amp;lt;/tt&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
===Configuration file===&lt;br /&gt;
The first three rows of a configuration file contain the timestep &amp;lt;tt&amp;gt;T&amp;lt;/tt&amp;gt; at which the configuration has been printed, the length of the box sides &amp;lt;tt&amp;gt;Lx&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;Ly&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Lz&amp;lt;/tt&amp;gt; and the total, potential and kinetic energies, &amp;lt;tt&amp;gt;Etot&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;U&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;K&amp;lt;/tt&amp;gt;, respectively:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
t = T&lt;br /&gt;
b = Lz Ly Lz&lt;br /&gt;
E = Etot U K&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after this header, each row contains position of the centre of mass, orientation, velocity and angular velocity of a single nucleotide in the following order:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\overbrace{r_x r_y r_z}^{\rm Position} \overbrace{b_x b_y b_z}^{\rm Backbone-base versor} \overbrace{n_x n_y n_z}^{\rm Normal versor} \overbrace{v_x v_y v_z}^{\rm Velocity} \overbrace{L_x L_y L_z}^{\rm Angular velocity}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Topology file===&lt;br /&gt;
The topology file stores the intra-strand, fixed bonding topology (i.e. which nucleotides share backbone links). The first row contains the total number of nucleotides &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; and the number of strands &amp;lt;tt&amp;gt;Ns&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
N Ns&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After this header, the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th row specifies strand, base and 3&#039; and 5&#039; neighbors of the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide in this way:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
S B 3&#039; 5&#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where S is the index of the strand (starting from 1) which the nucleotide belongs to, B is the base and 3&#039; and 5&#039; specify the index of the nucleotides with which the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide is bonded in the 3&#039; and 5&#039; direction, respectively. A &amp;lt;tt&amp;gt;-1&amp;lt;/tt&amp;gt; signals that the nucleotide terminates the strand in either 3&#039; or 5&#039; direction. The topology file of a strand of sequence &amp;lt;tt&amp;gt;GCGTTG&amp;lt;/tt&amp;gt; would be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
6 1&lt;br /&gt;
1 G -1 1&lt;br /&gt;
1 C 0 2&lt;br /&gt;
1 G 1 3&lt;br /&gt;
1 T 2 4&lt;br /&gt;
1 T 3 5&lt;br /&gt;
1 G 4 -1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Specifying the topology in this way can simplify the process of simulating, for example, circular DNA.&lt;br /&gt;
&lt;br /&gt;
===Generation of initial configurations===&lt;br /&gt;
In order to generate initial configuration and topology files, we provide the &amp;lt;tt&amp;gt;${oxDNA}/UTILS/generate-sa.py&amp;lt;/tt&amp;gt; script. The usage of the script is&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;generate-sa.py &amp;lt;box side&amp;gt; &amp;lt;file with sequence&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
where &amp;lt;tt&amp;gt;&amp;lt;box side&amp;gt;&amp;lt;/tt&amp;gt; specifies the length of the box side in simulation units and &amp;lt;tt&amp;gt;&amp;lt;file with sequence&amp;gt;&amp;lt;/tt&amp;gt; contains the sequence of the strands to be generated, one row per strand. If double strands are needed, each sequence must be preceded by &amp;lt;tt&amp;gt;DOUBLE&amp;lt;/tt&amp;gt;. For example, a file containing&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DOUBLE AGGGCT&lt;br /&gt;
CCTGTA&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
would generate a double strand with a sequence &amp;lt;tt&amp;gt;AGGGCT&amp;lt;/tt&amp;gt; and a single strand with a sequence &amp;lt;tt&amp;gt;CCTGTA&amp;lt;/tt&amp;gt;. The sequences are given in 3&#039;-5&#039; order.&lt;br /&gt;
&lt;br /&gt;
Positions and orientations of the strands are all chosen at random in such a way that the resulting initial configuration does not contain significant excluded volume interactions between nucleotides belonging to different strands. Generated single- and double-strands have helical conformations (i.e. they are in the minimum of the intra-strand interaction energy).&lt;br /&gt;
&lt;br /&gt;
The output configuration and topology are stored in &amp;lt;tt&amp;gt;generated.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;generated.top&amp;lt;/tt&amp;gt;, respectively. &lt;br /&gt;
Since this script will initialize nucleotides&#039; velocities and angular velocities to 0, when performing a molecular (or Brownian) dynamics simulation remember to put &amp;lt;tt&amp;gt;refresh_vel = 1&amp;lt;/tt&amp;gt; in the [[Documentation#Input_file|input]] file.&lt;br /&gt;
&lt;br /&gt;
==Analysis of configurations==&lt;br /&gt;
The configurations produced by oxDNA can be analysed with the &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; program in &amp;lt;tt&amp;gt;${oxDNA}/UTILS/process_data/&amp;lt;/tt&amp;gt; directory. This program takes as command line arguments the input file (to recover the temperature and topology file), a configuration/trajectory file and an optional number. Since &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; reads analyses a single configuration, the optional number selects the configuration which it needs to analyse in the trajectory. Analysing a whole trajectory can be done by looping over a counter.&lt;br /&gt;
&lt;br /&gt;
Please note that &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; is not compiled automatically. If you never compiled it, do so as described in the [[Download_and_Installation#Installation|installation instructions]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; can be used as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
${oxDNA}/UTILS/process_data/output_bonds &amp;lt;input_file&amp;gt; &amp;lt;trajectory_file&amp;gt; [counter]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The program outputs some debugging information to the standard error and information regarding the interaction energies to the standard output. The contributions arising from each of the terms in the potential (see the appendix of [[Publications|Ref. 2]]) are reported for each pair of nucleotides that have non-zero total interactions.&lt;br /&gt;
&lt;br /&gt;
This output can be easily parsed to analyse the configurations.&lt;br /&gt;
&lt;br /&gt;
For each pair of nucleotides that do interact in the configuration, the program prints out a line containing:&lt;br /&gt;
* The id of the two particles (starting from 0)&lt;br /&gt;
* The total interaction energy&lt;br /&gt;
* The hydrogen bonding (base pairing) energy&lt;br /&gt;
* The stacking energy&lt;br /&gt;
* The cross stacking energy&lt;br /&gt;
* The excluded volume energy&lt;br /&gt;
* The FENE interaction energy&lt;br /&gt;
* A letter indicating a status code. This will be &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; for pairs that interact through bonded interactions (i.e. they are neighbors along a strand) and it will be &amp;lt;tt&amp;gt;H&amp;lt;/tt&amp;gt; when a base pair is present. Our definition of base pair is when two nucleotides have a hydrogen bonding energy less than 0.1 in simulation units (see [[Publications|Ref. 2]]).&lt;br /&gt;
&lt;br /&gt;
===Geometry of the Model===&lt;br /&gt;
In the configuration/trajectory files only the positions and orientations of the nucleotides are stored. If one wants to recover the positions of the individual interaction sites in the model, some maths need to be done.&lt;br /&gt;
&lt;br /&gt;
The position of the base, stacking and backbone sites can be recovered as follows:&lt;br /&gt;
&lt;br /&gt;
base site:     (center) + 0.40 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
stacking site: (center) + 0.34 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
backbone site: (center) - 0.40 * (axis_vector)&lt;br /&gt;
&lt;br /&gt;
The picture in the [[Model_introduction|introduction]] might help understanding where the sites are.&lt;br /&gt;
&lt;br /&gt;
==External Forces==&lt;br /&gt;
The code implements several types of external forces that can be imposed on the system that can be used either to simulate tension exerted on DNA or simply to accelerate the formation of secondary or tertiary structure. External forces can be tricky to treat, especially in a dynamics simulation, since they are an external source of work. Care should be taken in adjusting the time step, thermostat parameters and such.&lt;br /&gt;
&lt;br /&gt;
To enable external forces, one needs to specify &amp;lt;tt&amp;gt;external_forces = 1&amp;lt;/tt&amp;gt; in the input file and also supply an external force file to read from with the key &amp;lt;tt&amp;gt;external_forces_file = &amp;lt;file&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The syntax of the external forces file is quite simple. Examples of such files can be found in the [[Hairpin_formation|hairpin formation]] and [[Pseudoknot|Pseudoknot formation]] examples. Each force is specified within a block contained in curly brackets. Empty lines and lines beginning with an hash symbol (&amp;lt;tt&amp;gt;#&amp;lt;/tt&amp;gt;) are ignored. Different forces require different keys to be present. If the file has the wrong syntax, oxDNA should spit out a sensible error message while parsing the file.&lt;br /&gt;
&lt;br /&gt;
The different types of forces implemented at the moment are:&lt;br /&gt;
* harmonic trap&lt;br /&gt;
* string &lt;br /&gt;
* repulsion plane&lt;br /&gt;
* mutual trap&lt;br /&gt;
&lt;br /&gt;
All forces act on the centre of the particle.&lt;br /&gt;
&lt;br /&gt;
Forces of different kinds can be combined in the same simulation. There is a maximum number of 10 external forces per particle for memory reasons. This can be manually overridden recompiling the code with a different value of the macro &amp;lt;tt&amp;gt;MAX_EXT_FORCES&amp;lt;/tt&amp;gt; (currently 10) in &amp;lt;tt&amp;gt;defs.h&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===String===&lt;br /&gt;
A string is implemented as a force that does not depend on the particle position. Its value can be constant or can change linearly with time. It is useful as it does not fluctuate with time.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = string&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;F0&#039;&#039;&#039; (float) the value of the force at time = 0 in simulation units (please note that the value of the time may or may not be reset when starting a simulation, depending on the input file)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) growing rate of the force (simulation units/time steps). Typical values are very small (&amp;lt; 10^(-5))&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of the force (automatically normalised by the code)&lt;br /&gt;
&lt;br /&gt;
The following bit of code will create an external force on the first nucleotide in the system starting at 1 simulation units (48.6 pN) and growing linearly with time at the rate of 48.6pN every million time steps. The force will pull the nucleotide along the &amp;lt;tt&amp;gt;z&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = string&lt;br /&gt;
particle = 0&lt;br /&gt;
F0 = 1.&lt;br /&gt;
rate = 1e-6&lt;br /&gt;
dir = 0., 0., 1.&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Harmonic trap===&lt;br /&gt;
This type of force implements an harmonic trap, of arbitrary stiffness, that can move linearly with time. It can be useful to fix the position of the nucleotides to simulate attachment to something or to implement (quasi) constant extension simulations.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;pos0&#039;&#039;&#039; (3 floats separated by commas) rest position of the trap&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * dx)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) speed of the trap (length simulation units/time steps)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of movement of the trap&lt;br /&gt;
&lt;br /&gt;
Here is an example input for a harmonic trap acting on the third nucleotide constraining it to stay close to the origin. In this example the trap does not move (&amp;lt;tt&amp;gt;rate=0&amp;lt;/tt&amp;gt;), but one could have it move at a constant speed along the direction specified by &amp;lt;tt&amp;gt;dir&amp;lt;/tt&amp;gt;, in this case the &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = trap&lt;br /&gt;
particle = 2&lt;br /&gt;
pos0 = 0., 0., 0.&lt;br /&gt;
stiff = 1.0&lt;br /&gt;
rate = 0.&lt;br /&gt;
dir = 1.,0.,0.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note that the trap does not comply with periodic boundary conditions. This is most likely what you want.&lt;br /&gt;
&lt;br /&gt;
===Repulsion plane===&lt;br /&gt;
This kind of external force implements a repulsion plane that constrains a particle (or the whole system) to stay on one side of it. It is implemented as a harmonic repulsion, but the stiffness can be made arbitrarily high to mimic a hard repulsion.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = repulsion_plane&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force. If set to the special value -1, the force will be exerted on all particles.&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * D, where D is distance from the plane. The force is exerted only if the nucleotide is below the plane)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) a direction normal to the plane&lt;br /&gt;
* &#039;&#039;&#039;position&#039;&#039;&#039; (1 float number) specifies the position of the plane&lt;br /&gt;
&lt;br /&gt;
If direction is &amp;lt;tt&amp;gt; direction =  u,v,w &amp;lt;/tt&amp;gt; , then the plane contains all the points (x,y,z) that satisfy the equation: u*x + v*y + w*z + position = 0.&lt;br /&gt;
Only nucleotides  with coordinates (x,y,z) that satisfy u*x + v*y + w*z + position &amp;lt; 0 will feel the force.&lt;br /&gt;
The force exerted on a nucleotide is equal to stiff * D, where D is the distance of the nucleotide from the plane, where &amp;lt;math&amp;gt; D = | ux + vy + wz + \mbox{position}| / \sqrt{u^2 + v^2 + w^2 }.&amp;lt;/math&amp;gt;&lt;br /&gt;
For nucleotides for which u*x + v*y + w*z + position &amp;gt;= 0, no force will be exerted.&lt;br /&gt;
&lt;br /&gt;
Here is an example. This plane acts on the whole system and will not exert any force on nucleotides with a positive &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate. A force proportional to 48.6 pN * (&amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate) will be exerted on all particles . &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = repulsion_plane&lt;br /&gt;
#whole system&lt;br /&gt;
particle = -1&lt;br /&gt;
stiff = 1. #48.6 pN /(simulation length unit)  &lt;br /&gt;
dir = 1, 0, 0&lt;br /&gt;
position = 0&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If in the above example you would specify position = 3, then the force would be exerted on all nucleotides with coordinate x &amp;gt; -3.&lt;br /&gt;
&lt;br /&gt;
===Mutual trap===&lt;br /&gt;
This force is useful to form initial configurations. It is a harmonic force that at every moment pulls a particle towards a reference particle. It is possible to specify the separation at which the force will be 0.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = mutual_trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force.&lt;br /&gt;
* &#039;&#039;&#039;ref_particle&#039;&#039;&#039; (int) particle to pull towards. Please note that this particle will not feel any force (the name mutual trap is thus misleading).&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap&lt;br /&gt;
* &#039;&#039;&#039;r0&#039;&#039;&#039; (float) equilibrium distance of the trap.&lt;br /&gt;
&lt;br /&gt;
Here is an example, extracted from the [[Pseudoknot|pseudoknot formation example]]. This will pull particle 14 towards particle 39, favouring an equilibrium distance of 1.4 (which corresponds roughly to the minimum of the hydrogen bonding potential, not a coincidence). The same force with opposite sign is exerted on particle 39 through a separate force. It is not necessary to have both particles feel the force, but it usually works much better.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 14&lt;br /&gt;
ref_particle = 39&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 39&lt;br /&gt;
ref_particle = 14&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visualisation of structures==&lt;br /&gt;
oxDNA produces a trajectory file where all the relevant information is&lt;br /&gt;
stored. A converter is provided (&amp;lt;tt&amp;gt;traj2vis.py&amp;lt;/tt&amp;gt;) in the&lt;br /&gt;
&amp;lt;tt&amp;gt;UTILS&amp;lt;/tt&amp;gt; directory that is able to produce files in the &amp;lt;tt&amp;gt;xyz&amp;lt;/tt&amp;gt;&lt;br /&gt;
and &amp;lt;tt&amp;gt;pdb&amp;lt;/tt&amp;gt; formats. The same program can be used on a configuration&lt;br /&gt;
file and it will produce a snapshot.&lt;br /&gt;
&lt;br /&gt;
Since the model is coarse-grained, we have to &amp;quot;trick&amp;quot; the visualisers into&lt;br /&gt;
thinking that the interaction sites in the model are actually atoms.&lt;br /&gt;
Advanced nucleic acids representations such as ribbons will not work on the&lt;br /&gt;
outputs.&lt;br /&gt;
&lt;br /&gt;
All the images in the [[Screenshots]] page were produced with the pdb representation using UCSF chimera (see later on).&lt;br /&gt;
&lt;br /&gt;
===xyz format===&lt;br /&gt;
&lt;br /&gt;
just run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2vis.py xyz &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(where &amp;lt;tt&amp;gt;$oxDNA&amp;lt;/tt&amp;gt; is the oxDNA source directory) to get the xyz representation in a file called the same as the trajectory&lt;br /&gt;
file with &amp;lt;tt&amp;gt;.xyz&amp;lt;/tt&amp;gt; appended. Please note that boundary conditions are&lt;br /&gt;
implemented strand-wise, so strands that are bound might appear at two&lt;br /&gt;
different sizes of the box. Also, the center of mass of the system (where&lt;br /&gt;
each strand is weighted the same regardless of the length) is set to 0 at&lt;br /&gt;
each frame. Carbons represent the backbone sites and oxygens the base sites.&lt;br /&gt;
&lt;br /&gt;
The resulting file can be read with a variety of programs. Here we will&lt;br /&gt;
explain how to visualise it sensibly in [http://www.ks.uiuc.edu/Research/vmd/ VMD].&lt;br /&gt;
&lt;br /&gt;
* Run VMD and load the xyz file.&lt;br /&gt;
* In the graphics menu, go to Representations.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name C&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.8 and Bond Radius 0.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name O&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.6 and Bond Radius 0.&lt;br /&gt;
&lt;br /&gt;
This should produce a ball representation of our model DNA. Bonds&lt;br /&gt;
automatically produced by VMD are NOT meaningful in our context.&lt;br /&gt;
&lt;br /&gt;
===pdb format===&lt;br /&gt;
Run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2chimera.py &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
to produce a trajectory/configuration in the pdb format. A further file&lt;br /&gt;
called &amp;lt;tt&amp;gt;chimera.com&amp;lt;/tt&amp;gt; will be produced (more on this later). All&lt;br /&gt;
comments above about periodic boundaries and centre of mass apply here as&lt;br /&gt;
well.&lt;br /&gt;
&lt;br /&gt;
The pdb file can be visualised in VMD just like the xyz format, but a nicer&lt;br /&gt;
output can be produced with [http://www.cgl.ucsf.edu/chimera/ UCSF Chimera] (although only for snapshots at&lt;br /&gt;
the moment) as follows:&lt;br /&gt;
&lt;br /&gt;
Run chimera and load the pdb file. An ugly output will be displayed.&lt;br /&gt;
&lt;br /&gt;
Bring up the command line under the &amp;lt;tt&amp;gt;Tools → General Controls&amp;lt;/tt&amp;gt; menu.&lt;br /&gt;
Input &amp;lt;tt&amp;gt;read chimera.com&amp;lt;/tt&amp;gt; in the command line and press enter. You&lt;br /&gt;
should get a nicer visualisation with different bases in different colors,&lt;br /&gt;
all the covalent bonds in the right place, etc.&lt;br /&gt;
&lt;br /&gt;
On large configurations, the production of ellipsoids will be extremely&lt;br /&gt;
slow. You can remove it by removing the line&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;aniso scale 0.75 smoothing 4&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
from the commands file. Loading the resulting file should be much faster.&lt;br /&gt;
&lt;br /&gt;
UCSF chimera can in turn export the scene in a variety of formats.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=DNA_model_introduction&amp;diff=947</id>
		<title>DNA model introduction</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=DNA_model_introduction&amp;diff=947"/>
		<updated>2015-04-10T15:51:24Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The model treats DNA as a string of rigid nucleotides, which interact through potentials which depend on the position and orientation of the nucleotides. The interactions are:&lt;br /&gt;
#Sugar-phosphate backbone connectivity,&lt;br /&gt;
#Excluded volume,&lt;br /&gt;
#Hydrogen bonding,&lt;br /&gt;
#Nearest-neighbour stacking,&lt;br /&gt;
#Cross-stacking between base-pair steps in a duplex,&lt;br /&gt;
#Coaxial stacking.&lt;br /&gt;
&lt;br /&gt;
This interactions are illustrated below. Orientational modulations of the stacking potential encourage the bases to form coplanar stacks, the twist arising from the different length scales of the backbone separation and the optimum stacking separation. The possibility of unstacking allows single strands to be very flexible. Hydrogen bonding  can occur between complementary bases when they are anti-aligned, leading to the formation of double helical structures.&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/The_model.png&lt;br /&gt;
&lt;br /&gt;
(a) Model interaction sites with their interaction ranges (the typical range of an interaction is twice the radius of the sphere shown).&lt;br /&gt;
&lt;br /&gt;
(b) Representation of these interaction site in a visualisation that makes the planarity of the base clear.&lt;br /&gt;
&lt;br /&gt;
(c) A duplex in this representation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/interactions.png&lt;br /&gt;
&lt;br /&gt;
Indication of the interactions which hold together a typical duplex. V(b.b.) indicates the phosphate-sugar backbone connectivity.&lt;br /&gt;
&lt;br /&gt;
In the original model, all complementary base pairs and stacking partners interact with the same strength (there is no attractive interaction between non-complementary bases). A sequence-dependent parameterisation of the hydrogen-bonding and stacking interactions is included as an option in the code release.&lt;br /&gt;
The melting temperatures of a set of short DNA oligomers in the sequence-dependent coarse-grained model, compared to the melting temperatures as predicted by SantaLucia&#039;s nearest-neighbor model ([http://www.pnas.org/content/95/4/1460.full]), are available here: [http://www-thphys.physics.ox.ac.uk/people/PetrSulc/data/CG_model_Tm.txt]&lt;br /&gt;
&lt;br /&gt;
The original model incorporates electrostatics only through the short-ranged excluded volume. For this reason, it is only appropriate for the study of systems at high salt concentration, when electrostatic interactions are strongly screened. It also does not incorporate the differentiation between the major and minor grooves of DNA double helices. &lt;br /&gt;
&lt;br /&gt;
===oxDNA2===&lt;br /&gt;
&lt;br /&gt;
A new version of the oxDNA model, called oxDNA2, has recently been released ([http://arxiv.org/abs/1504.00821]). It introduces different widths for the major and minor DNA double helical grooves (an example double helix is shown below), a new electrostatic interaction which allows DNA to be studied at salt concentrations of 0.1M and above, improved large-scale structure prediction, and differentiation between AA and TT stacking strengths.&lt;br /&gt;
&lt;br /&gt;
https://dna.physics.ox.ac.uk/images/3/37/Perfect_yesmm_nopov.png&lt;br /&gt;
&lt;br /&gt;
===Simulation units===&lt;br /&gt;
The code uses units for energy, mass, length and time that are convenient for a typical system. The relationship between simulation units (SU) and SI units is given below.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Simulation unit &lt;br /&gt;
! Physical unit&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of length&lt;br /&gt;
| 8.518x10&amp;lt;math&amp;gt;^{-10}&amp;lt;/math&amp;gt; m&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of energy&lt;br /&gt;
| 4.142x10&amp;lt;math&amp;gt;^{-20}&amp;lt;/math&amp;gt; J&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of temperature      &lt;br /&gt;
| 3000 K&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of force&lt;br /&gt;
| 4.863x10&amp;lt;math&amp;gt;^{-11}&amp;lt;/math&amp;gt; N&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of mass&lt;br /&gt;
| 5.24x10&amp;lt;math&amp;gt;^{-25}&amp;lt;/math&amp;gt; kg&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of time&lt;br /&gt;
| 3.03x10&amp;lt;math&amp;gt;^{-12}&amp;lt;/math&amp;gt; s&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The model and its performance is discussed in detail in the following references (the thesis provides the most complete analysis):&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, D.Phil. Thesis, University of Oxford, 2011.&lt;br /&gt;
[http://ora.ox.ac.uk/objects/uuid:b2415bb2-7975-4f59-b5e2-8c022b4a3719 Coarse-grained modelling of DNA and DNA self-assembly]&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, A. A. Louis and J. P. K. Doye, J. Chem. Phys, 134, 085101 (2011)&lt;br /&gt;
[http://link.aip.org/link/?JCP/134/085101 Structural, mechanical and thermodynamic properties of a coarse-grained DNA model] ([http://arxiv.org/abs/arXiv:1009.4480 arXiv])&lt;br /&gt;
&lt;br /&gt;
P. Šulc, F. Romano, T. E. Ouldridge, L. Rovigatti, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;137&#039;&#039;&#039;, 135101 (2012)&lt;br /&gt;
[http://jcp.aip.org/resource/1/jcpsa6/v137/i13/p135101_s1 Sequence-dependent thermodynamics of a coarse-grained DNA model] ([http://arxiv.org/abs/1207.3391 arxiv])&lt;br /&gt;
&lt;br /&gt;
B. E. K. Snodin, F. Randisi, M. Mosayebi, P. Šulc, J. S. Schreck, F. Romano, T. E. Ouldridge, R. Tsukanov, E. Nir, A. A. Louis, J. P. K. Doye,  &#039;&#039;arxiv&#039;&#039; (2015)&lt;br /&gt;
[http://arxiv.org/abs/1504.00821 Introducing Improved Structural Properties and Salt Dependence into a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/1504.00821 arXiv])&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=DNA_model_introduction&amp;diff=946</id>
		<title>DNA model introduction</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=DNA_model_introduction&amp;diff=946"/>
		<updated>2015-04-10T15:50:46Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The model treats DNA as a string of rigid nucleotides, which interact through potentials which depend on the position and orientation of the nucleotides. The interactions are:&lt;br /&gt;
#Sugar-phosphate backbone connectivity,&lt;br /&gt;
#Excluded volume,&lt;br /&gt;
#Hydrogen bonding,&lt;br /&gt;
#Nearest-neighbour stacking,&lt;br /&gt;
#Cross-stacking between base-pair steps in a duplex,&lt;br /&gt;
#Coaxial stacking.&lt;br /&gt;
&lt;br /&gt;
This interactions are illustrated below. Orientational modulations of the stacking potential encourage the bases to form coplanar stacks, the twist arising from the different length scales of the backbone separation and the optimum stacking separation. The possibility of unstacking allows single strands to be very flexible. Hydrogen bonding  can occur between complementary bases when they are anti-aligned, leading to the formation of double helical structures.&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/The_model.png&lt;br /&gt;
&lt;br /&gt;
(a) Model interaction sites with their interaction ranges (the typical range of an interaction is twice the radius of the sphere shown).&lt;br /&gt;
&lt;br /&gt;
(b) Representation of these interaction site in a visualisation that makes the planarity of the base clear.&lt;br /&gt;
&lt;br /&gt;
(c) A duplex in this representation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/interactions.png&lt;br /&gt;
&lt;br /&gt;
Indication of the interactions which hold together a typical duplex. V(b.b.) indicates the phosphate-sugar backbone connectivity.&lt;br /&gt;
&lt;br /&gt;
In the original model, all complementary base pairs and stacking partners interact with the same strength (there is no attractive interaction between non-complementary bases). A sequence-dependent parameterisation of the hydrogen-bonding and stacking interactions is included as an option in the code release.&lt;br /&gt;
The melting temperatures of a set of short DNA oligomers in the sequence-dependent coarse-grained model, compared to the melting temperatures as predicted by SantaLucia&#039;s nearest-neighbor model ([http://www.pnas.org/content/95/4/1460.full]), are available here: [http://www-thphys.physics.ox.ac.uk/people/PetrSulc/data/CG_model_Tm.txt]&lt;br /&gt;
&lt;br /&gt;
The original model incorporates electrostatics only through the short-ranged excluded volume. For this reason, it is only appropriate for the study of systems at high salt concentration, when electrostatic interactions are strongly screened. It also does not incorporate the differentiation between the major and minor grooves of DNA double helices. &lt;br /&gt;
&lt;br /&gt;
===oxDNA2===&lt;br /&gt;
&lt;br /&gt;
A new version of the oxDNA model, called oxDNA2, has recently been released ([http://arxiv.org/abs/1504.00821]). It introduces different widths for the major and minor DNA double helical grooves (as shown below), a new electrostatic interaction which allows DNA to be studied at salt concentrations of 0.1M and above, improved large-scale structure prediction, and differentiation between AA and TT stacking strengths.&lt;br /&gt;
&lt;br /&gt;
https://dna.physics.ox.ac.uk/images/3/37/Perfect_yesmm_nopov.png&lt;br /&gt;
&lt;br /&gt;
===Simulation units===&lt;br /&gt;
The code uses units for energy, mass, length and time that are convenient for a typical system. The relationship between simulation units (SU) and SI units is given below.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Simulation unit &lt;br /&gt;
! Physical unit&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of length&lt;br /&gt;
| 8.518x10&amp;lt;math&amp;gt;^{-10}&amp;lt;/math&amp;gt; m&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of energy&lt;br /&gt;
| 4.142x10&amp;lt;math&amp;gt;^{-20}&amp;lt;/math&amp;gt; J&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of temperature      &lt;br /&gt;
| 3000 K&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of force&lt;br /&gt;
| 4.863x10&amp;lt;math&amp;gt;^{-11}&amp;lt;/math&amp;gt; N&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of mass&lt;br /&gt;
| 5.24x10&amp;lt;math&amp;gt;^{-25}&amp;lt;/math&amp;gt; kg&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of time&lt;br /&gt;
| 3.03x10&amp;lt;math&amp;gt;^{-12}&amp;lt;/math&amp;gt; s&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The model and its performance is discussed in detail in the following references (the thesis provides the most complete analysis):&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, D.Phil. Thesis, University of Oxford, 2011.&lt;br /&gt;
[http://ora.ox.ac.uk/objects/uuid:b2415bb2-7975-4f59-b5e2-8c022b4a3719 Coarse-grained modelling of DNA and DNA self-assembly]&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, A. A. Louis and J. P. K. Doye, J. Chem. Phys, 134, 085101 (2011)&lt;br /&gt;
[http://link.aip.org/link/?JCP/134/085101 Structural, mechanical and thermodynamic properties of a coarse-grained DNA model] ([http://arxiv.org/abs/arXiv:1009.4480 arXiv])&lt;br /&gt;
&lt;br /&gt;
P. Šulc, F. Romano, T. E. Ouldridge, L. Rovigatti, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;137&#039;&#039;&#039;, 135101 (2012)&lt;br /&gt;
[http://jcp.aip.org/resource/1/jcpsa6/v137/i13/p135101_s1 Sequence-dependent thermodynamics of a coarse-grained DNA model] ([http://arxiv.org/abs/1207.3391 arxiv])&lt;br /&gt;
&lt;br /&gt;
B. E. K. Snodin, F. Randisi, M. Mosayebi, P. Šulc, J. S. Schreck, F. Romano, T. E. Ouldridge, R. Tsukanov, E. Nir, A. A. Louis, J. P. K. Doye,  &#039;&#039;arxiv&#039;&#039; (2015)&lt;br /&gt;
[http://arxiv.org/abs/1504.00821 Introducing Improved Structural Properties and Salt Dependence into a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/1504.00821 arXiv])&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=File:Perfect_yesmm_nopov.png&amp;diff=945</id>
		<title>File:Perfect yesmm nopov.png</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=File:Perfect_yesmm_nopov.png&amp;diff=945"/>
		<updated>2015-04-10T15:49:08Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: Snodinb uploaded a new version of &amp;amp;quot;File:Perfect yesmm nopov.png&amp;amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ideal duplex visualised with Chimera with major-minor grooving enabled&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=File:Perfect_yesmm_nopov.png&amp;diff=944</id>
		<title>File:Perfect yesmm nopov.png</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=File:Perfect_yesmm_nopov.png&amp;diff=944"/>
		<updated>2015-04-10T15:46:46Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: Snodinb uploaded a new version of &amp;amp;quot;File:Perfect yesmm nopov.png&amp;amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ideal duplex visualised with Chimera with major-minor grooving enabled&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=File:Perfect_yesmm_nopov.png&amp;diff=943</id>
		<title>File:Perfect yesmm nopov.png</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=File:Perfect_yesmm_nopov.png&amp;diff=943"/>
		<updated>2015-04-10T15:36:02Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: Ideal duplex visualised with Chimera with major-minor grooving enabled&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ideal duplex visualised with Chimera with major-minor grooving enabled&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Main_Page&amp;diff=942</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Main_Page&amp;diff=942"/>
		<updated>2015-04-10T12:22:34Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* News */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== oxDNA == &lt;br /&gt;
&lt;br /&gt;
oxDNA is a simulation code originally developed to implement the coarse-grained DNA model introduced by T. E. Ouldridge, J. P. K. Doye and A. A. Louis. It has been since reworked and it is now an extensible simulation+analysis framework. It natively supports DNA (oxDNA model), RNA (oxRNA model), Lennard-Jones and patchy particle simulations on both CPUs and NVIDIA GPUs.&lt;br /&gt;
&lt;br /&gt;
The code implements Monte Carlo and Molecular Dynamics and can be used as a basis to numerically study DNA, RNA, Lennard-Jones and patchy particle systems. The developers are F. Romano, P. Šulc, B. Snodin and T. E. Ouldridge in the [http://physchem.ox.ac.uk/~doye/jon/ Doye] and [http://www-thphys.physics.ox.ac.uk/people/ArdLouis/ Louis] groups at the University of Oxford and L. Rovigatti, formerly in the [http://pacci.phys.uniroma1.it/?q=node/40 Sciortino] group in Rome and now in the [http://comp-phys.univie.ac.at/homepages/homepage-likos/likos-group/ Likos] group in Vienna.&lt;br /&gt;
&lt;br /&gt;
The oxDNA and oxRNA models are intended to provide a physical representation of the thermodynamic and mechanical properties of single- and double-stranded DNA and RNA, as well as the transition between the two. At the same time, the representation of DNA and RNA is sufficiently simple to allow access to assembly processes which occur on long timescales, beyond the reach of atomistic simulations. Basic examples include duplex formation from single strands, and the folding of a self-complementary single strand into a hairpin. These are the underlying processes of the fast-growing field of  [http://en.wikipedia.org/wiki/DNA_nanotechnology DNA nanotechnology] and RNA nanotechnology, as well as many biophysical uses of DNA/RNA, allowing the model to be used to understand these fascinating systems.&lt;br /&gt;
&lt;br /&gt;
* [[Download and Installation]]&lt;br /&gt;
&lt;br /&gt;
* [[Features]]&lt;br /&gt;
&lt;br /&gt;
* [[DNA model introduction]]&lt;br /&gt;
&lt;br /&gt;
* [[RNA model introduction]]&lt;br /&gt;
&lt;br /&gt;
* [[Documentation]]&lt;br /&gt;
&lt;br /&gt;
* [[:Category:Examples|Examples]]&lt;br /&gt;
&lt;br /&gt;
* [[Screenshots|Screenshots and movies]]&lt;br /&gt;
&lt;br /&gt;
* [[Gallery of studied systems]]&lt;br /&gt;
&lt;br /&gt;
* [[Publications]]&lt;br /&gt;
&lt;br /&gt;
* [[License and Copyright]]&lt;br /&gt;
&lt;br /&gt;
* [[Previous version]]&lt;br /&gt;
&lt;br /&gt;
* [[Contact information]]&lt;br /&gt;
&lt;br /&gt;
== News ==&lt;br /&gt;
* Code implementing a new version of the oxDNA model, which is called [[DNA_model_introduction#oxDNA2|oxDNA2]], is now included in the latest release. See the recent arXiv publication [http://arxiv.org/abs/1504.00821] for more information about the new model.&lt;br /&gt;
* Follow the latest updates about oxDNA on our twitter account: [https://twitter.com/ox_dna ox_dna]&lt;br /&gt;
* You can post questions about the installation and usage of our code to the newly created [http://sourceforge.net/p/oxdna/discussion/ Discussion forum] for oxDNA at sourceforge.net&lt;br /&gt;
&lt;br /&gt;
== Acknowledgments ==&lt;br /&gt;
&lt;br /&gt;
We thank our co-workers C. Matek, R. Harrison and W. Smith for having contributed bits of code and/or material for the examples and our webmasters Russell Jones and Greg Agacinski for maintaining the website.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=DNA_model_introduction&amp;diff=941</id>
		<title>DNA model introduction</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=DNA_model_introduction&amp;diff=941"/>
		<updated>2015-04-10T12:20:43Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The model treats DNA as a string of rigid nucleotides, which interact through potentials which depend on the position and orientation of the nucleotides. The interactions are:&lt;br /&gt;
#Sugar-phosphate backbone connectivity,&lt;br /&gt;
#Excluded volume,&lt;br /&gt;
#Hydrogen bonding,&lt;br /&gt;
#Nearest-neighbour stacking,&lt;br /&gt;
#Cross-stacking between base-pair steps in a duplex,&lt;br /&gt;
#Coaxial stacking.&lt;br /&gt;
&lt;br /&gt;
This interactions are illustrated below. Orientational modulations of the stacking potential encourage the bases to form coplanar stacks, the twist arising from the different length scales of the backbone separation and the optimum stacking separation. The possibility of unstacking allows single strands to be very flexible. Hydrogen bonding  can occur between complementary bases when they are anti-aligned, leading to the formation of double helical structures.&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/The_model.png&lt;br /&gt;
&lt;br /&gt;
(a) Model interaction sites with their interaction ranges (the typical range of an interaction is twice the radius of the sphere shown).&lt;br /&gt;
&lt;br /&gt;
(b) Representation of these interaction site in a visualisation that makes the planarity of the base clear.&lt;br /&gt;
&lt;br /&gt;
(c) A duplex in this representation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/interactions.png&lt;br /&gt;
&lt;br /&gt;
Indication of the interactions which hold together a typical duplex. V(b.b.) indicates the phosphate-sugar backbone connectivity.&lt;br /&gt;
&lt;br /&gt;
In the original model, all complementary base pairs and stacking partners interact with the same strength (there is no attractive interaction between non-complementary bases). A sequence-dependent parameterisation of the hydrogen-bonding and stacking interactions is included as an option in the code release.&lt;br /&gt;
The melting temperatures of a set of short DNA oligomers in the sequence-dependent coarse-grained model, compared to the melting temperatures as predicted by SantaLucia&#039;s nearest-neighbor model ([http://www.pnas.org/content/95/4/1460.full]), are available here: [http://www-thphys.physics.ox.ac.uk/people/PetrSulc/data/CG_model_Tm.txt]&lt;br /&gt;
&lt;br /&gt;
The original model incorporates electrostatics only through the short-ranged excluded volume. For this reason, it is only appropriate for the study of systems at high salt concentration, when electrostatic interactions are strongly screened. It also does not incorporate the differentiation between the major and minor grooves of DNA double helices. &lt;br /&gt;
&lt;br /&gt;
===oxDNA2===&lt;br /&gt;
&lt;br /&gt;
A new version of the oxDNA model, which is called oxDNA2, has recently been released ([http://arxiv.org/abs/1504.00821]). It introduces different widths for the major and minor DNA double helical grooves, a new electrostatic interaction which allows DNA to be studied at salt concentrations of 0.1M and above, improved large-scale structure prediction, and differentiation between AA and TT stacking strengths.&lt;br /&gt;
&lt;br /&gt;
===Simulation units===&lt;br /&gt;
The code uses units for energy, mass, length and time that are convenient for a typical system. The relationship between simulation units (SU) and SI units is given below.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Simulation unit &lt;br /&gt;
! Physical unit&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of length&lt;br /&gt;
| 8.518x10&amp;lt;math&amp;gt;^{-10}&amp;lt;/math&amp;gt; m&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of energy&lt;br /&gt;
| 4.142x10&amp;lt;math&amp;gt;^{-20}&amp;lt;/math&amp;gt; J&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of temperature      &lt;br /&gt;
| 3000 K&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of force&lt;br /&gt;
| 4.863x10&amp;lt;math&amp;gt;^{-11}&amp;lt;/math&amp;gt; N&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of mass&lt;br /&gt;
| 5.24x10&amp;lt;math&amp;gt;^{-25}&amp;lt;/math&amp;gt; kg&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of time&lt;br /&gt;
| 3.03x10&amp;lt;math&amp;gt;^{-12}&amp;lt;/math&amp;gt; s&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The model and its performance is discussed in detail in the following references (the thesis provides the most complete analysis):&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, D.Phil. Thesis, University of Oxford, 2011.&lt;br /&gt;
[http://ora.ox.ac.uk/objects/uuid:b2415bb2-7975-4f59-b5e2-8c022b4a3719 Coarse-grained modelling of DNA and DNA self-assembly]&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, A. A. Louis and J. P. K. Doye, J. Chem. Phys, 134, 085101 (2011)&lt;br /&gt;
[http://link.aip.org/link/?JCP/134/085101 Structural, mechanical and thermodynamic properties of a coarse-grained DNA model] ([http://arxiv.org/abs/arXiv:1009.4480 arXiv])&lt;br /&gt;
&lt;br /&gt;
P. Šulc, F. Romano, T. E. Ouldridge, L. Rovigatti, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;137&#039;&#039;&#039;, 135101 (2012)&lt;br /&gt;
[http://jcp.aip.org/resource/1/jcpsa6/v137/i13/p135101_s1 Sequence-dependent thermodynamics of a coarse-grained DNA model] ([http://arxiv.org/abs/1207.3391 arxiv])&lt;br /&gt;
&lt;br /&gt;
B. E. K. Snodin, F. Randisi, M. Mosayebi, P. Šulc, J. S. Schreck, F. Romano, T. E. Ouldridge, R. Tsukanov, E. Nir, A. A. Louis, J. P. K. Doye,  &#039;&#039;arxiv&#039;&#039; (2015)&lt;br /&gt;
[http://arxiv.org/abs/1504.00821 Introducing Improved Structural Properties and Salt Dependence into a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/1504.00821 arXiv])&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=940</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=940"/>
		<updated>2015-04-10T12:16:43Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* Generic options */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Compile options==&lt;br /&gt;
&lt;br /&gt;
Compiling oxDNA requires that you have a working &amp;lt;tt&amp;gt;cmake&amp;lt;/tt&amp;gt; software and C++ compiler on your machine. The instructions are provided in the [[Download and Installation]] section.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;oxDNA input_file&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The input file contains all the relevant information for the program to run, such as what initial configuration to use, the topology of the system, how often to print the energies to a file, etc. Please make sure you read the [[Thermostat|thermostat]] page if you use molecular dynamics.&lt;br /&gt;
&lt;br /&gt;
==Input file==&lt;br /&gt;
&lt;br /&gt;
As always in UNIX environments, everything is case sensitive.&lt;br /&gt;
&lt;br /&gt;
*Options are in the form key = value&lt;br /&gt;
*There can be arbitrary spaces before and after both key and value&lt;br /&gt;
*Line with a leading # will be treated as comments&lt;br /&gt;
*The | (pipe) sign is the separator between the different values that can be used to specify a value for the key.&lt;br /&gt;
*Keys between [ and ] are optional, the value after the equal sign is the default value&lt;br /&gt;
&lt;br /&gt;
Here we provide a list of the most commonly used input options. The complete and most up-to-date list of possible options can be found [[Input_options|here]] or in the &amp;lt;tt&amp;gt;README&amp;lt;/tt&amp;gt; file in the main directory of the simulation code.&lt;br /&gt;
&lt;br /&gt;
The input options of the previous oxDNA version can be found [[Input_options_of_the_previous_version|here]].&lt;br /&gt;
&lt;br /&gt;
===Generic options===&lt;br /&gt;
The options listed here define the generic behavior of the entire program.&lt;br /&gt;
;[interaction_type = DNA]: DNA|DNA2|RNA|patchy|LJ&lt;br /&gt;
: (selects the model for the simulation. DNA ([[DNA_model_introduction|oxDNA model]]) is the default option. DNA2 ([[DNA_model_introduction#oxDNA2|oxDNA2 model]]), RNA ([[RNA_model_introduction|oxRNA model]]), LJ (Lennard-Jones) and patchy particles are also implemented&lt;br /&gt;
;[sim_type=MD]: MD|MC|VMMC&lt;br /&gt;
:MD = Molecular Dynamics, MC = Monte Carlo, VMMC = Virtual Move Monte Carlo&lt;br /&gt;
;backend: CPU | CUDA &lt;br /&gt;
: (only sim_type=MD is supported if you choose CUDA backend)&lt;br /&gt;
;backend_precision: float|double|mixed&lt;br /&gt;
: (mixed option is available only for CUDA backend. It is recommended choice for optimal performance on CUDA machines, double is recommended for CPU simulations)&lt;br /&gt;
;[debug=0]: 0|1&lt;br /&gt;
: 1 if you want verbose logs, 0 otherwise.&lt;br /&gt;
&lt;br /&gt;
===Simulation options===&lt;br /&gt;
	The options listed here specify the behaviour of the simulation.&lt;br /&gt;
&lt;br /&gt;
;steps: number of steps to be performed.&lt;br /&gt;
		&lt;br /&gt;
;[restart_step_counter=0]: 0|1&lt;br /&gt;
:0 means that the step counter will start from the value read in the configuration file; if 1, the step counter will be reset to 0. The total duration of the simulation is unchanged.&lt;br /&gt;
			&lt;br /&gt;
;[seed=time(NULL)]: seed for the random number generator. On Unix systems, it will use by default a number from /dev/urandom + time(NULL)&lt;br /&gt;
		&lt;br /&gt;
;T: temperature of the simulation. It can be expressed in simulation units or kelvin (append a k or K after the value) or celsius (append a c or C after the value).&lt;br /&gt;
:Examples:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Value&lt;br /&gt;
! Simulation Units&lt;br /&gt;
|-&lt;br /&gt;
| 0.1&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300 K&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300k&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85c&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85 C &lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
		&lt;br /&gt;
;verlet_skin: if a particle moves more than verlet_skin then the lists will be updated. Its name is somewhat misleading: the actual verlet skin is 2*verlet_skin.&lt;br /&gt;
	&lt;br /&gt;
;[use_average_seq=1]: 0|1&lt;br /&gt;
: specifies whether to use the default hard-coded average parameters for base-pairing and stacking interaction strengths or not. If sequence dependence is to be used, set this to 0 and specify seq_dep_file.&lt;br /&gt;
	&lt;br /&gt;
;[seq_dep_file]: specifies the file from which the sequence dependent parameters should be read. Mandatory if use_average_seq=no, ignored otherwise. A sample file is provided (sequence_dependent_parameters.txt).&lt;br /&gt;
&lt;br /&gt;
;[external_forces=0]: 0|1&lt;br /&gt;
: specifies whether there are external forces acting on the nucleotides or not. If it is set to 1, then a file which specifies the external forces&#039; configuration has to be provided (see external_forces_file).&lt;br /&gt;
&lt;br /&gt;
;[external_forces_file]: specifies the file containing all the external forces&#039; configurations. Currently there are six supported force types (see EXAMPLES/TRAPS for some examples):&lt;br /&gt;
:*string&lt;br /&gt;
:*twist&lt;br /&gt;
:*trap&lt;br /&gt;
:*repulsion_plane&lt;br /&gt;
:*repulsion_plane_moving&lt;br /&gt;
:*mutual_trap&lt;br /&gt;
	&lt;br /&gt;
====Molecular dynamics simulations options====&lt;br /&gt;
&lt;br /&gt;
;dt: time step of the integration.&lt;br /&gt;
&lt;br /&gt;
;thermostat: no|refresh|brownian &lt;br /&gt;
:no means no thermostat will be used. refresh will refresh all the particle&#039;s velocities from a maxwellian every newtonian_steps steps. john is an Anderson-like thermostat (see pt). Make sure you read [[Thermostat|thermostat]].&lt;br /&gt;
&lt;br /&gt;
;newtonian_steps: required if thermostat != no&lt;br /&gt;
:number of steps after which a procedure of thermalization will be performed.&lt;br /&gt;
			&lt;br /&gt;
;pt: used if thermostat == john. It&#039;s the probability that a particle&#039;s velocity will be refreshed during a thermalization procedure.&lt;br /&gt;
		&lt;br /&gt;
;diff_coeff: required if pt is not specified&lt;br /&gt;
:used internally to automatically compute the pt that would be needed if we wanted such a self diffusion coefficient. Not used if pt is set.&lt;br /&gt;
&lt;br /&gt;
====Monte Carlo simulations options====&lt;br /&gt;
	&lt;br /&gt;
;[check_energy_every=10]: this number times print_energy_every gives the number of steps after which the energy will be computed from scratch and checked against the actual value computed adding energy differences.&lt;br /&gt;
		&lt;br /&gt;
;[check_energy_threshold=1e-4]:	if abs((old_energy - new_energy)/old_energy) &amp;gt; check_energy_threshold then the program will die and warn the user.&lt;br /&gt;
	&lt;br /&gt;
;ensemble: NVT&lt;br /&gt;
:ensemble of the simulation. More ensembles could be added in future versions.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement (per dimension) for translational moves in simulation units.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement for rotational moves in simulation units.&lt;br /&gt;
&lt;br /&gt;
===Input/output===&lt;br /&gt;
The options listed here are used to manage the I/O (read and write configurations, energies and so on)&lt;br /&gt;
	&lt;br /&gt;
;conf_file: initial configuration file. &lt;br /&gt;
		&lt;br /&gt;
;topology: file containing the system&#039;s topology.&lt;br /&gt;
		&lt;br /&gt;
;trajectory_file: the main output of the program. All the configurations will be appended to this file as they are printed.&lt;br /&gt;
		&lt;br /&gt;
;[confs_to_skip=0]: valid only if conf_file is a trajectory. Skip the first confs_to_skip configurations and then load in memory the (confs_to_skip+1)th.&lt;br /&gt;
		&lt;br /&gt;
;[lastconf_file=last_conf.dat]: this is the file where the last configuration is saved (when the program finishes or is killed). Set to last_conf.dat by default&lt;br /&gt;
&lt;br /&gt;
;[refresh_vel=0]: 0|1&lt;br /&gt;
:if 1 the initial velocities will be refreshed from a maxwellian.&lt;br /&gt;
	&lt;br /&gt;
;energy_file: energy output file.&lt;br /&gt;
		&lt;br /&gt;
;[print_energy_every=1000]: this will make the program print the energies every print_energy_every steps.&lt;br /&gt;
		&lt;br /&gt;
;[no_stdout_energy=0]: 0|1&lt;br /&gt;
:if 1 the energy will be printed just to the energy_file.&lt;br /&gt;
		&lt;br /&gt;
;[time_scale=linear]: linear|log_lin&lt;br /&gt;
:using linear configurations will be saved every print_conf_interval.&lt;br /&gt;
:using log_lin configurations will be saved logarithmically for print_conf_ppc times. After that the logarithmic sequence will restart.&lt;br /&gt;
	&lt;br /&gt;
;print_conf_interval: linear interval if time_scale == linear. First step of the logarithmic scale if time_scale == log_lin.&lt;br /&gt;
		&lt;br /&gt;
;[print_reduced_conf_every=0]: every print_reduced_conf_every steps the program will print out the reduced configurations (i.e. confs containing only the centers of mass of strands).&lt;br /&gt;
&lt;br /&gt;
;reduced_conf_output_dir: used if print_reduced_conf_every &amp;gt; 0&lt;br /&gt;
:output directory for reduced_conf files.&lt;br /&gt;
		&lt;br /&gt;
;[log_file=stderr]: file where generic and debug informations will be logged. If not specified then stderr will be used.&lt;br /&gt;
&lt;br /&gt;
==Output files==&lt;br /&gt;
*The log file contains all the relevant information about the simulation (specified options, activated external forces, warnings about misconfigurations, critical errors, etc.). If the log file is omitted, all this information will be displayed on the standard output.&lt;br /&gt;
&lt;br /&gt;
*The energy file layout for MD simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| time&lt;br /&gt;
| potential energy&lt;br /&gt;
| kinetic energy&lt;br /&gt;
| total energy&lt;br /&gt;
| hydrogen bonding energy&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:while for MC simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| time&lt;br /&gt;
| potential energy&lt;br /&gt;
| hydrogen bonding energy&lt;br /&gt;
| acceptance ratio for translational moves&lt;br /&gt;
| acceptance ratio for rotational moves&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:N.B. potential, kinetic and total energies are divided by the number of particles whereas the hydrogen bonding energy is not.&lt;br /&gt;
&lt;br /&gt;
*Configurations are saved in the trajectory file.&lt;br /&gt;
&lt;br /&gt;
==Configuration and topology files==&lt;br /&gt;
The current state of a system, as specified by oxDNA, is described by two files: a configuration file and a topology file. The configuration file contains all the general information (timestep, energy and box size) and the orientations and positions of each nucleotide. The topology file, on the other hand, keeps track of the backbone-backbone bonds between nucleotides in the same strand. Working configuration and topology files can be found in the &amp;lt;tt&amp;gt;[[Examples|EXAMPLES]]&amp;lt;/tt&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
===Configuration file===&lt;br /&gt;
The first three rows of a configuration file contain the timestep &amp;lt;tt&amp;gt;T&amp;lt;/tt&amp;gt; at which the configuration has been printed, the length of the box sides &amp;lt;tt&amp;gt;Lx&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;Ly&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Lz&amp;lt;/tt&amp;gt; and the total, potential and kinetic energies, &amp;lt;tt&amp;gt;Etot&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;U&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;K&amp;lt;/tt&amp;gt;, respectively:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
t = T&lt;br /&gt;
b = Lz Ly Lz&lt;br /&gt;
E = Etot U K&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after this header, each row contains position of the centre of mass, orientation, velocity and angular velocity of a single nucleotide in the following order:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\overbrace{r_x r_y r_z}^{\rm Position} \overbrace{b_x b_y b_z}^{\rm Backbone-base versor} \overbrace{n_x n_y n_z}^{\rm Normal versor} \overbrace{v_x v_y v_z}^{\rm Velocity} \overbrace{L_x L_y L_z}^{\rm Angular velocity}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Topology file===&lt;br /&gt;
The topology file stores the intra-strand, fixed bonding topology (i.e. which nucleotides share backbone links). The first row contains the total number of nucleotides &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; and the number of strands &amp;lt;tt&amp;gt;Ns&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
N Ns&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After this header, the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th row specifies strand, base and 3&#039; and 5&#039; neighbors of the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide in this way:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
S B 3&#039; 5&#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where S is the index of the strand (starting from 1) which the nucleotide belongs to, B is the base and 3&#039; and 5&#039; specify the index of the nucleotides with which the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide is bonded in the 3&#039; and 5&#039; direction, respectively. A &amp;lt;tt&amp;gt;-1&amp;lt;/tt&amp;gt; signals that the nucleotide terminates the strand in either 3&#039; or 5&#039; direction. The topology file of a strand of sequence &amp;lt;tt&amp;gt;GCGTTG&amp;lt;/tt&amp;gt; would be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
6 1&lt;br /&gt;
1 G -1 1&lt;br /&gt;
1 C 0 2&lt;br /&gt;
1 G 1 3&lt;br /&gt;
1 T 2 4&lt;br /&gt;
1 T 3 5&lt;br /&gt;
1 G 4 -1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Specifying the topology in this way can simplify the process of simulating, for example, circular DNA.&lt;br /&gt;
&lt;br /&gt;
===Generation of initial configurations===&lt;br /&gt;
In order to generate initial configuration and topology files, we provide the &amp;lt;tt&amp;gt;${oxDNA}/UTILS/generate-sa.py&amp;lt;/tt&amp;gt; script. The usage of the script is&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;generate-sa.py &amp;lt;box side&amp;gt; &amp;lt;file with sequence&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
where &amp;lt;tt&amp;gt;&amp;lt;box side&amp;gt;&amp;lt;/tt&amp;gt; specifies the length of the box side in simulation units and &amp;lt;tt&amp;gt;&amp;lt;file with sequence&amp;gt;&amp;lt;/tt&amp;gt; contains the sequence of the strands to be generated, one row per strand. If double strands are needed, each sequence must be preceded by &amp;lt;tt&amp;gt;DOUBLE&amp;lt;/tt&amp;gt;. For example, a file containing&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DOUBLE AGGGCT&lt;br /&gt;
CCTGTA&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
would generate a double strand with a sequence &amp;lt;tt&amp;gt;AGGGCT&amp;lt;/tt&amp;gt; and a single strand with a sequence &amp;lt;tt&amp;gt;CCTGTA&amp;lt;/tt&amp;gt;. The sequences are given in 3&#039;-5&#039; order.&lt;br /&gt;
&lt;br /&gt;
Positions and orientations of the strands are all chosen at random in such a way that the resulting initial configuration does not contain significant excluded volume interactions between nucleotides belonging to different strands. Generated single- and double-strands have helical conformations (i.e. they are in the minimum of the intra-strand interaction energy).&lt;br /&gt;
&lt;br /&gt;
The output configuration and topology are stored in &amp;lt;tt&amp;gt;generated.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;generated.top&amp;lt;/tt&amp;gt;, respectively. &lt;br /&gt;
Since this script will initialize nucleotides&#039; velocities and angular velocities to 0, when performing a molecular (or Brownian) dynamics simulation remember to put &amp;lt;tt&amp;gt;refresh_vel = 1&amp;lt;/tt&amp;gt; in the [[Documentation#Input_file|input]] file.&lt;br /&gt;
&lt;br /&gt;
==Analysis of configurations==&lt;br /&gt;
The configurations produced by oxDNA can be analysed with the &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; program in &amp;lt;tt&amp;gt;${oxDNA}/UTILS/process_data/&amp;lt;/tt&amp;gt; directory. This program takes as command line arguments the input file (to recover the temperature and topology file), a configuration/trajectory file and an optional number. Since &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; reads analyses a single configuration, the optional number selects the configuration which it needs to analyse in the trajectory. Analysing a whole trajectory can be done by looping over a counter.&lt;br /&gt;
&lt;br /&gt;
Please note that &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; is not compiled automatically. If you never compiled it, do so as described in the [[Download_and_Installation#Installation|installation instructions]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; can be used as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
${oxDNA}/UTILS/process_data/output_bonds &amp;lt;input_file&amp;gt; &amp;lt;trajectory_file&amp;gt; [counter]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The program outputs some debugging information to the standard error and information regarding the interaction energies to the standard output. The contributions arising from each of the terms in the potential (see the appendix of [[Publications|Ref. 2]]) are reported for each pair of nucleotides that have non-zero total interactions.&lt;br /&gt;
&lt;br /&gt;
This output can be easily parsed to analyse the configurations.&lt;br /&gt;
&lt;br /&gt;
For each pair of nucleotides that do interact in the configuration, the program prints out a line containing:&lt;br /&gt;
* The id of the two particles (starting from 0)&lt;br /&gt;
* The total interaction energy&lt;br /&gt;
* The hydrogen bonding (base pairing) energy&lt;br /&gt;
* The stacking energy&lt;br /&gt;
* The cross stacking energy&lt;br /&gt;
* The excluded volume energy&lt;br /&gt;
* The FENE interaction energy&lt;br /&gt;
* A letter indicating a status code. This will be &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; for pairs that interact through bonded interactions (i.e. they are neighbors along a strand) and it will be &amp;lt;tt&amp;gt;H&amp;lt;/tt&amp;gt; when a base pair is present. Our definition of base pair is when two nucleotides have a hydrogen bonding energy less than 0.1 in simulation units (see [[Publications|Ref. 2]]).&lt;br /&gt;
&lt;br /&gt;
===Geometry of the Model===&lt;br /&gt;
In the configuration/trajectory files only the positions and orientations of the nucleotides are stored. If one wants to recover the positions of the individual interaction sites in the model, some maths need to be done.&lt;br /&gt;
&lt;br /&gt;
The position of the base, stacking and backbone sites can be recovered as follows:&lt;br /&gt;
&lt;br /&gt;
base site:     (center) + 0.40 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
stacking site: (center) + 0.34 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
backbone site: (center) - 0.40 * (axis_vector)&lt;br /&gt;
&lt;br /&gt;
The picture in the [[Model_introduction|introduction]] might help understanding where the sites are.&lt;br /&gt;
&lt;br /&gt;
==External Forces==&lt;br /&gt;
The code implements several types of external forces that can be imposed on the system that can be used either to simulate tension exerted on DNA or simply to accelerate the formation of secondary or tertiary structure. External forces can be tricky to treat, especially in a dynamics simulation, since they are an external source of work. Care should be taken in adjusting the time step, thermostat parameters and such.&lt;br /&gt;
&lt;br /&gt;
To enable external forces, one needs to specify &amp;lt;tt&amp;gt;external_forces = 1&amp;lt;/tt&amp;gt; in the input file and also supply an external force file to read from with the key &amp;lt;tt&amp;gt;external_forces_file = &amp;lt;file&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The syntax of the external forces file is quite simple. Examples of such files can be found in the [[Hairpin_formation|hairpin formation]] and [[Pseudoknot|Pseudoknot formation]] examples. Each force is specified within a block contained in curly brackets. Empty lines and lines beginning with an hash symbol (&amp;lt;tt&amp;gt;#&amp;lt;/tt&amp;gt;) are ignored. Different forces require different keys to be present. If the file has the wrong syntax, oxDNA should spit out a sensible error message while parsing the file.&lt;br /&gt;
&lt;br /&gt;
The different types of forces implemented at the moment are:&lt;br /&gt;
* harmonic trap&lt;br /&gt;
* string &lt;br /&gt;
* repulsion plane&lt;br /&gt;
* mutual trap&lt;br /&gt;
&lt;br /&gt;
All forces act on the centre of the particle.&lt;br /&gt;
&lt;br /&gt;
Forces of different kinds can be combined in the same simulation. There is a maximum number of 10 external forces per particle for memory reasons. This can be manually overridden recompiling the code with a different value of the macro &amp;lt;tt&amp;gt;MAX_EXT_FORCES&amp;lt;/tt&amp;gt; (currently 10) in &amp;lt;tt&amp;gt;defs.h&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===String===&lt;br /&gt;
A string is implemented as a force that does not depend on the particle position. Its value can be constant or can change linearly with time. It is useful as it does not fluctuate with time.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = string&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;F0&#039;&#039;&#039; (float) the value of the force at time = 0 in simulation units (please note that the value of the time may or may not be reset when starting a simulation, depending on the input file)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) growing rate of the force (simulation units/time steps). Typical values are very small (&amp;lt; 10^(-5))&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of the force (automatically normalised by the code)&lt;br /&gt;
&lt;br /&gt;
The following bit of code will create an external force on the first nucleotide in the system starting at 1 simulation units (48.6 pN) and growing linearly with time at the rate of 48.6pN every million time steps. The force will pull the nucleotide along the &amp;lt;tt&amp;gt;z&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = string&lt;br /&gt;
particle = 0&lt;br /&gt;
F0 = 1.&lt;br /&gt;
rate = 1e-6&lt;br /&gt;
dir = 0., 0., 1.&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Harmonic trap===&lt;br /&gt;
This type of force implements an harmonic trap, of arbitrary stiffness, that can move linearly with time. It can be useful to fix the position of the nucleotides to simulate attachment to something or to implement (quasi) constant extension simulations.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;pos0&#039;&#039;&#039; (3 floats separated by commas) rest position of the trap&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * dx)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) speed of the trap (length simulation units/time steps)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of movement of the trap&lt;br /&gt;
&lt;br /&gt;
Here is an example input for a harmonic trap acting on the third nucleotide constraining it to stay close to the origin. In this example the trap does not move (&amp;lt;tt&amp;gt;rate=0&amp;lt;/tt&amp;gt;), but one could have it move at a constant speed along the direction specified by &amp;lt;tt&amp;gt;dir&amp;lt;/tt&amp;gt;, in this case the &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = trap&lt;br /&gt;
particle = 2&lt;br /&gt;
pos0 = 0., 0., 0.&lt;br /&gt;
stiff = 1.0&lt;br /&gt;
rate = 0.&lt;br /&gt;
dir = 1.,0.,0.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note that the trap does not comply with periodic boundary conditions. This is most likely what you want.&lt;br /&gt;
&lt;br /&gt;
===Repulsion plane===&lt;br /&gt;
This kind of external force implements a repulsion plane that constrains a particle (or the whole system) to stay on one side of it. It is implemented as a harmonic repulsion, but the stiffness can be made arbitrarily high to mimic a hard repulsion.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = repulsion_plane&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force. If set to the special value -1, the force will be exerted on all particles.&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * D, where D is distance from the plane. The force is exerted only if the nucleotide is below the plane)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) a direction normal to the plane&lt;br /&gt;
* &#039;&#039;&#039;position&#039;&#039;&#039; (1 float number) specifies the position of the plane&lt;br /&gt;
&lt;br /&gt;
If direction is &amp;lt;tt&amp;gt; direction =  u,v,w &amp;lt;/tt&amp;gt; , then the plane contains all the points (x,y,z) that satisfy the equation: u*x + v*y + w*z + position = 0.&lt;br /&gt;
Only nucleotides  with coordinates (x,y,z) that satisfy u*x + v*y + w*z + position &amp;lt; 0 will feel the force.&lt;br /&gt;
The force exerted on a nucleotide is equal to stiff * D, where D is the distance of the nucleotide from the plane, where &amp;lt;math&amp;gt; D = | ux + vy + wz + \mbox{position}| / \sqrt{u^2 + v^2 + w^2 }.&amp;lt;/math&amp;gt;&lt;br /&gt;
For nucleotides for which u*x + v*y + w*z + position &amp;gt;= 0, no force will be exerted.&lt;br /&gt;
&lt;br /&gt;
Here is an example. This plane acts on the whole system and will not exert any force on nucleotides with a positive &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate. A force proportional to 48.6 pN * (&amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate) will be exerted on all particles . &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = repulsion_plane&lt;br /&gt;
#whole system&lt;br /&gt;
particle = -1&lt;br /&gt;
stiff = 1. #48.6 pN /(simulation length unit)  &lt;br /&gt;
dir = 1, 0, 0&lt;br /&gt;
position = 0&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If in the above example you would specify position = 3, then the force would be exerted on all nucleotides with coordinate x &amp;gt; -3.&lt;br /&gt;
&lt;br /&gt;
===Mutual trap===&lt;br /&gt;
This force is useful to form initial configurations. It is a harmonic force that at every moment pulls a particle towards a reference particle. It is possible to specify the separation at which the force will be 0.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = mutual_trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force.&lt;br /&gt;
* &#039;&#039;&#039;ref_particle&#039;&#039;&#039; (int) particle to pull towards. Please note that this particle will not feel any force (the name mutual trap is thus misleading).&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap&lt;br /&gt;
* &#039;&#039;&#039;r0&#039;&#039;&#039; (float) equilibrium distance of the trap.&lt;br /&gt;
&lt;br /&gt;
Here is an example, extracted from the [[Pseudoknot|pseudoknot formation example]]. This will pull particle 14 towards particle 39, favouring an equilibrium distance of 1.4 (which corresponds roughly to the minimum of the hydrogen bonding potential, not a coincidence). The same force with opposite sign is exerted on particle 39 through a separate force. It is not necessary to have both particles feel the force, but it usually works much better.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 14&lt;br /&gt;
ref_particle = 39&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 39&lt;br /&gt;
ref_particle = 14&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visualisation of structures==&lt;br /&gt;
oxDNA produces a trajectory file where all the relevant information is&lt;br /&gt;
stored. A converter is provided (&amp;lt;tt&amp;gt;traj2vis.py&amp;lt;/tt&amp;gt;) in the&lt;br /&gt;
&amp;lt;tt&amp;gt;UTILS&amp;lt;/tt&amp;gt; directory that is able to produce files in the &amp;lt;tt&amp;gt;xyz&amp;lt;/tt&amp;gt;&lt;br /&gt;
and &amp;lt;tt&amp;gt;pdb&amp;lt;/tt&amp;gt; formats. The same program can be used on a configuration&lt;br /&gt;
file and it will produce a snapshot.&lt;br /&gt;
&lt;br /&gt;
Since the model is coarse-grained, we have to &amp;quot;trick&amp;quot; the visualisers into&lt;br /&gt;
thinking that the interaction sites in the model are actually atoms.&lt;br /&gt;
Advanced nucleic acids representations such as ribbons will not work on the&lt;br /&gt;
outputs.&lt;br /&gt;
&lt;br /&gt;
All the images in the [[Screenshots]] page were produced with the pdb representation using UCSF chimera (see later on).&lt;br /&gt;
&lt;br /&gt;
===xyz format===&lt;br /&gt;
&lt;br /&gt;
just run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2vis.py xyz &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(where &amp;lt;tt&amp;gt;$oxDNA&amp;lt;/tt&amp;gt; is the oxDNA source directory) to get the xyz representation in a file called the same as the trajectory&lt;br /&gt;
file with &amp;lt;tt&amp;gt;.xyz&amp;lt;/tt&amp;gt; appended. Please note that boundary conditions are&lt;br /&gt;
implemented strand-wise, so strands that are bound might appear at two&lt;br /&gt;
different sizes of the box. Also, the center of mass of the system (where&lt;br /&gt;
each strand is weighted the same regardless of the length) is set to 0 at&lt;br /&gt;
each frame. Carbons represent the backbone sites and oxygens the base sites.&lt;br /&gt;
&lt;br /&gt;
The resulting file can be read with a variety of programs. Here we will&lt;br /&gt;
explain how to visualise it sensibly in [http://www.ks.uiuc.edu/Research/vmd/ VMD].&lt;br /&gt;
&lt;br /&gt;
* Run VMD and load the xyz file.&lt;br /&gt;
* In the graphics menu, go to Representations.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name C&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.8 and Bond Radius 0.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name O&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.6 and Bond Radius 0.&lt;br /&gt;
&lt;br /&gt;
This should produce a ball representation of our model DNA. Bonds&lt;br /&gt;
automatically produced by VMD are NOT meaningful in our context.&lt;br /&gt;
&lt;br /&gt;
===pdb format===&lt;br /&gt;
Run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2chimera.py &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
to produce a trajectory/configuration in the pdb format. A further file&lt;br /&gt;
called &amp;lt;tt&amp;gt;chimera.com&amp;lt;/tt&amp;gt; will be produced (more on this later). All&lt;br /&gt;
comments above about periodic boundaries and centre of mass apply here as&lt;br /&gt;
well.&lt;br /&gt;
&lt;br /&gt;
The pdb file can be visualised in VMD just like the xyz format, but a nicer&lt;br /&gt;
output can be produced with [http://www.cgl.ucsf.edu/chimera/ UCSF Chimera] (although only for snapshots at&lt;br /&gt;
the moment) as follows:&lt;br /&gt;
&lt;br /&gt;
Run chimera and load the pdb file. An ugly output will be displayed.&lt;br /&gt;
&lt;br /&gt;
Bring up the command line under the &amp;lt;tt&amp;gt;Tools → General Controls&amp;lt;/tt&amp;gt; menu.&lt;br /&gt;
Input &amp;lt;tt&amp;gt;read chimera.com&amp;lt;/tt&amp;gt; in the command line and press enter. You&lt;br /&gt;
should get a nicer visualisation with different bases in different colors,&lt;br /&gt;
all the covalent bonds in the right place, etc.&lt;br /&gt;
&lt;br /&gt;
On large configurations, the production of ellipsoids will be extremely&lt;br /&gt;
slow. You can remove it by removing the line&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;aniso scale 0.75 smoothing 4&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
from the commands file. Loading the resulting file should be much faster.&lt;br /&gt;
&lt;br /&gt;
UCSF chimera can in turn export the scene in a variety of formats.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=DNA_model_introduction&amp;diff=939</id>
		<title>DNA model introduction</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=DNA_model_introduction&amp;diff=939"/>
		<updated>2015-04-10T12:14:22Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The model treats DNA as a string of rigid nucleotides, which interact through potentials which depend on the position and orientation of the nucleotides. The interactions are:&lt;br /&gt;
#Sugar-phosphate backbone connectivity,&lt;br /&gt;
#Excluded volume,&lt;br /&gt;
#Hydrogen bonding,&lt;br /&gt;
#Nearest-neighbour stacking,&lt;br /&gt;
#Cross-stacking between base-pair steps in a duplex,&lt;br /&gt;
#Coaxial stacking.&lt;br /&gt;
&lt;br /&gt;
This interactions are illustrated below. Orientational modulations of the stacking potential encourage the bases to form coplanar stacks, the twist arising from the different length scales of the backbone separation and the optimum stacking separation. The possibility of unstacking allows single strands to be very flexible. Hydrogen bonding  can occur between complementary bases when they are anti-aligned, leading to the formation of double helical structures.&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/The_model.png&lt;br /&gt;
&lt;br /&gt;
(a) Model interaction sites with their interaction ranges (the typical range of an interaction is twice the radius of the sphere shown).&lt;br /&gt;
&lt;br /&gt;
(b) Representation of these interaction site in a visualisation that makes the planarity of the base clear.&lt;br /&gt;
&lt;br /&gt;
(c) A duplex in this representation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/interactions.png&lt;br /&gt;
&lt;br /&gt;
Indication of the interactions which hold together a typical duplex. V(b.b.) indicates the phosphate-sugar backbone connectivity.&lt;br /&gt;
&lt;br /&gt;
In the original model, all complementary base pairs and stacking partners interact with the same strength (there is no attractive interaction between non-complementary bases). A sequence-dependent parameterisation of the hydrogen-bonding and stacking interactions is included as an option in the code release.&lt;br /&gt;
The melting temperatures of a set of short DNA oligomers in the sequence-dependent coarse-grained model, compared to the melting temperatures as predicted by SantaLucia&#039;s nearest-neighbor model ([http://www.pnas.org/content/95/4/1460.full]), are available here: [http://www-thphys.physics.ox.ac.uk/people/PetrSulc/data/CG_model_Tm.txt]&lt;br /&gt;
&lt;br /&gt;
The original model incorporates electrostatics only through the short-ranged excluded volume. For this reason, it is only appropriate for the study of systems at high salt concentration, when electrostatic interactions are strongly screened. It also does not incorporate the differentiation between the major and minor grooves of DNA double helices. &lt;br /&gt;
&lt;br /&gt;
===oxDNA2===&lt;br /&gt;
&lt;br /&gt;
A new version of the oxDNA model, oxDNA2, has recently been released ([http://arxiv.org/abs/1504.00821]). It introduces different widths for the major and minor DNA double helical grooves, a new electrostatic interaction which allows DNA to be studied at salt concentrations of 0.1M and above, improved large-scale structure prediction, and differentiation between AA and TT stacking strengths.&lt;br /&gt;
&lt;br /&gt;
===Simulation units===&lt;br /&gt;
The code uses units for energy, mass, length and time that are convenient for a typical system. The relationship between simulation units (SU) and SI units is given below.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Simulation unit &lt;br /&gt;
! Physical unit&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of length&lt;br /&gt;
| 8.518x10&amp;lt;math&amp;gt;^{-10}&amp;lt;/math&amp;gt; m&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of energy&lt;br /&gt;
| 4.142x10&amp;lt;math&amp;gt;^{-20}&amp;lt;/math&amp;gt; J&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of temperature      &lt;br /&gt;
| 3000 K&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of force&lt;br /&gt;
| 4.863x10&amp;lt;math&amp;gt;^{-11}&amp;lt;/math&amp;gt; N&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of mass&lt;br /&gt;
| 5.24x10&amp;lt;math&amp;gt;^{-25}&amp;lt;/math&amp;gt; kg&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of time&lt;br /&gt;
| 3.03x10&amp;lt;math&amp;gt;^{-12}&amp;lt;/math&amp;gt; s&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The model and its performance is discussed in detail in the following references (the thesis provides the most complete analysis):&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, D.Phil. Thesis, University of Oxford, 2011.&lt;br /&gt;
[http://ora.ox.ac.uk/objects/uuid:b2415bb2-7975-4f59-b5e2-8c022b4a3719 Coarse-grained modelling of DNA and DNA self-assembly]&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, A. A. Louis and J. P. K. Doye, J. Chem. Phys, 134, 085101 (2011)&lt;br /&gt;
[http://link.aip.org/link/?JCP/134/085101 Structural, mechanical and thermodynamic properties of a coarse-grained DNA model] ([http://arxiv.org/abs/arXiv:1009.4480 arXiv])&lt;br /&gt;
&lt;br /&gt;
P. Šulc, F. Romano, T. E. Ouldridge, L. Rovigatti, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;137&#039;&#039;&#039;, 135101 (2012)&lt;br /&gt;
[http://jcp.aip.org/resource/1/jcpsa6/v137/i13/p135101_s1 Sequence-dependent thermodynamics of a coarse-grained DNA model] ([http://arxiv.org/abs/1207.3391 arxiv])&lt;br /&gt;
&lt;br /&gt;
B. E. K. Snodin, F. Randisi, M. Mosayebi, P. Šulc, J. S. Schreck, F. Romano, T. E. Ouldridge, R. Tsukanov, E. Nir, A. A. Louis, J. P. K. Doye,  &#039;&#039;arxiv&#039;&#039; (2015)&lt;br /&gt;
[http://arxiv.org/abs/1504.00821 Introducing Improved Structural Properties and Salt Dependence into a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/1504.00821 arXiv])&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=938</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=938"/>
		<updated>2015-04-10T11:50:10Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* Generic options */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Compile options==&lt;br /&gt;
&lt;br /&gt;
Compiling oxDNA requires that you have a working &amp;lt;tt&amp;gt;cmake&amp;lt;/tt&amp;gt; software and C++ compiler on your machine. The instructions are provided in the [[Download and Installation]] section.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;oxDNA input_file&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The input file contains all the relevant information for the program to run, such as what initial configuration to use, the topology of the system, how often to print the energies to a file, etc. Please make sure you read the [[Thermostat|thermostat]] page if you use molecular dynamics.&lt;br /&gt;
&lt;br /&gt;
==Input file==&lt;br /&gt;
&lt;br /&gt;
As always in UNIX environments, everything is case sensitive.&lt;br /&gt;
&lt;br /&gt;
*Options are in the form key = value&lt;br /&gt;
*There can be arbitrary spaces before and after both key and value&lt;br /&gt;
*Line with a leading # will be treated as comments&lt;br /&gt;
*The | (pipe) sign is the separator between the different values that can be used to specify a value for the key.&lt;br /&gt;
*Keys between [ and ] are optional, the value after the equal sign is the default value&lt;br /&gt;
&lt;br /&gt;
Here we provide a list of the most commonly used input options. The complete and most up-to-date list of possible options can be found [[Input_options|here]] or in the &amp;lt;tt&amp;gt;README&amp;lt;/tt&amp;gt; file in the main directory of the simulation code.&lt;br /&gt;
&lt;br /&gt;
The input options of the previous oxDNA version can be found [[Input_options_of_the_previous_version|here]].&lt;br /&gt;
&lt;br /&gt;
===Generic options===&lt;br /&gt;
The options listed here define the generic behavior of the entire program.&lt;br /&gt;
;[interaction_type = DNA]: DNA|DNA2|RNA|patchy|LJ&lt;br /&gt;
: (selects the model for the simulation. DNA ([[DNA_model_introduction|oxDNA model]]) is the default option. DNA2 (oxDNA2 model), RNA ([[RNA_model_introduction|oxRNA model]]), LJ (Lennard-Jones) and patchy particles are also implemented&lt;br /&gt;
;[sim_type=MD]: MD|MC|VMMC&lt;br /&gt;
:MD = Molecular Dynamics, MC = Monte Carlo, VMMC = Virtual Move Monte Carlo&lt;br /&gt;
;backend: CPU | CUDA &lt;br /&gt;
: (only sim_type=MD is supported if you choose CUDA backend)&lt;br /&gt;
;backend_precision: float|double|mixed&lt;br /&gt;
: (mixed option is available only for CUDA backend. It is recommended choice for optimal performance on CUDA machines, double is recommended for CPU simulations)&lt;br /&gt;
;[debug=0]: 0|1&lt;br /&gt;
: 1 if you want verbose logs, 0 otherwise.&lt;br /&gt;
&lt;br /&gt;
===Simulation options===&lt;br /&gt;
	The options listed here specify the behaviour of the simulation.&lt;br /&gt;
&lt;br /&gt;
;steps: number of steps to be performed.&lt;br /&gt;
		&lt;br /&gt;
;[restart_step_counter=0]: 0|1&lt;br /&gt;
:0 means that the step counter will start from the value read in the configuration file; if 1, the step counter will be reset to 0. The total duration of the simulation is unchanged.&lt;br /&gt;
			&lt;br /&gt;
;[seed=time(NULL)]: seed for the random number generator. On Unix systems, it will use by default a number from /dev/urandom + time(NULL)&lt;br /&gt;
		&lt;br /&gt;
;T: temperature of the simulation. It can be expressed in simulation units or kelvin (append a k or K after the value) or celsius (append a c or C after the value).&lt;br /&gt;
:Examples:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Value&lt;br /&gt;
! Simulation Units&lt;br /&gt;
|-&lt;br /&gt;
| 0.1&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300 K&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300k&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85c&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85 C &lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
		&lt;br /&gt;
;verlet_skin: if a particle moves more than verlet_skin then the lists will be updated. Its name is somewhat misleading: the actual verlet skin is 2*verlet_skin.&lt;br /&gt;
	&lt;br /&gt;
;[use_average_seq=1]: 0|1&lt;br /&gt;
: specifies whether to use the default hard-coded average parameters for base-pairing and stacking interaction strengths or not. If sequence dependence is to be used, set this to 0 and specify seq_dep_file.&lt;br /&gt;
	&lt;br /&gt;
;[seq_dep_file]: specifies the file from which the sequence dependent parameters should be read. Mandatory if use_average_seq=no, ignored otherwise. A sample file is provided (sequence_dependent_parameters.txt).&lt;br /&gt;
&lt;br /&gt;
;[external_forces=0]: 0|1&lt;br /&gt;
: specifies whether there are external forces acting on the nucleotides or not. If it is set to 1, then a file which specifies the external forces&#039; configuration has to be provided (see external_forces_file).&lt;br /&gt;
&lt;br /&gt;
;[external_forces_file]: specifies the file containing all the external forces&#039; configurations. Currently there are six supported force types (see EXAMPLES/TRAPS for some examples):&lt;br /&gt;
:*string&lt;br /&gt;
:*twist&lt;br /&gt;
:*trap&lt;br /&gt;
:*repulsion_plane&lt;br /&gt;
:*repulsion_plane_moving&lt;br /&gt;
:*mutual_trap&lt;br /&gt;
	&lt;br /&gt;
====Molecular dynamics simulations options====&lt;br /&gt;
&lt;br /&gt;
;dt: time step of the integration.&lt;br /&gt;
&lt;br /&gt;
;thermostat: no|refresh|brownian &lt;br /&gt;
:no means no thermostat will be used. refresh will refresh all the particle&#039;s velocities from a maxwellian every newtonian_steps steps. john is an Anderson-like thermostat (see pt). Make sure you read [[Thermostat|thermostat]].&lt;br /&gt;
&lt;br /&gt;
;newtonian_steps: required if thermostat != no&lt;br /&gt;
:number of steps after which a procedure of thermalization will be performed.&lt;br /&gt;
			&lt;br /&gt;
;pt: used if thermostat == john. It&#039;s the probability that a particle&#039;s velocity will be refreshed during a thermalization procedure.&lt;br /&gt;
		&lt;br /&gt;
;diff_coeff: required if pt is not specified&lt;br /&gt;
:used internally to automatically compute the pt that would be needed if we wanted such a self diffusion coefficient. Not used if pt is set.&lt;br /&gt;
&lt;br /&gt;
====Monte Carlo simulations options====&lt;br /&gt;
	&lt;br /&gt;
;[check_energy_every=10]: this number times print_energy_every gives the number of steps after which the energy will be computed from scratch and checked against the actual value computed adding energy differences.&lt;br /&gt;
		&lt;br /&gt;
;[check_energy_threshold=1e-4]:	if abs((old_energy - new_energy)/old_energy) &amp;gt; check_energy_threshold then the program will die and warn the user.&lt;br /&gt;
	&lt;br /&gt;
;ensemble: NVT&lt;br /&gt;
:ensemble of the simulation. More ensembles could be added in future versions.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement (per dimension) for translational moves in simulation units.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement for rotational moves in simulation units.&lt;br /&gt;
&lt;br /&gt;
===Input/output===&lt;br /&gt;
The options listed here are used to manage the I/O (read and write configurations, energies and so on)&lt;br /&gt;
	&lt;br /&gt;
;conf_file: initial configuration file. &lt;br /&gt;
		&lt;br /&gt;
;topology: file containing the system&#039;s topology.&lt;br /&gt;
		&lt;br /&gt;
;trajectory_file: the main output of the program. All the configurations will be appended to this file as they are printed.&lt;br /&gt;
		&lt;br /&gt;
;[confs_to_skip=0]: valid only if conf_file is a trajectory. Skip the first confs_to_skip configurations and then load in memory the (confs_to_skip+1)th.&lt;br /&gt;
		&lt;br /&gt;
;[lastconf_file=last_conf.dat]: this is the file where the last configuration is saved (when the program finishes or is killed). Set to last_conf.dat by default&lt;br /&gt;
&lt;br /&gt;
;[refresh_vel=0]: 0|1&lt;br /&gt;
:if 1 the initial velocities will be refreshed from a maxwellian.&lt;br /&gt;
	&lt;br /&gt;
;energy_file: energy output file.&lt;br /&gt;
		&lt;br /&gt;
;[print_energy_every=1000]: this will make the program print the energies every print_energy_every steps.&lt;br /&gt;
		&lt;br /&gt;
;[no_stdout_energy=0]: 0|1&lt;br /&gt;
:if 1 the energy will be printed just to the energy_file.&lt;br /&gt;
		&lt;br /&gt;
;[time_scale=linear]: linear|log_lin&lt;br /&gt;
:using linear configurations will be saved every print_conf_interval.&lt;br /&gt;
:using log_lin configurations will be saved logarithmically for print_conf_ppc times. After that the logarithmic sequence will restart.&lt;br /&gt;
	&lt;br /&gt;
;print_conf_interval: linear interval if time_scale == linear. First step of the logarithmic scale if time_scale == log_lin.&lt;br /&gt;
		&lt;br /&gt;
;[print_reduced_conf_every=0]: every print_reduced_conf_every steps the program will print out the reduced configurations (i.e. confs containing only the centers of mass of strands).&lt;br /&gt;
&lt;br /&gt;
;reduced_conf_output_dir: used if print_reduced_conf_every &amp;gt; 0&lt;br /&gt;
:output directory for reduced_conf files.&lt;br /&gt;
		&lt;br /&gt;
;[log_file=stderr]: file where generic and debug informations will be logged. If not specified then stderr will be used.&lt;br /&gt;
&lt;br /&gt;
==Output files==&lt;br /&gt;
*The log file contains all the relevant information about the simulation (specified options, activated external forces, warnings about misconfigurations, critical errors, etc.). If the log file is omitted, all this information will be displayed on the standard output.&lt;br /&gt;
&lt;br /&gt;
*The energy file layout for MD simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| time&lt;br /&gt;
| potential energy&lt;br /&gt;
| kinetic energy&lt;br /&gt;
| total energy&lt;br /&gt;
| hydrogen bonding energy&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:while for MC simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| time&lt;br /&gt;
| potential energy&lt;br /&gt;
| hydrogen bonding energy&lt;br /&gt;
| acceptance ratio for translational moves&lt;br /&gt;
| acceptance ratio for rotational moves&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:N.B. potential, kinetic and total energies are divided by the number of particles whereas the hydrogen bonding energy is not.&lt;br /&gt;
&lt;br /&gt;
*Configurations are saved in the trajectory file.&lt;br /&gt;
&lt;br /&gt;
==Configuration and topology files==&lt;br /&gt;
The current state of a system, as specified by oxDNA, is described by two files: a configuration file and a topology file. The configuration file contains all the general information (timestep, energy and box size) and the orientations and positions of each nucleotide. The topology file, on the other hand, keeps track of the backbone-backbone bonds between nucleotides in the same strand. Working configuration and topology files can be found in the &amp;lt;tt&amp;gt;[[Examples|EXAMPLES]]&amp;lt;/tt&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
===Configuration file===&lt;br /&gt;
The first three rows of a configuration file contain the timestep &amp;lt;tt&amp;gt;T&amp;lt;/tt&amp;gt; at which the configuration has been printed, the length of the box sides &amp;lt;tt&amp;gt;Lx&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;Ly&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Lz&amp;lt;/tt&amp;gt; and the total, potential and kinetic energies, &amp;lt;tt&amp;gt;Etot&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;U&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;K&amp;lt;/tt&amp;gt;, respectively:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
t = T&lt;br /&gt;
b = Lz Ly Lz&lt;br /&gt;
E = Etot U K&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after this header, each row contains position of the centre of mass, orientation, velocity and angular velocity of a single nucleotide in the following order:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\overbrace{r_x r_y r_z}^{\rm Position} \overbrace{b_x b_y b_z}^{\rm Backbone-base versor} \overbrace{n_x n_y n_z}^{\rm Normal versor} \overbrace{v_x v_y v_z}^{\rm Velocity} \overbrace{L_x L_y L_z}^{\rm Angular velocity}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Topology file===&lt;br /&gt;
The topology file stores the intra-strand, fixed bonding topology (i.e. which nucleotides share backbone links). The first row contains the total number of nucleotides &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; and the number of strands &amp;lt;tt&amp;gt;Ns&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
N Ns&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After this header, the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th row specifies strand, base and 3&#039; and 5&#039; neighbors of the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide in this way:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
S B 3&#039; 5&#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where S is the index of the strand (starting from 1) which the nucleotide belongs to, B is the base and 3&#039; and 5&#039; specify the index of the nucleotides with which the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide is bonded in the 3&#039; and 5&#039; direction, respectively. A &amp;lt;tt&amp;gt;-1&amp;lt;/tt&amp;gt; signals that the nucleotide terminates the strand in either 3&#039; or 5&#039; direction. The topology file of a strand of sequence &amp;lt;tt&amp;gt;GCGTTG&amp;lt;/tt&amp;gt; would be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
6 1&lt;br /&gt;
1 G -1 1&lt;br /&gt;
1 C 0 2&lt;br /&gt;
1 G 1 3&lt;br /&gt;
1 T 2 4&lt;br /&gt;
1 T 3 5&lt;br /&gt;
1 G 4 -1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Specifying the topology in this way can simplify the process of simulating, for example, circular DNA.&lt;br /&gt;
&lt;br /&gt;
===Generation of initial configurations===&lt;br /&gt;
In order to generate initial configuration and topology files, we provide the &amp;lt;tt&amp;gt;${oxDNA}/UTILS/generate-sa.py&amp;lt;/tt&amp;gt; script. The usage of the script is&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;generate-sa.py &amp;lt;box side&amp;gt; &amp;lt;file with sequence&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
where &amp;lt;tt&amp;gt;&amp;lt;box side&amp;gt;&amp;lt;/tt&amp;gt; specifies the length of the box side in simulation units and &amp;lt;tt&amp;gt;&amp;lt;file with sequence&amp;gt;&amp;lt;/tt&amp;gt; contains the sequence of the strands to be generated, one row per strand. If double strands are needed, each sequence must be preceded by &amp;lt;tt&amp;gt;DOUBLE&amp;lt;/tt&amp;gt;. For example, a file containing&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DOUBLE AGGGCT&lt;br /&gt;
CCTGTA&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
would generate a double strand with a sequence &amp;lt;tt&amp;gt;AGGGCT&amp;lt;/tt&amp;gt; and a single strand with a sequence &amp;lt;tt&amp;gt;CCTGTA&amp;lt;/tt&amp;gt;. The sequences are given in 3&#039;-5&#039; order.&lt;br /&gt;
&lt;br /&gt;
Positions and orientations of the strands are all chosen at random in such a way that the resulting initial configuration does not contain significant excluded volume interactions between nucleotides belonging to different strands. Generated single- and double-strands have helical conformations (i.e. they are in the minimum of the intra-strand interaction energy).&lt;br /&gt;
&lt;br /&gt;
The output configuration and topology are stored in &amp;lt;tt&amp;gt;generated.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;generated.top&amp;lt;/tt&amp;gt;, respectively. &lt;br /&gt;
Since this script will initialize nucleotides&#039; velocities and angular velocities to 0, when performing a molecular (or Brownian) dynamics simulation remember to put &amp;lt;tt&amp;gt;refresh_vel = 1&amp;lt;/tt&amp;gt; in the [[Documentation#Input_file|input]] file.&lt;br /&gt;
&lt;br /&gt;
==Analysis of configurations==&lt;br /&gt;
The configurations produced by oxDNA can be analysed with the &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; program in &amp;lt;tt&amp;gt;${oxDNA}/UTILS/process_data/&amp;lt;/tt&amp;gt; directory. This program takes as command line arguments the input file (to recover the temperature and topology file), a configuration/trajectory file and an optional number. Since &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; reads analyses a single configuration, the optional number selects the configuration which it needs to analyse in the trajectory. Analysing a whole trajectory can be done by looping over a counter.&lt;br /&gt;
&lt;br /&gt;
Please note that &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; is not compiled automatically. If you never compiled it, do so as described in the [[Download_and_Installation#Installation|installation instructions]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; can be used as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
${oxDNA}/UTILS/process_data/output_bonds &amp;lt;input_file&amp;gt; &amp;lt;trajectory_file&amp;gt; [counter]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The program outputs some debugging information to the standard error and information regarding the interaction energies to the standard output. The contributions arising from each of the terms in the potential (see the appendix of [[Publications|Ref. 2]]) are reported for each pair of nucleotides that have non-zero total interactions.&lt;br /&gt;
&lt;br /&gt;
This output can be easily parsed to analyse the configurations.&lt;br /&gt;
&lt;br /&gt;
For each pair of nucleotides that do interact in the configuration, the program prints out a line containing:&lt;br /&gt;
* The id of the two particles (starting from 0)&lt;br /&gt;
* The total interaction energy&lt;br /&gt;
* The hydrogen bonding (base pairing) energy&lt;br /&gt;
* The stacking energy&lt;br /&gt;
* The cross stacking energy&lt;br /&gt;
* The excluded volume energy&lt;br /&gt;
* The FENE interaction energy&lt;br /&gt;
* A letter indicating a status code. This will be &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; for pairs that interact through bonded interactions (i.e. they are neighbors along a strand) and it will be &amp;lt;tt&amp;gt;H&amp;lt;/tt&amp;gt; when a base pair is present. Our definition of base pair is when two nucleotides have a hydrogen bonding energy less than 0.1 in simulation units (see [[Publications|Ref. 2]]).&lt;br /&gt;
&lt;br /&gt;
===Geometry of the Model===&lt;br /&gt;
In the configuration/trajectory files only the positions and orientations of the nucleotides are stored. If one wants to recover the positions of the individual interaction sites in the model, some maths need to be done.&lt;br /&gt;
&lt;br /&gt;
The position of the base, stacking and backbone sites can be recovered as follows:&lt;br /&gt;
&lt;br /&gt;
base site:     (center) + 0.40 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
stacking site: (center) + 0.34 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
backbone site: (center) - 0.40 * (axis_vector)&lt;br /&gt;
&lt;br /&gt;
The picture in the [[Model_introduction|introduction]] might help understanding where the sites are.&lt;br /&gt;
&lt;br /&gt;
==External Forces==&lt;br /&gt;
The code implements several types of external forces that can be imposed on the system that can be used either to simulate tension exerted on DNA or simply to accelerate the formation of secondary or tertiary structure. External forces can be tricky to treat, especially in a dynamics simulation, since they are an external source of work. Care should be taken in adjusting the time step, thermostat parameters and such.&lt;br /&gt;
&lt;br /&gt;
To enable external forces, one needs to specify &amp;lt;tt&amp;gt;external_forces = 1&amp;lt;/tt&amp;gt; in the input file and also supply an external force file to read from with the key &amp;lt;tt&amp;gt;external_forces_file = &amp;lt;file&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The syntax of the external forces file is quite simple. Examples of such files can be found in the [[Hairpin_formation|hairpin formation]] and [[Pseudoknot|Pseudoknot formation]] examples. Each force is specified within a block contained in curly brackets. Empty lines and lines beginning with an hash symbol (&amp;lt;tt&amp;gt;#&amp;lt;/tt&amp;gt;) are ignored. Different forces require different keys to be present. If the file has the wrong syntax, oxDNA should spit out a sensible error message while parsing the file.&lt;br /&gt;
&lt;br /&gt;
The different types of forces implemented at the moment are:&lt;br /&gt;
* harmonic trap&lt;br /&gt;
* string &lt;br /&gt;
* repulsion plane&lt;br /&gt;
* mutual trap&lt;br /&gt;
&lt;br /&gt;
All forces act on the centre of the particle.&lt;br /&gt;
&lt;br /&gt;
Forces of different kinds can be combined in the same simulation. There is a maximum number of 10 external forces per particle for memory reasons. This can be manually overridden recompiling the code with a different value of the macro &amp;lt;tt&amp;gt;MAX_EXT_FORCES&amp;lt;/tt&amp;gt; (currently 10) in &amp;lt;tt&amp;gt;defs.h&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===String===&lt;br /&gt;
A string is implemented as a force that does not depend on the particle position. Its value can be constant or can change linearly with time. It is useful as it does not fluctuate with time.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = string&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;F0&#039;&#039;&#039; (float) the value of the force at time = 0 in simulation units (please note that the value of the time may or may not be reset when starting a simulation, depending on the input file)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) growing rate of the force (simulation units/time steps). Typical values are very small (&amp;lt; 10^(-5))&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of the force (automatically normalised by the code)&lt;br /&gt;
&lt;br /&gt;
The following bit of code will create an external force on the first nucleotide in the system starting at 1 simulation units (48.6 pN) and growing linearly with time at the rate of 48.6pN every million time steps. The force will pull the nucleotide along the &amp;lt;tt&amp;gt;z&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = string&lt;br /&gt;
particle = 0&lt;br /&gt;
F0 = 1.&lt;br /&gt;
rate = 1e-6&lt;br /&gt;
dir = 0., 0., 1.&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Harmonic trap===&lt;br /&gt;
This type of force implements an harmonic trap, of arbitrary stiffness, that can move linearly with time. It can be useful to fix the position of the nucleotides to simulate attachment to something or to implement (quasi) constant extension simulations.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;pos0&#039;&#039;&#039; (3 floats separated by commas) rest position of the trap&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * dx)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) speed of the trap (length simulation units/time steps)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of movement of the trap&lt;br /&gt;
&lt;br /&gt;
Here is an example input for a harmonic trap acting on the third nucleotide constraining it to stay close to the origin. In this example the trap does not move (&amp;lt;tt&amp;gt;rate=0&amp;lt;/tt&amp;gt;), but one could have it move at a constant speed along the direction specified by &amp;lt;tt&amp;gt;dir&amp;lt;/tt&amp;gt;, in this case the &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = trap&lt;br /&gt;
particle = 2&lt;br /&gt;
pos0 = 0., 0., 0.&lt;br /&gt;
stiff = 1.0&lt;br /&gt;
rate = 0.&lt;br /&gt;
dir = 1.,0.,0.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note that the trap does not comply with periodic boundary conditions. This is most likely what you want.&lt;br /&gt;
&lt;br /&gt;
===Repulsion plane===&lt;br /&gt;
This kind of external force implements a repulsion plane that constrains a particle (or the whole system) to stay on one side of it. It is implemented as a harmonic repulsion, but the stiffness can be made arbitrarily high to mimic a hard repulsion.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = repulsion_plane&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force. If set to the special value -1, the force will be exerted on all particles.&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * D, where D is distance from the plane. The force is exerted only if the nucleotide is below the plane)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) a direction normal to the plane&lt;br /&gt;
* &#039;&#039;&#039;position&#039;&#039;&#039; (1 float number) specifies the position of the plane&lt;br /&gt;
&lt;br /&gt;
If direction is &amp;lt;tt&amp;gt; direction =  u,v,w &amp;lt;/tt&amp;gt; , then the plane contains all the points (x,y,z) that satisfy the equation: u*x + v*y + w*z + position = 0.&lt;br /&gt;
Only nucleotides  with coordinates (x,y,z) that satisfy u*x + v*y + w*z + position &amp;lt; 0 will feel the force.&lt;br /&gt;
The force exerted on a nucleotide is equal to stiff * D, where D is the distance of the nucleotide from the plane, where &amp;lt;math&amp;gt; D = | ux + vy + wz + \mbox{position}| / \sqrt{u^2 + v^2 + w^2 }.&amp;lt;/math&amp;gt;&lt;br /&gt;
For nucleotides for which u*x + v*y + w*z + position &amp;gt;= 0, no force will be exerted.&lt;br /&gt;
&lt;br /&gt;
Here is an example. This plane acts on the whole system and will not exert any force on nucleotides with a positive &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate. A force proportional to 48.6 pN * (&amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate) will be exerted on all particles . &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = repulsion_plane&lt;br /&gt;
#whole system&lt;br /&gt;
particle = -1&lt;br /&gt;
stiff = 1. #48.6 pN /(simulation length unit)  &lt;br /&gt;
dir = 1, 0, 0&lt;br /&gt;
position = 0&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If in the above example you would specify position = 3, then the force would be exerted on all nucleotides with coordinate x &amp;gt; -3.&lt;br /&gt;
&lt;br /&gt;
===Mutual trap===&lt;br /&gt;
This force is useful to form initial configurations. It is a harmonic force that at every moment pulls a particle towards a reference particle. It is possible to specify the separation at which the force will be 0.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = mutual_trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force.&lt;br /&gt;
* &#039;&#039;&#039;ref_particle&#039;&#039;&#039; (int) particle to pull towards. Please note that this particle will not feel any force (the name mutual trap is thus misleading).&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap&lt;br /&gt;
* &#039;&#039;&#039;r0&#039;&#039;&#039; (float) equilibrium distance of the trap.&lt;br /&gt;
&lt;br /&gt;
Here is an example, extracted from the [[Pseudoknot|pseudoknot formation example]]. This will pull particle 14 towards particle 39, favouring an equilibrium distance of 1.4 (which corresponds roughly to the minimum of the hydrogen bonding potential, not a coincidence). The same force with opposite sign is exerted on particle 39 through a separate force. It is not necessary to have both particles feel the force, but it usually works much better.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 14&lt;br /&gt;
ref_particle = 39&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 39&lt;br /&gt;
ref_particle = 14&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visualisation of structures==&lt;br /&gt;
oxDNA produces a trajectory file where all the relevant information is&lt;br /&gt;
stored. A converter is provided (&amp;lt;tt&amp;gt;traj2vis.py&amp;lt;/tt&amp;gt;) in the&lt;br /&gt;
&amp;lt;tt&amp;gt;UTILS&amp;lt;/tt&amp;gt; directory that is able to produce files in the &amp;lt;tt&amp;gt;xyz&amp;lt;/tt&amp;gt;&lt;br /&gt;
and &amp;lt;tt&amp;gt;pdb&amp;lt;/tt&amp;gt; formats. The same program can be used on a configuration&lt;br /&gt;
file and it will produce a snapshot.&lt;br /&gt;
&lt;br /&gt;
Since the model is coarse-grained, we have to &amp;quot;trick&amp;quot; the visualisers into&lt;br /&gt;
thinking that the interaction sites in the model are actually atoms.&lt;br /&gt;
Advanced nucleic acids representations such as ribbons will not work on the&lt;br /&gt;
outputs.&lt;br /&gt;
&lt;br /&gt;
All the images in the [[Screenshots]] page were produced with the pdb representation using UCSF chimera (see later on).&lt;br /&gt;
&lt;br /&gt;
===xyz format===&lt;br /&gt;
&lt;br /&gt;
just run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2vis.py xyz &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(where &amp;lt;tt&amp;gt;$oxDNA&amp;lt;/tt&amp;gt; is the oxDNA source directory) to get the xyz representation in a file called the same as the trajectory&lt;br /&gt;
file with &amp;lt;tt&amp;gt;.xyz&amp;lt;/tt&amp;gt; appended. Please note that boundary conditions are&lt;br /&gt;
implemented strand-wise, so strands that are bound might appear at two&lt;br /&gt;
different sizes of the box. Also, the center of mass of the system (where&lt;br /&gt;
each strand is weighted the same regardless of the length) is set to 0 at&lt;br /&gt;
each frame. Carbons represent the backbone sites and oxygens the base sites.&lt;br /&gt;
&lt;br /&gt;
The resulting file can be read with a variety of programs. Here we will&lt;br /&gt;
explain how to visualise it sensibly in [http://www.ks.uiuc.edu/Research/vmd/ VMD].&lt;br /&gt;
&lt;br /&gt;
* Run VMD and load the xyz file.&lt;br /&gt;
* In the graphics menu, go to Representations.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name C&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.8 and Bond Radius 0.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name O&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.6 and Bond Radius 0.&lt;br /&gt;
&lt;br /&gt;
This should produce a ball representation of our model DNA. Bonds&lt;br /&gt;
automatically produced by VMD are NOT meaningful in our context.&lt;br /&gt;
&lt;br /&gt;
===pdb format===&lt;br /&gt;
Run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2chimera.py &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
to produce a trajectory/configuration in the pdb format. A further file&lt;br /&gt;
called &amp;lt;tt&amp;gt;chimera.com&amp;lt;/tt&amp;gt; will be produced (more on this later). All&lt;br /&gt;
comments above about periodic boundaries and centre of mass apply here as&lt;br /&gt;
well.&lt;br /&gt;
&lt;br /&gt;
The pdb file can be visualised in VMD just like the xyz format, but a nicer&lt;br /&gt;
output can be produced with [http://www.cgl.ucsf.edu/chimera/ UCSF Chimera] (although only for snapshots at&lt;br /&gt;
the moment) as follows:&lt;br /&gt;
&lt;br /&gt;
Run chimera and load the pdb file. An ugly output will be displayed.&lt;br /&gt;
&lt;br /&gt;
Bring up the command line under the &amp;lt;tt&amp;gt;Tools → General Controls&amp;lt;/tt&amp;gt; menu.&lt;br /&gt;
Input &amp;lt;tt&amp;gt;read chimera.com&amp;lt;/tt&amp;gt; in the command line and press enter. You&lt;br /&gt;
should get a nicer visualisation with different bases in different colors,&lt;br /&gt;
all the covalent bonds in the right place, etc.&lt;br /&gt;
&lt;br /&gt;
On large configurations, the production of ellipsoids will be extremely&lt;br /&gt;
slow. You can remove it by removing the line&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;aniso scale 0.75 smoothing 4&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
from the commands file. Loading the resulting file should be much faster.&lt;br /&gt;
&lt;br /&gt;
UCSF chimera can in turn export the scene in a variety of formats.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=937</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=937"/>
		<updated>2015-04-10T11:49:48Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Compile options==&lt;br /&gt;
&lt;br /&gt;
Compiling oxDNA requires that you have a working &amp;lt;tt&amp;gt;cmake&amp;lt;/tt&amp;gt; software and C++ compiler on your machine. The instructions are provided in the [[Download and Installation]] section.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;oxDNA input_file&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The input file contains all the relevant information for the program to run, such as what initial configuration to use, the topology of the system, how often to print the energies to a file, etc. Please make sure you read the [[Thermostat|thermostat]] page if you use molecular dynamics.&lt;br /&gt;
&lt;br /&gt;
==Input file==&lt;br /&gt;
&lt;br /&gt;
As always in UNIX environments, everything is case sensitive.&lt;br /&gt;
&lt;br /&gt;
*Options are in the form key = value&lt;br /&gt;
*There can be arbitrary spaces before and after both key and value&lt;br /&gt;
*Line with a leading # will be treated as comments&lt;br /&gt;
*The | (pipe) sign is the separator between the different values that can be used to specify a value for the key.&lt;br /&gt;
*Keys between [ and ] are optional, the value after the equal sign is the default value&lt;br /&gt;
&lt;br /&gt;
Here we provide a list of the most commonly used input options. The complete and most up-to-date list of possible options can be found [[Input_options|here]] or in the &amp;lt;tt&amp;gt;README&amp;lt;/tt&amp;gt; file in the main directory of the simulation code.&lt;br /&gt;
&lt;br /&gt;
The input options of the previous oxDNA version can be found [[Input_options_of_the_previous_version|here]].&lt;br /&gt;
&lt;br /&gt;
===Generic options===&lt;br /&gt;
The options listed here define the generic behavior of the entire program.&lt;br /&gt;
;[interaction_type = DNA]: DNA|DNA2|RNA|patchy|LJ&lt;br /&gt;
: (selects the model for the simulation. DNA ([[DNA_model_introduction|oxDNA model]]) is the default option. DNA2 (oxDNA2), RNA ([[RNA_model_introduction|oxRNA model]]), LJ (Lennard-Jones) and patchy particles are also implemented&lt;br /&gt;
;[sim_type=MD]: MD|MC|VMMC&lt;br /&gt;
:MD = Molecular Dynamics, MC = Monte Carlo, VMMC = Virtual Move Monte Carlo&lt;br /&gt;
;backend: CPU | CUDA &lt;br /&gt;
: (only sim_type=MD is supported if you choose CUDA backend)&lt;br /&gt;
;backend_precision: float|double|mixed&lt;br /&gt;
: (mixed option is available only for CUDA backend. It is recommended choice for optimal performance on CUDA machines, double is recommended for CPU simulations)&lt;br /&gt;
;[debug=0]: 0|1&lt;br /&gt;
: 1 if you want verbose logs, 0 otherwise.&lt;br /&gt;
&lt;br /&gt;
===Simulation options===&lt;br /&gt;
	The options listed here specify the behaviour of the simulation.&lt;br /&gt;
&lt;br /&gt;
;steps: number of steps to be performed.&lt;br /&gt;
		&lt;br /&gt;
;[restart_step_counter=0]: 0|1&lt;br /&gt;
:0 means that the step counter will start from the value read in the configuration file; if 1, the step counter will be reset to 0. The total duration of the simulation is unchanged.&lt;br /&gt;
			&lt;br /&gt;
;[seed=time(NULL)]: seed for the random number generator. On Unix systems, it will use by default a number from /dev/urandom + time(NULL)&lt;br /&gt;
		&lt;br /&gt;
;T: temperature of the simulation. It can be expressed in simulation units or kelvin (append a k or K after the value) or celsius (append a c or C after the value).&lt;br /&gt;
:Examples:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Value&lt;br /&gt;
! Simulation Units&lt;br /&gt;
|-&lt;br /&gt;
| 0.1&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300 K&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300k&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85c&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85 C &lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
		&lt;br /&gt;
;verlet_skin: if a particle moves more than verlet_skin then the lists will be updated. Its name is somewhat misleading: the actual verlet skin is 2*verlet_skin.&lt;br /&gt;
	&lt;br /&gt;
;[use_average_seq=1]: 0|1&lt;br /&gt;
: specifies whether to use the default hard-coded average parameters for base-pairing and stacking interaction strengths or not. If sequence dependence is to be used, set this to 0 and specify seq_dep_file.&lt;br /&gt;
	&lt;br /&gt;
;[seq_dep_file]: specifies the file from which the sequence dependent parameters should be read. Mandatory if use_average_seq=no, ignored otherwise. A sample file is provided (sequence_dependent_parameters.txt).&lt;br /&gt;
&lt;br /&gt;
;[external_forces=0]: 0|1&lt;br /&gt;
: specifies whether there are external forces acting on the nucleotides or not. If it is set to 1, then a file which specifies the external forces&#039; configuration has to be provided (see external_forces_file).&lt;br /&gt;
&lt;br /&gt;
;[external_forces_file]: specifies the file containing all the external forces&#039; configurations. Currently there are six supported force types (see EXAMPLES/TRAPS for some examples):&lt;br /&gt;
:*string&lt;br /&gt;
:*twist&lt;br /&gt;
:*trap&lt;br /&gt;
:*repulsion_plane&lt;br /&gt;
:*repulsion_plane_moving&lt;br /&gt;
:*mutual_trap&lt;br /&gt;
	&lt;br /&gt;
====Molecular dynamics simulations options====&lt;br /&gt;
&lt;br /&gt;
;dt: time step of the integration.&lt;br /&gt;
&lt;br /&gt;
;thermostat: no|refresh|brownian &lt;br /&gt;
:no means no thermostat will be used. refresh will refresh all the particle&#039;s velocities from a maxwellian every newtonian_steps steps. john is an Anderson-like thermostat (see pt). Make sure you read [[Thermostat|thermostat]].&lt;br /&gt;
&lt;br /&gt;
;newtonian_steps: required if thermostat != no&lt;br /&gt;
:number of steps after which a procedure of thermalization will be performed.&lt;br /&gt;
			&lt;br /&gt;
;pt: used if thermostat == john. It&#039;s the probability that a particle&#039;s velocity will be refreshed during a thermalization procedure.&lt;br /&gt;
		&lt;br /&gt;
;diff_coeff: required if pt is not specified&lt;br /&gt;
:used internally to automatically compute the pt that would be needed if we wanted such a self diffusion coefficient. Not used if pt is set.&lt;br /&gt;
&lt;br /&gt;
====Monte Carlo simulations options====&lt;br /&gt;
	&lt;br /&gt;
;[check_energy_every=10]: this number times print_energy_every gives the number of steps after which the energy will be computed from scratch and checked against the actual value computed adding energy differences.&lt;br /&gt;
		&lt;br /&gt;
;[check_energy_threshold=1e-4]:	if abs((old_energy - new_energy)/old_energy) &amp;gt; check_energy_threshold then the program will die and warn the user.&lt;br /&gt;
	&lt;br /&gt;
;ensemble: NVT&lt;br /&gt;
:ensemble of the simulation. More ensembles could be added in future versions.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement (per dimension) for translational moves in simulation units.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement for rotational moves in simulation units.&lt;br /&gt;
&lt;br /&gt;
===Input/output===&lt;br /&gt;
The options listed here are used to manage the I/O (read and write configurations, energies and so on)&lt;br /&gt;
	&lt;br /&gt;
;conf_file: initial configuration file. &lt;br /&gt;
		&lt;br /&gt;
;topology: file containing the system&#039;s topology.&lt;br /&gt;
		&lt;br /&gt;
;trajectory_file: the main output of the program. All the configurations will be appended to this file as they are printed.&lt;br /&gt;
		&lt;br /&gt;
;[confs_to_skip=0]: valid only if conf_file is a trajectory. Skip the first confs_to_skip configurations and then load in memory the (confs_to_skip+1)th.&lt;br /&gt;
		&lt;br /&gt;
;[lastconf_file=last_conf.dat]: this is the file where the last configuration is saved (when the program finishes or is killed). Set to last_conf.dat by default&lt;br /&gt;
&lt;br /&gt;
;[refresh_vel=0]: 0|1&lt;br /&gt;
:if 1 the initial velocities will be refreshed from a maxwellian.&lt;br /&gt;
	&lt;br /&gt;
;energy_file: energy output file.&lt;br /&gt;
		&lt;br /&gt;
;[print_energy_every=1000]: this will make the program print the energies every print_energy_every steps.&lt;br /&gt;
		&lt;br /&gt;
;[no_stdout_energy=0]: 0|1&lt;br /&gt;
:if 1 the energy will be printed just to the energy_file.&lt;br /&gt;
		&lt;br /&gt;
;[time_scale=linear]: linear|log_lin&lt;br /&gt;
:using linear configurations will be saved every print_conf_interval.&lt;br /&gt;
:using log_lin configurations will be saved logarithmically for print_conf_ppc times. After that the logarithmic sequence will restart.&lt;br /&gt;
	&lt;br /&gt;
;print_conf_interval: linear interval if time_scale == linear. First step of the logarithmic scale if time_scale == log_lin.&lt;br /&gt;
		&lt;br /&gt;
;[print_reduced_conf_every=0]: every print_reduced_conf_every steps the program will print out the reduced configurations (i.e. confs containing only the centers of mass of strands).&lt;br /&gt;
&lt;br /&gt;
;reduced_conf_output_dir: used if print_reduced_conf_every &amp;gt; 0&lt;br /&gt;
:output directory for reduced_conf files.&lt;br /&gt;
		&lt;br /&gt;
;[log_file=stderr]: file where generic and debug informations will be logged. If not specified then stderr will be used.&lt;br /&gt;
&lt;br /&gt;
==Output files==&lt;br /&gt;
*The log file contains all the relevant information about the simulation (specified options, activated external forces, warnings about misconfigurations, critical errors, etc.). If the log file is omitted, all this information will be displayed on the standard output.&lt;br /&gt;
&lt;br /&gt;
*The energy file layout for MD simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| time&lt;br /&gt;
| potential energy&lt;br /&gt;
| kinetic energy&lt;br /&gt;
| total energy&lt;br /&gt;
| hydrogen bonding energy&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:while for MC simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| time&lt;br /&gt;
| potential energy&lt;br /&gt;
| hydrogen bonding energy&lt;br /&gt;
| acceptance ratio for translational moves&lt;br /&gt;
| acceptance ratio for rotational moves&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:N.B. potential, kinetic and total energies are divided by the number of particles whereas the hydrogen bonding energy is not.&lt;br /&gt;
&lt;br /&gt;
*Configurations are saved in the trajectory file.&lt;br /&gt;
&lt;br /&gt;
==Configuration and topology files==&lt;br /&gt;
The current state of a system, as specified by oxDNA, is described by two files: a configuration file and a topology file. The configuration file contains all the general information (timestep, energy and box size) and the orientations and positions of each nucleotide. The topology file, on the other hand, keeps track of the backbone-backbone bonds between nucleotides in the same strand. Working configuration and topology files can be found in the &amp;lt;tt&amp;gt;[[Examples|EXAMPLES]]&amp;lt;/tt&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
===Configuration file===&lt;br /&gt;
The first three rows of a configuration file contain the timestep &amp;lt;tt&amp;gt;T&amp;lt;/tt&amp;gt; at which the configuration has been printed, the length of the box sides &amp;lt;tt&amp;gt;Lx&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;Ly&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Lz&amp;lt;/tt&amp;gt; and the total, potential and kinetic energies, &amp;lt;tt&amp;gt;Etot&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;U&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;K&amp;lt;/tt&amp;gt;, respectively:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
t = T&lt;br /&gt;
b = Lz Ly Lz&lt;br /&gt;
E = Etot U K&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after this header, each row contains position of the centre of mass, orientation, velocity and angular velocity of a single nucleotide in the following order:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\overbrace{r_x r_y r_z}^{\rm Position} \overbrace{b_x b_y b_z}^{\rm Backbone-base versor} \overbrace{n_x n_y n_z}^{\rm Normal versor} \overbrace{v_x v_y v_z}^{\rm Velocity} \overbrace{L_x L_y L_z}^{\rm Angular velocity}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Topology file===&lt;br /&gt;
The topology file stores the intra-strand, fixed bonding topology (i.e. which nucleotides share backbone links). The first row contains the total number of nucleotides &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; and the number of strands &amp;lt;tt&amp;gt;Ns&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
N Ns&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After this header, the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th row specifies strand, base and 3&#039; and 5&#039; neighbors of the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide in this way:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
S B 3&#039; 5&#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where S is the index of the strand (starting from 1) which the nucleotide belongs to, B is the base and 3&#039; and 5&#039; specify the index of the nucleotides with which the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide is bonded in the 3&#039; and 5&#039; direction, respectively. A &amp;lt;tt&amp;gt;-1&amp;lt;/tt&amp;gt; signals that the nucleotide terminates the strand in either 3&#039; or 5&#039; direction. The topology file of a strand of sequence &amp;lt;tt&amp;gt;GCGTTG&amp;lt;/tt&amp;gt; would be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
6 1&lt;br /&gt;
1 G -1 1&lt;br /&gt;
1 C 0 2&lt;br /&gt;
1 G 1 3&lt;br /&gt;
1 T 2 4&lt;br /&gt;
1 T 3 5&lt;br /&gt;
1 G 4 -1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Specifying the topology in this way can simplify the process of simulating, for example, circular DNA.&lt;br /&gt;
&lt;br /&gt;
===Generation of initial configurations===&lt;br /&gt;
In order to generate initial configuration and topology files, we provide the &amp;lt;tt&amp;gt;${oxDNA}/UTILS/generate-sa.py&amp;lt;/tt&amp;gt; script. The usage of the script is&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;generate-sa.py &amp;lt;box side&amp;gt; &amp;lt;file with sequence&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
where &amp;lt;tt&amp;gt;&amp;lt;box side&amp;gt;&amp;lt;/tt&amp;gt; specifies the length of the box side in simulation units and &amp;lt;tt&amp;gt;&amp;lt;file with sequence&amp;gt;&amp;lt;/tt&amp;gt; contains the sequence of the strands to be generated, one row per strand. If double strands are needed, each sequence must be preceded by &amp;lt;tt&amp;gt;DOUBLE&amp;lt;/tt&amp;gt;. For example, a file containing&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DOUBLE AGGGCT&lt;br /&gt;
CCTGTA&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
would generate a double strand with a sequence &amp;lt;tt&amp;gt;AGGGCT&amp;lt;/tt&amp;gt; and a single strand with a sequence &amp;lt;tt&amp;gt;CCTGTA&amp;lt;/tt&amp;gt;. The sequences are given in 3&#039;-5&#039; order.&lt;br /&gt;
&lt;br /&gt;
Positions and orientations of the strands are all chosen at random in such a way that the resulting initial configuration does not contain significant excluded volume interactions between nucleotides belonging to different strands. Generated single- and double-strands have helical conformations (i.e. they are in the minimum of the intra-strand interaction energy).&lt;br /&gt;
&lt;br /&gt;
The output configuration and topology are stored in &amp;lt;tt&amp;gt;generated.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;generated.top&amp;lt;/tt&amp;gt;, respectively. &lt;br /&gt;
Since this script will initialize nucleotides&#039; velocities and angular velocities to 0, when performing a molecular (or Brownian) dynamics simulation remember to put &amp;lt;tt&amp;gt;refresh_vel = 1&amp;lt;/tt&amp;gt; in the [[Documentation#Input_file|input]] file.&lt;br /&gt;
&lt;br /&gt;
==Analysis of configurations==&lt;br /&gt;
The configurations produced by oxDNA can be analysed with the &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; program in &amp;lt;tt&amp;gt;${oxDNA}/UTILS/process_data/&amp;lt;/tt&amp;gt; directory. This program takes as command line arguments the input file (to recover the temperature and topology file), a configuration/trajectory file and an optional number. Since &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; reads analyses a single configuration, the optional number selects the configuration which it needs to analyse in the trajectory. Analysing a whole trajectory can be done by looping over a counter.&lt;br /&gt;
&lt;br /&gt;
Please note that &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; is not compiled automatically. If you never compiled it, do so as described in the [[Download_and_Installation#Installation|installation instructions]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; can be used as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
${oxDNA}/UTILS/process_data/output_bonds &amp;lt;input_file&amp;gt; &amp;lt;trajectory_file&amp;gt; [counter]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The program outputs some debugging information to the standard error and information regarding the interaction energies to the standard output. The contributions arising from each of the terms in the potential (see the appendix of [[Publications|Ref. 2]]) are reported for each pair of nucleotides that have non-zero total interactions.&lt;br /&gt;
&lt;br /&gt;
This output can be easily parsed to analyse the configurations.&lt;br /&gt;
&lt;br /&gt;
For each pair of nucleotides that do interact in the configuration, the program prints out a line containing:&lt;br /&gt;
* The id of the two particles (starting from 0)&lt;br /&gt;
* The total interaction energy&lt;br /&gt;
* The hydrogen bonding (base pairing) energy&lt;br /&gt;
* The stacking energy&lt;br /&gt;
* The cross stacking energy&lt;br /&gt;
* The excluded volume energy&lt;br /&gt;
* The FENE interaction energy&lt;br /&gt;
* A letter indicating a status code. This will be &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; for pairs that interact through bonded interactions (i.e. they are neighbors along a strand) and it will be &amp;lt;tt&amp;gt;H&amp;lt;/tt&amp;gt; when a base pair is present. Our definition of base pair is when two nucleotides have a hydrogen bonding energy less than 0.1 in simulation units (see [[Publications|Ref. 2]]).&lt;br /&gt;
&lt;br /&gt;
===Geometry of the Model===&lt;br /&gt;
In the configuration/trajectory files only the positions and orientations of the nucleotides are stored. If one wants to recover the positions of the individual interaction sites in the model, some maths need to be done.&lt;br /&gt;
&lt;br /&gt;
The position of the base, stacking and backbone sites can be recovered as follows:&lt;br /&gt;
&lt;br /&gt;
base site:     (center) + 0.40 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
stacking site: (center) + 0.34 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
backbone site: (center) - 0.40 * (axis_vector)&lt;br /&gt;
&lt;br /&gt;
The picture in the [[Model_introduction|introduction]] might help understanding where the sites are.&lt;br /&gt;
&lt;br /&gt;
==External Forces==&lt;br /&gt;
The code implements several types of external forces that can be imposed on the system that can be used either to simulate tension exerted on DNA or simply to accelerate the formation of secondary or tertiary structure. External forces can be tricky to treat, especially in a dynamics simulation, since they are an external source of work. Care should be taken in adjusting the time step, thermostat parameters and such.&lt;br /&gt;
&lt;br /&gt;
To enable external forces, one needs to specify &amp;lt;tt&amp;gt;external_forces = 1&amp;lt;/tt&amp;gt; in the input file and also supply an external force file to read from with the key &amp;lt;tt&amp;gt;external_forces_file = &amp;lt;file&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The syntax of the external forces file is quite simple. Examples of such files can be found in the [[Hairpin_formation|hairpin formation]] and [[Pseudoknot|Pseudoknot formation]] examples. Each force is specified within a block contained in curly brackets. Empty lines and lines beginning with an hash symbol (&amp;lt;tt&amp;gt;#&amp;lt;/tt&amp;gt;) are ignored. Different forces require different keys to be present. If the file has the wrong syntax, oxDNA should spit out a sensible error message while parsing the file.&lt;br /&gt;
&lt;br /&gt;
The different types of forces implemented at the moment are:&lt;br /&gt;
* harmonic trap&lt;br /&gt;
* string &lt;br /&gt;
* repulsion plane&lt;br /&gt;
* mutual trap&lt;br /&gt;
&lt;br /&gt;
All forces act on the centre of the particle.&lt;br /&gt;
&lt;br /&gt;
Forces of different kinds can be combined in the same simulation. There is a maximum number of 10 external forces per particle for memory reasons. This can be manually overridden recompiling the code with a different value of the macro &amp;lt;tt&amp;gt;MAX_EXT_FORCES&amp;lt;/tt&amp;gt; (currently 10) in &amp;lt;tt&amp;gt;defs.h&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===String===&lt;br /&gt;
A string is implemented as a force that does not depend on the particle position. Its value can be constant or can change linearly with time. It is useful as it does not fluctuate with time.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = string&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;F0&#039;&#039;&#039; (float) the value of the force at time = 0 in simulation units (please note that the value of the time may or may not be reset when starting a simulation, depending on the input file)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) growing rate of the force (simulation units/time steps). Typical values are very small (&amp;lt; 10^(-5))&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of the force (automatically normalised by the code)&lt;br /&gt;
&lt;br /&gt;
The following bit of code will create an external force on the first nucleotide in the system starting at 1 simulation units (48.6 pN) and growing linearly with time at the rate of 48.6pN every million time steps. The force will pull the nucleotide along the &amp;lt;tt&amp;gt;z&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = string&lt;br /&gt;
particle = 0&lt;br /&gt;
F0 = 1.&lt;br /&gt;
rate = 1e-6&lt;br /&gt;
dir = 0., 0., 1.&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Harmonic trap===&lt;br /&gt;
This type of force implements an harmonic trap, of arbitrary stiffness, that can move linearly with time. It can be useful to fix the position of the nucleotides to simulate attachment to something or to implement (quasi) constant extension simulations.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;pos0&#039;&#039;&#039; (3 floats separated by commas) rest position of the trap&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * dx)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) speed of the trap (length simulation units/time steps)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of movement of the trap&lt;br /&gt;
&lt;br /&gt;
Here is an example input for a harmonic trap acting on the third nucleotide constraining it to stay close to the origin. In this example the trap does not move (&amp;lt;tt&amp;gt;rate=0&amp;lt;/tt&amp;gt;), but one could have it move at a constant speed along the direction specified by &amp;lt;tt&amp;gt;dir&amp;lt;/tt&amp;gt;, in this case the &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = trap&lt;br /&gt;
particle = 2&lt;br /&gt;
pos0 = 0., 0., 0.&lt;br /&gt;
stiff = 1.0&lt;br /&gt;
rate = 0.&lt;br /&gt;
dir = 1.,0.,0.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note that the trap does not comply with periodic boundary conditions. This is most likely what you want.&lt;br /&gt;
&lt;br /&gt;
===Repulsion plane===&lt;br /&gt;
This kind of external force implements a repulsion plane that constrains a particle (or the whole system) to stay on one side of it. It is implemented as a harmonic repulsion, but the stiffness can be made arbitrarily high to mimic a hard repulsion.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = repulsion_plane&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force. If set to the special value -1, the force will be exerted on all particles.&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * D, where D is distance from the plane. The force is exerted only if the nucleotide is below the plane)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) a direction normal to the plane&lt;br /&gt;
* &#039;&#039;&#039;position&#039;&#039;&#039; (1 float number) specifies the position of the plane&lt;br /&gt;
&lt;br /&gt;
If direction is &amp;lt;tt&amp;gt; direction =  u,v,w &amp;lt;/tt&amp;gt; , then the plane contains all the points (x,y,z) that satisfy the equation: u*x + v*y + w*z + position = 0.&lt;br /&gt;
Only nucleotides  with coordinates (x,y,z) that satisfy u*x + v*y + w*z + position &amp;lt; 0 will feel the force.&lt;br /&gt;
The force exerted on a nucleotide is equal to stiff * D, where D is the distance of the nucleotide from the plane, where &amp;lt;math&amp;gt; D = | ux + vy + wz + \mbox{position}| / \sqrt{u^2 + v^2 + w^2 }.&amp;lt;/math&amp;gt;&lt;br /&gt;
For nucleotides for which u*x + v*y + w*z + position &amp;gt;= 0, no force will be exerted.&lt;br /&gt;
&lt;br /&gt;
Here is an example. This plane acts on the whole system and will not exert any force on nucleotides with a positive &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate. A force proportional to 48.6 pN * (&amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate) will be exerted on all particles . &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = repulsion_plane&lt;br /&gt;
#whole system&lt;br /&gt;
particle = -1&lt;br /&gt;
stiff = 1. #48.6 pN /(simulation length unit)  &lt;br /&gt;
dir = 1, 0, 0&lt;br /&gt;
position = 0&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If in the above example you would specify position = 3, then the force would be exerted on all nucleotides with coordinate x &amp;gt; -3.&lt;br /&gt;
&lt;br /&gt;
===Mutual trap===&lt;br /&gt;
This force is useful to form initial configurations. It is a harmonic force that at every moment pulls a particle towards a reference particle. It is possible to specify the separation at which the force will be 0.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = mutual_trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force.&lt;br /&gt;
* &#039;&#039;&#039;ref_particle&#039;&#039;&#039; (int) particle to pull towards. Please note that this particle will not feel any force (the name mutual trap is thus misleading).&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap&lt;br /&gt;
* &#039;&#039;&#039;r0&#039;&#039;&#039; (float) equilibrium distance of the trap.&lt;br /&gt;
&lt;br /&gt;
Here is an example, extracted from the [[Pseudoknot|pseudoknot formation example]]. This will pull particle 14 towards particle 39, favouring an equilibrium distance of 1.4 (which corresponds roughly to the minimum of the hydrogen bonding potential, not a coincidence). The same force with opposite sign is exerted on particle 39 through a separate force. It is not necessary to have both particles feel the force, but it usually works much better.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 14&lt;br /&gt;
ref_particle = 39&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 39&lt;br /&gt;
ref_particle = 14&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visualisation of structures==&lt;br /&gt;
oxDNA produces a trajectory file where all the relevant information is&lt;br /&gt;
stored. A converter is provided (&amp;lt;tt&amp;gt;traj2vis.py&amp;lt;/tt&amp;gt;) in the&lt;br /&gt;
&amp;lt;tt&amp;gt;UTILS&amp;lt;/tt&amp;gt; directory that is able to produce files in the &amp;lt;tt&amp;gt;xyz&amp;lt;/tt&amp;gt;&lt;br /&gt;
and &amp;lt;tt&amp;gt;pdb&amp;lt;/tt&amp;gt; formats. The same program can be used on a configuration&lt;br /&gt;
file and it will produce a snapshot.&lt;br /&gt;
&lt;br /&gt;
Since the model is coarse-grained, we have to &amp;quot;trick&amp;quot; the visualisers into&lt;br /&gt;
thinking that the interaction sites in the model are actually atoms.&lt;br /&gt;
Advanced nucleic acids representations such as ribbons will not work on the&lt;br /&gt;
outputs.&lt;br /&gt;
&lt;br /&gt;
All the images in the [[Screenshots]] page were produced with the pdb representation using UCSF chimera (see later on).&lt;br /&gt;
&lt;br /&gt;
===xyz format===&lt;br /&gt;
&lt;br /&gt;
just run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2vis.py xyz &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(where &amp;lt;tt&amp;gt;$oxDNA&amp;lt;/tt&amp;gt; is the oxDNA source directory) to get the xyz representation in a file called the same as the trajectory&lt;br /&gt;
file with &amp;lt;tt&amp;gt;.xyz&amp;lt;/tt&amp;gt; appended. Please note that boundary conditions are&lt;br /&gt;
implemented strand-wise, so strands that are bound might appear at two&lt;br /&gt;
different sizes of the box. Also, the center of mass of the system (where&lt;br /&gt;
each strand is weighted the same regardless of the length) is set to 0 at&lt;br /&gt;
each frame. Carbons represent the backbone sites and oxygens the base sites.&lt;br /&gt;
&lt;br /&gt;
The resulting file can be read with a variety of programs. Here we will&lt;br /&gt;
explain how to visualise it sensibly in [http://www.ks.uiuc.edu/Research/vmd/ VMD].&lt;br /&gt;
&lt;br /&gt;
* Run VMD and load the xyz file.&lt;br /&gt;
* In the graphics menu, go to Representations.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name C&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.8 and Bond Radius 0.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name O&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.6 and Bond Radius 0.&lt;br /&gt;
&lt;br /&gt;
This should produce a ball representation of our model DNA. Bonds&lt;br /&gt;
automatically produced by VMD are NOT meaningful in our context.&lt;br /&gt;
&lt;br /&gt;
===pdb format===&lt;br /&gt;
Run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2chimera.py &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
to produce a trajectory/configuration in the pdb format. A further file&lt;br /&gt;
called &amp;lt;tt&amp;gt;chimera.com&amp;lt;/tt&amp;gt; will be produced (more on this later). All&lt;br /&gt;
comments above about periodic boundaries and centre of mass apply here as&lt;br /&gt;
well.&lt;br /&gt;
&lt;br /&gt;
The pdb file can be visualised in VMD just like the xyz format, but a nicer&lt;br /&gt;
output can be produced with [http://www.cgl.ucsf.edu/chimera/ UCSF Chimera] (although only for snapshots at&lt;br /&gt;
the moment) as follows:&lt;br /&gt;
&lt;br /&gt;
Run chimera and load the pdb file. An ugly output will be displayed.&lt;br /&gt;
&lt;br /&gt;
Bring up the command line under the &amp;lt;tt&amp;gt;Tools → General Controls&amp;lt;/tt&amp;gt; menu.&lt;br /&gt;
Input &amp;lt;tt&amp;gt;read chimera.com&amp;lt;/tt&amp;gt; in the command line and press enter. You&lt;br /&gt;
should get a nicer visualisation with different bases in different colors,&lt;br /&gt;
all the covalent bonds in the right place, etc.&lt;br /&gt;
&lt;br /&gt;
On large configurations, the production of ellipsoids will be extremely&lt;br /&gt;
slow. You can remove it by removing the line&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;aniso scale 0.75 smoothing 4&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
from the commands file. Loading the resulting file should be much faster.&lt;br /&gt;
&lt;br /&gt;
UCSF chimera can in turn export the scene in a variety of formats.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Publications&amp;diff=936</id>
		<title>Publications</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Publications&amp;diff=936"/>
		<updated>2015-04-10T11:09:04Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#T. E. Ouldridge, A. A. Louis and J. P. K. Doye, &#039;&#039;Phys. Rev. Lett&#039;&#039;. &#039;&#039;&#039;104&#039;&#039;&#039;, 178101 (2010)&lt;br /&gt;
#:[http://prl.aps.org/abstract/PRL/v104/i17/e178101 DNA Nanotweezers Studied with a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/0911.0555 arXiv])&lt;br /&gt;
#T. E. Ouldridge, A. A. Louis and J. P. K. Doye, &#039;&#039;J. Chem. Phys&#039;&#039;, &#039;&#039;&#039;134&#039;&#039;&#039;, 085101 (2011)&lt;br /&gt;
#:[http://link.aip.org/link/?JCP/134/085101 Structural, mechanical and thermodynamic properties of a coarse-grained DNA model] ([http://arxiv.org/abs/arXiv:1009.4480 arXiv])&lt;br /&gt;
#T. E. Ouldridge, D.Phil. Thesis, University of Oxford, 2011.&lt;br /&gt;
#:[http://ora.ox.ac.uk/objects/uuid:b2415bb2-7975-4f59-b5e2-8c022b4a3719 Coarse-grained modelling of DNA and DNA self-assembly]&lt;br /&gt;
#F. Romano, A. Hudson, J. P. K. Doye, T. E. Ouldridge, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;136&#039;&#039;&#039;, 215102 (2012)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v136/i21/p215102_s1 The effect of topology on the structure and free energy landscape of DNA kissing complexes] ([http://arxiv.org/abs/1203.3577 arXiv])&lt;br /&gt;
#C. De Michele, L. Rovigatti, T. Bellini, F. Sciortino, &#039;&#039;Soft Matter&#039;&#039; &#039;&#039;&#039;8&#039;&#039;&#039;, 8388 (2012)&lt;br /&gt;
#:[http://pubs.rsc.org/en/content/articlelanding/2012/sm/c2sm25845e Self-assembly of short DNA duplexes: from a coarse-grained model to experiments through a theoretical link] ([http://arxiv.org/abs/1204.0985 arXiv])&lt;br /&gt;
#C. Matek, T. E. Ouldridge, A. Levy, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Phys. Chem. B&#039;&#039; (2012)&lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/jp3080755 DNA cruciform arms nucleate through a correlated but non-synchronous cooperative mechanism] ([http://arxiv.org/abs/1206.2636 arXiv])&lt;br /&gt;
#P. Šulc, F. Romano, T. E. Ouldridge, L. Rovigatti, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;137&#039;&#039;&#039;, 135101 (2012)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v137/i13/p135101_s1 Sequence-dependent thermodynamics of a coarse-grained DNA model] ([http://arxiv.org/abs/1207.3391 arxiv]) &lt;br /&gt;
#F. Romano, D. Chakraborty, J. P. K. Doye, T. E. Ouldridge, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;138&#039;&#039;&#039;, 085101 (2013)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v138/i8/p085101_s1 Coarse-grained simulations of DNA overstretching] ([http://arxiv.org/abs/1209.5892 arXiv])&lt;br /&gt;
#P. Šulc, T. E. Ouldridge, F. Romano, J. P. K. Doye, A. A. Louis, &#039;&#039;Natural Computing&#039;&#039; &#039;&#039;&#039;13&#039;&#039;&#039;, 535  (2014) &lt;br /&gt;
#:[http://link.springer.com/article/10.1007%2Fs11047-013-9391-8 Simulating a burnt-bridges DNA motor with a coarse-grained DNA model] ([http://arxiv.org/abs/1212.4536 arXiv])&lt;br /&gt;
#T. E. Ouldridge, R. L. Hoare, A. A. Louis, J. P. K. Doye, J. Bath, A. J. Turberfield, &#039;&#039;ACS Nano&#039;&#039; (2013) &lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/nn3058483 Optimizing DNA nanotechnology through coarse-grained modelling: a two-footed DNA walker]&lt;br /&gt;
#T. E. Ouldridge, P. Šulc,  F. Romano, J. P. K. Doye, A. A. Louis, &#039;&#039;Nucleic Acids Res.&#039;&#039;, (2013) &lt;br /&gt;
#:[http://nar.oxfordjournals.org/content/early/2013/08/08/nar.gkt687 DNA hybridization kinetics: zippering, internal displacement and sequence dependence] ([http://arxiv.org/abs/1303.3370 arXiv])&lt;br /&gt;
#J.P.K. Doye, T. E. Ouldridge, A. A. Louis, F. Romano, P. Šulc, C. Matek, B.E.K. Snodin, L. Rovigatti, J. S. Schreck, R.M. Harrison, W.P.J. Smith, &#039;&#039;Phys. Chem. Chem. Phys&#039;&#039; (2013)&lt;br /&gt;
#:[http://pubs.rsc.org/en/content/articlelanding/2013/cp/c3cp53545b#!divAbstract Coarse-graining DNA for simulations of DNA nanotechnology] ([http://arxiv.org/abs/1308.3843 arXiv])&lt;br /&gt;
# N. Srinivas, T. E. Ouldridge, P. Šulc, J. M. Schaeffer, B. Yurke, A. A. Louis, J. P. K. Doye, E. Winfree, &#039;&#039;Nucleic Acids Res.&#039;&#039;, (2013)&lt;br /&gt;
#:[http://nar.oxfordjournals.org/content/early/2013/09/07/nar.gkt801.full?sid=762d341b-b72f-4a09-9235-20ad3ef8aeed  On the biophysics and kinetics of toehold-mediated DNA strand displacement]&lt;br /&gt;
#L. Rovigatti, F. Bomboi, F. Sciortino, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;140&#039;&#039;&#039;, 154903 (2014)&lt;br /&gt;
#:[http://dx.doi.org/10.1063/1.4870467 Accurate phase diagram of tetravalent DNA nanostars] ([http://arxiv.org/abs/1401.2837 arXiv])&lt;br /&gt;
# L. Rovigatti, P. Šulc, I. Reguly, F. Romano, &#039;&#039;J. Comput. Chem.&#039;&#039;, &#039;&#039;&#039;36&#039;&#039;&#039;, 1 (2015)&lt;br /&gt;
#:[http://onlinelibrary.wiley.com/doi/10.1002/jcc.23763/pdf A comparison between parallelization approaches in molecular dynamics simulations on GPUs] ([http://arxiv.org/abs/1401.4350 arXiv])&lt;br /&gt;
#P. Šulc, F. Romano, T. E. Ouldridge,  J. P. K. Doye, A. A. Louis,  &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;140&#039;&#039;&#039;, 235102 (2014)&lt;br /&gt;
#:[http://scitation.aip.org/content/aip/journal/jcp/140/23/10.1063/1.4881424 A nucleotide-level coarse-grained model of RNA] ([http://arxiv.org/abs/1403.4180 arXiv])&lt;br /&gt;
#L. Rovigatti, F. Smallenburg, F. Romano, F. Sciortino, &#039;&#039;ACS Nano&#039;&#039;, (2014)&lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/nn501138w Gels of DNA Nanostars Never Crystallise]&lt;br /&gt;
#C. Matek, T. E. Ouldridge, J. P. K. Doye, A. A. Louis, &#039;&#039;Sci. Rep.&#039;&#039;, &#039;&#039;&#039;5&#039;&#039;&#039;, 7655 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1038/srep07655 Plectoneme tip bubbles: Coupled denaturation and writhing in supercoiled DNA] ([http://arxiv.org/abs/1404.2869 arXiv])&lt;br /&gt;
#Q. Wang, B. M. Pettitt, &#039;&#039;Biophys. J.&#039;&#039; &#039;&#039;&#039;106&#039;&#039;&#039;, 1182–1193 (2014)&lt;br /&gt;
#:[http://www.sciencedirect.com/science/article/pii/S0006349514000927 Modeling DNA Thermodynamics under Torsional Stress]&lt;br /&gt;
#  J. S. Schreck, T. E. Ouldridge, F. Romano, P. Šulc, L. Shaw, A. A. Louis, J.P.K. Doye, &#039;&#039;arxiv&#039;&#039; (2014)&lt;br /&gt;
#:[http://arxiv.org/abs/1408.4401 DNA hairpins primarily promote duplex melting rather than inhibiting hybridization]&lt;br /&gt;
#  R. Machinek, T.E. Ouldridge, N.E.C. Haley, J. Bath, A. J. Turberfield, &#039;&#039;Nature Comm.&#039;&#039; (2014)&lt;br /&gt;
#:[http://www.nature.com/ncomms/2014/141110/ncomms6324/full/ncomms6324.html Programmable energy landscapes for kinetic control of DNA strand displacement]&lt;br /&gt;
# M. Mosayebi, F. Romano, T. E. Ouldridge, A. A. Louis, J. P. K. Doye, &#039;&#039;J. Phys. Chem. B&#039;&#039; &#039;&#039;&#039;118&#039;&#039;&#039;, 14326-14335 (2014)&lt;br /&gt;
#:[http://arxiv.org/ct?url=http%3A%2F%2Fdx.doi.org%2F10%252E1021%2Fjp510061f&amp;amp;v=13bb91c1 The role of loop stacking in the dynamics of DNA hairpin formation] ([http://arxiv.org/abs/1410.1218 arXiv])&lt;br /&gt;
# P. Krstić, B. Ashcroft and S. Lindsay, &#039;&#039;Nanotechnology&#039;&#039;, (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1088/0957-4484/26/8/084001 Physical model for recognition tunneling]&lt;br /&gt;
# F. Romano and F. Sciortino, &#039;&#039;Phys. Rev. Lett.&#039;&#039; &#039;&#039;&#039;114&#039;&#039;&#039;, 078104 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1103/PhysRevLett.114.078104 Switching Bonds in a DNA Gel: An All-DNA Vitrimer]&lt;br /&gt;
#  J. S. Schreck, T. E. Ouldridge, F. Romano, A. A. Louis, J.P.K. Doye, &#039;&#039;arxiv&#039;&#039; (2014)&lt;br /&gt;
#:[http://arxiv.org/abs/1412.6309 Characterizing the bending and flexibility induced by bulges in DNA duplexes]&lt;br /&gt;
#  M. Mosayebi, A. A. Louis, J.P.K. Doye, T. E. Ouldridge &#039;&#039;arxiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1502.03623 Force-induced rupture of a DNA duplex]&lt;br /&gt;
# T. E. Ouldridge, &#039;&#039;Mol. Phys.&#039;&#039; &#039;&#039;&#039;113&#039;&#039;&#039;, 1-15 (2015)&lt;br /&gt;
#:[http://www.tandfonline.com/doi/abs/10.1080/00268976.2014.975293 DNA nanotechnology: understanding and optimisation through simulation] ([http://arxiv.org/abs/1411.1927 arXiv])&lt;br /&gt;
# P. Šulc, T. E. Ouldridge, F. Romano, J.P.K. Doye, A. A. Louis,  &#039;&#039;Biophys. J.&#039;&#039; &#039;&#039;&#039;108&#039;&#039;&#039;, iss. 5, 1238-1247 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1016/j.bpj.2015.01.023 Modelling toehold-mediated RNA strand displacement] ([http://arxiv.org/abs/1411.3239 arXiv])&lt;br /&gt;
# B. E. K. Snodin, F. Randisi, M. Mosayebi, P. Šulc, J. S. Schreck, F. Romano, T. E. Ouldridge, R. Tsukanov, E. Nir, A. A. Louis, J. P. K. Doye,  &#039;&#039;arxiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1504.00821 Introducing Improved Structural Properties and Salt Dependence into a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/1504.00821 arXiv])&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Publications&amp;diff=935</id>
		<title>Publications</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Publications&amp;diff=935"/>
		<updated>2015-04-10T11:08:14Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#T. E. Ouldridge, A. A. Louis and J. P. K. Doye, &#039;&#039;Phys. Rev. Lett&#039;&#039;. &#039;&#039;&#039;104&#039;&#039;&#039;, 178101 (2010)&lt;br /&gt;
#:[http://prl.aps.org/abstract/PRL/v104/i17/e178101 DNA Nanotweezers Studied with a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/0911.0555 arXiv])&lt;br /&gt;
#T. E. Ouldridge, A. A. Louis and J. P. K. Doye, &#039;&#039;J. Chem. Phys&#039;&#039;, &#039;&#039;&#039;134&#039;&#039;&#039;, 085101 (2011)&lt;br /&gt;
#:[http://link.aip.org/link/?JCP/134/085101 Structural, mechanical and thermodynamic properties of a coarse-grained DNA model] ([http://arxiv.org/abs/arXiv:1009.4480 arXiv])&lt;br /&gt;
#T. E. Ouldridge, D.Phil. Thesis, University of Oxford, 2011.&lt;br /&gt;
#:[http://ora.ox.ac.uk/objects/uuid:b2415bb2-7975-4f59-b5e2-8c022b4a3719 Coarse-grained modelling of DNA and DNA self-assembly]&lt;br /&gt;
#F. Romano, A. Hudson, J. P. K. Doye, T. E. Ouldridge, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;136&#039;&#039;&#039;, 215102 (2012)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v136/i21/p215102_s1 The effect of topology on the structure and free energy landscape of DNA kissing complexes] ([http://arxiv.org/abs/1203.3577 arXiv])&lt;br /&gt;
#C. De Michele, L. Rovigatti, T. Bellini, F. Sciortino, &#039;&#039;Soft Matter&#039;&#039; &#039;&#039;&#039;8&#039;&#039;&#039;, 8388 (2012)&lt;br /&gt;
#:[http://pubs.rsc.org/en/content/articlelanding/2012/sm/c2sm25845e Self-assembly of short DNA duplexes: from a coarse-grained model to experiments through a theoretical link] ([http://arxiv.org/abs/1204.0985 arXiv])&lt;br /&gt;
#C. Matek, T. E. Ouldridge, A. Levy, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Phys. Chem. B&#039;&#039; (2012)&lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/jp3080755 DNA cruciform arms nucleate through a correlated but non-synchronous cooperative mechanism] ([http://arxiv.org/abs/1206.2636 arXiv])&lt;br /&gt;
#P. Šulc, F. Romano, T. E. Ouldridge, L. Rovigatti, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;137&#039;&#039;&#039;, 135101 (2012)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v137/i13/p135101_s1 Sequence-dependent thermodynamics of a coarse-grained DNA model] ([http://arxiv.org/abs/1207.3391 arxiv]) &lt;br /&gt;
#F. Romano, D. Chakraborty, J. P. K. Doye, T. E. Ouldridge, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;138&#039;&#039;&#039;, 085101 (2013)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v138/i8/p085101_s1 Coarse-grained simulations of DNA overstretching] ([http://arxiv.org/abs/1209.5892 arXiv])&lt;br /&gt;
#P. Šulc, T. E. Ouldridge, F. Romano, J. P. K. Doye, A. A. Louis, &#039;&#039;Natural Computing&#039;&#039; &#039;&#039;&#039;13&#039;&#039;&#039;, 535  (2014) &lt;br /&gt;
#:[http://link.springer.com/article/10.1007%2Fs11047-013-9391-8 Simulating a burnt-bridges DNA motor with a coarse-grained DNA model] ([http://arxiv.org/abs/1212.4536 arXiv])&lt;br /&gt;
#T. E. Ouldridge, R. L. Hoare, A. A. Louis, J. P. K. Doye, J. Bath, A. J. Turberfield, &#039;&#039;ACS Nano&#039;&#039; (2013) &lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/nn3058483 Optimizing DNA nanotechnology through coarse-grained modelling: a two-footed DNA walker]&lt;br /&gt;
#T. E. Ouldridge, P. Šulc,  F. Romano, J. P. K. Doye, A. A. Louis, &#039;&#039;Nucleic Acids Res.&#039;&#039;, (2013) &lt;br /&gt;
#:[http://nar.oxfordjournals.org/content/early/2013/08/08/nar.gkt687 DNA hybridization kinetics: zippering, internal displacement and sequence dependence] ([http://arxiv.org/abs/1303.3370 arXiv])&lt;br /&gt;
#J.P.K. Doye, T. E. Ouldridge, A. A. Louis, F. Romano, P. Šulc, C. Matek, B.E.K. Snodin, L. Rovigatti, J. S. Schreck, R.M. Harrison, W.P.J. Smith, &#039;&#039;Phys. Chem. Chem. Phys&#039;&#039; (2013)&lt;br /&gt;
#:[http://pubs.rsc.org/en/content/articlelanding/2013/cp/c3cp53545b#!divAbstract Coarse-graining DNA for simulations of DNA nanotechnology] ([http://arxiv.org/abs/1308.3843 arXiv])&lt;br /&gt;
# N. Srinivas, T. E. Ouldridge, P. Šulc, J. M. Schaeffer, B. Yurke, A. A. Louis, J. P. K. Doye, E. Winfree, &#039;&#039;Nucleic Acids Res.&#039;&#039;, (2013)&lt;br /&gt;
#:[http://nar.oxfordjournals.org/content/early/2013/09/07/nar.gkt801.full?sid=762d341b-b72f-4a09-9235-20ad3ef8aeed  On the biophysics and kinetics of toehold-mediated DNA strand displacement]&lt;br /&gt;
#L. Rovigatti, F. Bomboi, F. Sciortino, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;140&#039;&#039;&#039;, 154903 (2014)&lt;br /&gt;
#:[http://dx.doi.org/10.1063/1.4870467 Accurate phase diagram of tetravalent DNA nanostars] ([http://arxiv.org/abs/1401.2837 arXiv])&lt;br /&gt;
# L. Rovigatti, P. Šulc, I. Reguly, F. Romano, &#039;&#039;J. Comput. Chem.&#039;&#039;, &#039;&#039;&#039;36&#039;&#039;&#039;, 1 (2015)&lt;br /&gt;
#:[http://onlinelibrary.wiley.com/doi/10.1002/jcc.23763/pdf A comparison between parallelization approaches in molecular dynamics simulations on GPUs] ([http://arxiv.org/abs/1401.4350 arXiv])&lt;br /&gt;
#P. Šulc, F. Romano, T. E. Ouldridge,  J. P. K. Doye, A. A. Louis,  &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;140&#039;&#039;&#039;, 235102 (2014)&lt;br /&gt;
#:[http://scitation.aip.org/content/aip/journal/jcp/140/23/10.1063/1.4881424 A nucleotide-level coarse-grained model of RNA] ([http://arxiv.org/abs/1403.4180 arXiv])&lt;br /&gt;
#L. Rovigatti, F. Smallenburg, F. Romano, F. Sciortino, &#039;&#039;ACS Nano&#039;&#039;, (2014)&lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/nn501138w Gels of DNA Nanostars Never Crystallise]&lt;br /&gt;
#C. Matek, T. E. Ouldridge, J. P. K. Doye, A. A. Louis, &#039;&#039;Sci. Rep.&#039;&#039;, &#039;&#039;&#039;5&#039;&#039;&#039;, 7655 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1038/srep07655 Plectoneme tip bubbles: Coupled denaturation and writhing in supercoiled DNA] ([http://arxiv.org/abs/1404.2869 arXiv])&lt;br /&gt;
#Q. Wang, B. M. Pettitt, &#039;&#039;Biophys. J.&#039;&#039; &#039;&#039;&#039;106&#039;&#039;&#039;, 1182–1193 (2014)&lt;br /&gt;
#:[http://www.sciencedirect.com/science/article/pii/S0006349514000927 Modeling DNA Thermodynamics under Torsional Stress]&lt;br /&gt;
#  J. S. Schreck, T. E. Ouldridge, F. Romano, P. Šulc, L. Shaw, A. A. Louis, J.P.K. Doye, &#039;&#039;arxiv&#039;&#039; (2014)&lt;br /&gt;
#:[http://arxiv.org/abs/1408.4401 DNA hairpins primarily promote duplex melting rather than inhibiting hybridization]&lt;br /&gt;
#  R. Machinek, T.E. Ouldridge, N.E.C. Haley, J. Bath, A. J. Turberfield, &#039;&#039;Nature Comm.&#039;&#039; (2014)&lt;br /&gt;
#:[http://www.nature.com/ncomms/2014/141110/ncomms6324/full/ncomms6324.html Programmable energy landscapes for kinetic control of DNA strand displacement]&lt;br /&gt;
# M. Mosayebi, F. Romano, T. E. Ouldridge, A. A. Louis, J. P. K. Doye, &#039;&#039;J. Phys. Chem. B&#039;&#039; &#039;&#039;&#039;118&#039;&#039;&#039;, 14326-14335 (2014)&lt;br /&gt;
#:[http://arxiv.org/ct?url=http%3A%2F%2Fdx.doi.org%2F10%252E1021%2Fjp510061f&amp;amp;v=13bb91c1 The role of loop stacking in the dynamics of DNA hairpin formation] ([http://arxiv.org/abs/1410.1218 arXiv])&lt;br /&gt;
# P. Krstić, B. Ashcroft and S. Lindsay, &#039;&#039;Nanotechnology&#039;&#039;, (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1088/0957-4484/26/8/084001 Physical model for recognition tunneling]&lt;br /&gt;
# F. Romano and F. Sciortino, &#039;&#039;Phys. Rev. Lett.&#039;&#039; &#039;&#039;&#039;114&#039;&#039;&#039;, 078104 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1103/PhysRevLett.114.078104 Switching Bonds in a DNA Gel: An All-DNA Vitrimer]&lt;br /&gt;
#  J. S. Schreck, T. E. Ouldridge, F. Romano, A. A. Louis, J.P.K. Doye, &#039;&#039;arxiv&#039;&#039; (2014)&lt;br /&gt;
#:[http://arxiv.org/abs/1412.6309 Characterizing the bending and flexibility induced by bulges in DNA duplexes]&lt;br /&gt;
#  M. Mosayebi, A. A. Louis, J.P.K. Doye, T. E. Ouldridge &#039;&#039;arxiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1502.03623 Force-induced rupture of a DNA duplex]&lt;br /&gt;
# T. E. Ouldridge, &#039;&#039;Mol. Phys.&#039;&#039; &#039;&#039;&#039;113&#039;&#039;&#039;, 1-15 (2015)&lt;br /&gt;
#:[http://www.tandfonline.com/doi/abs/10.1080/00268976.2014.975293 DNA nanotechnology: understanding and optimisation through simulation] ([http://arxiv.org/abs/1411.1927 arXiv])&lt;br /&gt;
# P. Šulc, T. E. Ouldridge, F. Romano, J.P.K. Doye, A. A. Louis,  &#039;&#039;Biophys. J.&#039;&#039; &#039;&#039;&#039;108&#039;&#039;&#039;, iss. 5, 1238-1247 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1016/j.bpj.2015.01.023 Modelling toehold-mediated RNA strand displacement] ([http://arxiv.org/abs/1411.3239 arXiv])&lt;br /&gt;
# Benedict E. K. Snodin, Ferdinando Randisi, Majid Mosayebi, Petr Šulc, John S. Schreck, Flavio Romano, Thomas E. Ouldridge, Roman Tsukanov, Eyal Nir, Ard A. Louis, Jonathan P. K. Doye,  &#039;&#039;arxiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1504.00821 Introducing Improved Structural Properties and Salt Dependence into a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/1504.00821 arXiv])&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Publications&amp;diff=929</id>
		<title>Publications</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Publications&amp;diff=929"/>
		<updated>2015-03-05T15:08:40Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#T. E. Ouldridge, A. A. Louis and J. P. K. Doye, &#039;&#039;Phys. Rev. Lett&#039;&#039;. &#039;&#039;&#039;104&#039;&#039;&#039;, 178101 (2010)&lt;br /&gt;
#:[http://prl.aps.org/abstract/PRL/v104/i17/e178101 DNA Nanotweezers Studied with a Coarse-Grained Model of DNA] ([http://arxiv.org/abs/0911.0555 arXiv])&lt;br /&gt;
#T. E. Ouldridge, A. A. Louis and J. P. K. Doye, &#039;&#039;J. Chem. Phys&#039;&#039;, &#039;&#039;&#039;134&#039;&#039;&#039;, 085101 (2011)&lt;br /&gt;
#:[http://link.aip.org/link/?JCP/134/085101 Structural, mechanical and thermodynamic properties of a coarse-grained DNA model] ([http://arxiv.org/abs/arXiv:1009.4480 arXiv])&lt;br /&gt;
#T. E. Ouldridge, D.Phil. Thesis, University of Oxford, 2011.&lt;br /&gt;
#:[http://ora.ox.ac.uk/objects/uuid:b2415bb2-7975-4f59-b5e2-8c022b4a3719 Coarse-grained modelling of DNA and DNA self-assembly]&lt;br /&gt;
#F. Romano, A. Hudson, J. P. K. Doye, T. E. Ouldridge, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;136&#039;&#039;&#039;, 215102 (2012)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v136/i21/p215102_s1 The effect of topology on the structure and free energy landscape of DNA kissing complexes] ([http://arxiv.org/abs/1203.3577 arXiv])&lt;br /&gt;
#C. De Michele, L. Rovigatti, T. Bellini, F. Sciortino, &#039;&#039;Soft Matter&#039;&#039; &#039;&#039;&#039;8&#039;&#039;&#039;, 8388 (2012)&lt;br /&gt;
#:[http://pubs.rsc.org/en/content/articlelanding/2012/sm/c2sm25845e Self-assembly of short DNA duplexes: from a coarse-grained model to experiments through a theoretical link] ([http://arxiv.org/abs/1204.0985 arXiv])&lt;br /&gt;
#C. Matek, T. E. Ouldridge, A. Levy, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Phys. Chem. B&#039;&#039; (2012)&lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/jp3080755 DNA cruciform arms nucleate through a correlated but non-synchronous cooperative mechanism] ([http://arxiv.org/abs/1206.2636 arXiv])&lt;br /&gt;
#P. Šulc, F. Romano, T. E. Ouldridge, L. Rovigatti, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;137&#039;&#039;&#039;, 135101 (2012)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v137/i13/p135101_s1 Sequence-dependent thermodynamics of a coarse-grained DNA model] ([http://arxiv.org/abs/1207.3391 arxiv]) &lt;br /&gt;
#F. Romano, D. Chakraborty, J. P. K. Doye, T. E. Ouldridge, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;138&#039;&#039;&#039;, 085101 (2013)&lt;br /&gt;
#:[http://jcp.aip.org/resource/1/jcpsa6/v138/i8/p085101_s1 Coarse-grained simulations of DNA overstretching] ([http://arxiv.org/abs/1209.5892 arXiv])&lt;br /&gt;
#P. Šulc, T. E. Ouldridge, F. Romano, J. P. K. Doye, A. A. Louis, &#039;&#039;Natural Computing&#039;&#039; &#039;&#039;&#039;13&#039;&#039;&#039;, 535  (2014) &lt;br /&gt;
#:[http://link.springer.com/article/10.1007%2Fs11047-013-9391-8 Simulating a burnt-bridges DNA motor with a coarse-grained DNA model] ([http://arxiv.org/abs/1212.4536 arXiv])&lt;br /&gt;
#T. E. Ouldridge, R. L. Hoare, A. A. Louis, J. P. K. Doye, J. Bath, A. J. Turberfield, &#039;&#039;ACS Nano&#039;&#039; (2013) &lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/nn3058483 Optimizing DNA nanotechnology through coarse-grained modelling: a two-footed DNA walker]&lt;br /&gt;
#T. E. Ouldridge, P. Šulc,  F. Romano, J. P. K. Doye, A. A. Louis, &#039;&#039;Nucleic Acids Res.&#039;&#039;, (2013) &lt;br /&gt;
#:[http://nar.oxfordjournals.org/content/early/2013/08/08/nar.gkt687 DNA hybridization kinetics: zippering, internal displacement and sequence dependence] ([http://arxiv.org/abs/1303.3370 arXiv])&lt;br /&gt;
#J.P.K. Doye, T. E. Ouldridge, A. A. Louis, F. Romano, P. Šulc, C. Matek, B.E.K. Snodin, L. Rovigatti, J. S. Schreck, R.M. Harrison, W.P.J. Smith, &#039;&#039;Phys. Chem. Chem. Phys&#039;&#039; (2013)&lt;br /&gt;
#:[http://pubs.rsc.org/en/content/articlelanding/2013/cp/c3cp53545b#!divAbstract Coarse-graining DNA for simulations of DNA nanotechnology] ([http://arxiv.org/abs/1308.3843 arXiv])&lt;br /&gt;
# N. Srinivas, T. E. Ouldridge, P. Šulc, J. M. Schaeffer, B. Yurke, A. A. Louis, J. P. K. Doye, E. Winfree, &#039;&#039;Nucleic Acids Res.&#039;&#039;, (2013)&lt;br /&gt;
#:[http://nar.oxfordjournals.org/content/early/2013/09/07/nar.gkt801.full?sid=762d341b-b72f-4a09-9235-20ad3ef8aeed  On the biophysics and kinetics of toehold-mediated DNA strand displacement]&lt;br /&gt;
#L. Rovigatti, F. Bomboi, F. Sciortino, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;140&#039;&#039;&#039;, 154903 (2014)&lt;br /&gt;
#:[http://dx.doi.org/10.1063/1.4870467 Accurate phase diagram of tetravalent DNA nanostars] ([http://arxiv.org/abs/1401.2837 arXiv])&lt;br /&gt;
# L. Rovigatti, P. Šulc, I. Reguly, F. Romano, &#039;&#039;J. Comput. Chem.&#039;&#039;, &#039;&#039;&#039;36&#039;&#039;&#039;, 1 (2015)&lt;br /&gt;
#:[http://onlinelibrary.wiley.com/doi/10.1002/jcc.23763/pdf A comparison between parallelization approaches in molecular dynamics simulations on GPUs] ([http://arxiv.org/abs/1401.4350 arXiv])&lt;br /&gt;
#P. Šulc, F. Romano, T. E. Ouldridge,  J. P. K. Doye, A. A. Louis,  &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;140&#039;&#039;&#039;, 235102 (2014)&lt;br /&gt;
#:[http://scitation.aip.org/content/aip/journal/jcp/140/23/10.1063/1.4881424 A nucleotide-level coarse-grained model of RNA] ([http://arxiv.org/abs/1403.4180 arXiv])&lt;br /&gt;
#L. Rovigatti, F. Smallenburg, F. Romano, F. Sciortino, &#039;&#039;ACS Nano&#039;&#039;, (2014)&lt;br /&gt;
#:[http://pubs.acs.org/doi/abs/10.1021/nn501138w Gels of DNA Nanostars Never Crystallise]&lt;br /&gt;
#C. Matek, T. E. Ouldridge, J. P. K. Doye, A. A. Louis, &#039;&#039;Sci. Rep.&#039;&#039;, &#039;&#039;&#039;5&#039;&#039;&#039;, 7655 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1038/srep07655 Plectoneme tip bubbles: Coupled denaturation and writhing in supercoiled DNA] ([http://arxiv.org/abs/1404.2869 arXiv])&lt;br /&gt;
#Q. Wang, B. M. Pettitt, &#039;&#039;Biophys. J.&#039;&#039; &#039;&#039;&#039;106&#039;&#039;&#039;, 1182–1193 (2014)&lt;br /&gt;
#:[http://www.sciencedirect.com/science/article/pii/S0006349514000927 Modeling DNA Thermodynamics under Torsional Stress]&lt;br /&gt;
#  J. S. Schreck, T. E. Ouldridge, F. Romano, P. Šulc, L. Shaw, A. A. Louis, J.P.K. Doye, &#039;&#039;arxiv&#039;&#039; (2014)&lt;br /&gt;
#:[http://arxiv.org/abs/1408.4401 DNA hairpins primarily promote duplex melting rather than inhibiting hybridization]&lt;br /&gt;
#  T. E. Ouldridge, &#039;&#039;arxiv&#039;&#039; (2014)&lt;br /&gt;
#:[http://arxiv.org/abs/1411.1927 DNA nanotechnology: understanding and optimisation through simulation]&lt;br /&gt;
#  R. Machinek, T.E. Ouldridge, N.E.C. Haley, J. Bath, A. J. Turberfield, &#039;&#039;Nature Comm.&#039;&#039; (2014)&lt;br /&gt;
#:[http://www.nature.com/ncomms/2014/141110/ncomms6324/full/ncomms6324.html Programmable energy landscapes for kinetic control of DNA strand displacement]&lt;br /&gt;
# M. Mosayebi, F. Romano, T. E. Ouldridge, A. A. Louis, J. P. K. Doye, &#039;&#039;J. Phys. Chem. B&#039;&#039; &#039;&#039;&#039;118&#039;&#039;&#039;, 14326-14335 (2014)&lt;br /&gt;
#:[http://arxiv.org/ct?url=http%3A%2F%2Fdx.doi.org%2F10%252E1021%2Fjp510061f&amp;amp;v=13bb91c1 The role of loop stacking in the dynamics of DNA hairpin formation] ([http://arxiv.org/abs/1410.1218 arXiv])&lt;br /&gt;
# P. Šulc, T. E. Ouldridge, F. Romano, J.P.K. Doye, A. A. Louis  &#039;&#039;arxiv&#039;&#039; (2014)&lt;br /&gt;
#:[http://arxiv.org/abs/1411.3239 Modelling toehold-mediated RNA strand displacement]&lt;br /&gt;
# P. Krstić, B. Ashcroft and S. Lindsay, &#039;&#039;Nanotechnology&#039;&#039;, (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1088/0957-4484/26/8/084001 Physical model for recognition tunneling]&lt;br /&gt;
# F. Romano and F. Sciortino, &#039;&#039;Phys. Rev. Lett.&#039;&#039; &#039;&#039;&#039;114&#039;&#039;&#039;, 078104 (2015)&lt;br /&gt;
#:[http://dx.doi.org/10.1103/PhysRevLett.114.078104 Switching Bonds in a DNA Gel: An All-DNA Vitrimer]&lt;br /&gt;
#  J. S. Schreck, T. E. Ouldridge, F. Romano, A. A. Louis, J.P.K. Doye, &#039;&#039;arxiv&#039;&#039; (2014)&lt;br /&gt;
#:[http://arxiv.org/abs/1412.6309 Characterizing the bending and flexibility induced by bulges in DNA duplexes]&lt;br /&gt;
#  M. Mosayebi, A. A. Louis, J.P.K. Doye, T. E. Ouldridge &#039;&#039;arxiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1502.03623 Force-induced rupture of a DNA duplex]&lt;br /&gt;
#  M. Mosayebi, A. A. Louis, J.P.K. Doye, T. E. Ouldridge &#039;&#039;arxiv&#039;&#039; (2015)&lt;br /&gt;
#:[http://arxiv.org/abs/1502.03623 Force-induced rupture of a DNA duplex]&lt;br /&gt;
# T. E. Ouldridge, &#039;&#039;Mol. Phys.&#039;&#039; &#039;&#039;&#039;113&#039;&#039;&#039;, 1-15 (2015)&lt;br /&gt;
#:[http://www.tandfonline.com/doi/abs/10.1080/00268976.2014.975293 DNA nanotechnology: understanding and optimisation through simulation] ([http://arxiv.org/abs/1411.1927 arXiv])&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Main_Page&amp;diff=921</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Main_Page&amp;diff=921"/>
		<updated>2015-02-04T10:53:24Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* Acknowledgments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== oxDNA == &lt;br /&gt;
&lt;br /&gt;
oxDNA is a simulation code originally developed to implement the coarse-grained DNA model introduced by T. E. Ouldridge, J. P. K. Doye and A. A. Louis. It has been since reworked and it is now an extensible simulation+analysis framework. It natively supports DNA (oxDNA model), RNA (oxRNA model), Lennard-Jones and patchy particle simulations on both CPUs and NVIDIA GPUs.&lt;br /&gt;
&lt;br /&gt;
The code implements Monte Carlo and Molecular Dynamics and can be used as a basis to numerically study DNA, RNA, Lennard-Jones and patchy particle systems. The developers are F. Romano, P. Šulc, B. Snodin and T. E. Ouldridge in the [http://physchem.ox.ac.uk/~doye/jon/ Doye] and [http://www-thphys.physics.ox.ac.uk/people/ArdLouis/ Louis] groups at the University of Oxford and L. Rovigatti, formerly in the [http://pacci.phys.uniroma1.it/?q=node/40 Sciortino] group in Rome and now in the [http://comp-phys.univie.ac.at/homepages/homepage-likos/likos-group/ Likos] group in Vienna.&lt;br /&gt;
&lt;br /&gt;
The oxDNA and oxRNA models are intended to provide a physical representation of the thermodynamic and mechanical properties of single- and double-stranded DNA and RNA, as well as the transition between the two. At the same time, the representation of DNA and RNA is sufficiently simple to allow access to assembly processes which occur on long timescales, beyond the reach of atomistic simulations. Basic examples include duplex formation from single strands, and the folding of a self-complementary single strand into a hairpin. These are the underlying processes of the fast-growing field of  [http://en.wikipedia.org/wiki/DNA_nanotechnology DNA nanotechnology] and RNA nanotechnology, as well as many biophysical uses of DNA/RNA, allowing the model to be used to understand these fascinating systems.&lt;br /&gt;
&lt;br /&gt;
* [[Download and Installation]]&lt;br /&gt;
&lt;br /&gt;
* [[Features]]&lt;br /&gt;
&lt;br /&gt;
* [[DNA model introduction]]&lt;br /&gt;
&lt;br /&gt;
* [[RNA model introduction]]&lt;br /&gt;
&lt;br /&gt;
* [[Documentation]]&lt;br /&gt;
&lt;br /&gt;
* [[:Category:Examples|Examples]]&lt;br /&gt;
&lt;br /&gt;
* [[Screenshots|Screenshots and movies]]&lt;br /&gt;
&lt;br /&gt;
* [[Gallery of studied systems]]&lt;br /&gt;
&lt;br /&gt;
* [[Publications]]&lt;br /&gt;
&lt;br /&gt;
* [[License and Copyright]]&lt;br /&gt;
&lt;br /&gt;
* [[Previous version]]&lt;br /&gt;
&lt;br /&gt;
* [[Contact information]]&lt;br /&gt;
&lt;br /&gt;
== News ==&lt;br /&gt;
* Follow the latest updates about oxDNA on our twitter account: [https://twitter.com/ox_dna ox_dna]&lt;br /&gt;
* You can post questions about the installation and usage of our code to the newly created [http://sourceforge.net/p/oxdna/discussion/ Discussion forum] for oxDNA at sourceforge.net&lt;br /&gt;
&lt;br /&gt;
== Acknowledgments ==&lt;br /&gt;
&lt;br /&gt;
We thank our co-workers C. Matek, R. Harrison and W. Smith for having contributed bits of code and/or material for the examples and our webmasters Russell Jones and Greg Agacinski for maintaining the website.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=DsDNA_persistence_length&amp;diff=909</id>
		<title>DsDNA persistence length</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=DsDNA_persistence_length&amp;diff=909"/>
		<updated>2014-10-08T11:34:07Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* Persistence length of a double-stranded DNA */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Examples]]&lt;br /&gt;
== Persistence length of a double-stranded DNA ==&lt;br /&gt;
&lt;br /&gt;
The example shows how to calculate a persistence length of a double stranded DNA molecule. &lt;br /&gt;
dsDNA persistence length. The persistence length in this example is calculated using the following formula (see [http://jcp.aip.org/resource/1/jcpsa6/v134/i8/p085101_s1?bypassSSO=1] for details):&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/PetrSulc/images/eqn.png&lt;br /&gt;
&lt;br /&gt;
In the &amp;lt;tt&amp;gt; EXAMPLES/PERSISTENCE_LENGTH&amp;lt;/tt&amp;gt; directory, you will find a setup for calculating the persistence length of a 202 base pairs long dsDNA. &lt;br /&gt;
Note that for calculating a persistence length of a dsDNA, one needs a large number of decorrelated states. To obtain the states (which will be saved into a trajectory file), run the simulation program using the prepared input_persistence file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;../../bin/oxDNA input_persistence&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The program will run a molecular dynamics simulation at 23 °C and record the individual configurations. By default, they are saved in the &amp;lt;tt&amp;gt;trajectory.dat&amp;lt;/tt&amp;gt; file. To analyze the data, use the python script &amp;lt;tt&amp;gt;dspl.py&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;./dspl.py trajectory.dat init.top 10 50&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This program will produce a table of correlations between helical vectors, http://www-thphys.physics.ox.ac.uk/people/PetrSulc/images/eqn2.png.&lt;br /&gt;
&lt;br /&gt;
The program &amp;lt;tt&amp;gt;dspl.py&amp;lt;/tt&amp;gt; requires &amp;lt;tt&amp;gt;base.py&amp;lt;/tt&amp;gt; in the UTILS directory to be present and to have UTILS directory set in your PYTHONPATH environment variable. The program calculates the local helical axis vector (n_k) as a unit vector pointing from the midpoint of hydrogen bonding sites of k-th base pair to the midpoint between (k+1)-th base pair. &lt;br /&gt;
The init.top file contains topology of the 202 base pairs long strand (included in the &amp;lt;tt&amp;gt; EXAMPLES/PERSISTENCE_LENGTH&amp;lt;/tt&amp;gt;). In the example above, the program starts at the 10-th base pair and calculates correlations of n_10 with n_11, n_12, etc. up to n_60. It then prints out the correlations (one per line). Using an exponential fit to these data, one can find the persistence length, as illustrated in the following picture:&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/PetrSulc/images/ds.png&lt;br /&gt;
&lt;br /&gt;
The exponential fit shows, in this particular example, a persistence length of 124.8 base pairs.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=908</id>
		<title>Documentation</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Documentation&amp;diff=908"/>
		<updated>2014-09-29T13:47:29Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Compile options==&lt;br /&gt;
&lt;br /&gt;
Compiling oxDNA requires that you have a working &amp;lt;tt&amp;gt;cmake&amp;lt;/tt&amp;gt; software and C++ compiler on your machine. The instructions are provided in the [[Download and Installation]] section.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;oxDNA input_file&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The input file contains all the relevant information for the program to run, such as what initial configuration to use, the topology of the system, how often to print the energies to a file, etc. Please make sure you read the [[Thermostat|thermostat]] page if you use molecular dynamics.&lt;br /&gt;
&lt;br /&gt;
==Input file==&lt;br /&gt;
&lt;br /&gt;
As always in UNIX environments, everything is case sensitive.&lt;br /&gt;
&lt;br /&gt;
*Options are in the form key = value&lt;br /&gt;
*There can be arbitrary spaces before and after both key and value&lt;br /&gt;
*Line with a leading # will be treated as comments&lt;br /&gt;
*The | (pipe) sign is the separator between the different values that can be used to specify a value for the key.&lt;br /&gt;
*Keys between [ and ] are optional, the value after the equal sign is the default value&lt;br /&gt;
&lt;br /&gt;
Here we provide a list of the most commonly used input options. The complete and most up-to-date list of possible options can be found [[Input_options|here]] or in the &amp;lt;tt&amp;gt;README&amp;lt;/tt&amp;gt; file in the main directory of the simulation code.&lt;br /&gt;
&lt;br /&gt;
The input options of the previous oxDNA version can be found [[Input_options_of_the_previous_version|here]].&lt;br /&gt;
&lt;br /&gt;
===Generic options===&lt;br /&gt;
The options listed here define the generic behavior of the entire program.&lt;br /&gt;
;[interaction_type = DNA]: DNA|RNA|patchy|LJ&lt;br /&gt;
: (selects the model for the simulation. DNA ([[DNA_model_introduction|oxDNA model]]) is the default option. RNA ([[RNA_model_introduction|oxRNA model]]), LJ (Lennard-Jones) and patchy particles are also implemented&lt;br /&gt;
;[sim_type=MD]: MD|MC|VMMC&lt;br /&gt;
:MD = Molecular Dynamics, MC = Monte Carlo, VMMC = Virtual Move Monte Carlo&lt;br /&gt;
;backend: CPU | CUDA &lt;br /&gt;
: (only sim_type=MD is supported if you choose CUDA backend)&lt;br /&gt;
;backend_precision: float|double|mixed&lt;br /&gt;
: (mixed option is available only for CUDA backend. It is recommended choice for optimal performance on CUDA machines, double is recommended for CPU simulations)&lt;br /&gt;
;[debug=0]: 0|1&lt;br /&gt;
: 1 if you want verbose logs, 0 otherwise.&lt;br /&gt;
&lt;br /&gt;
===Simulation options===&lt;br /&gt;
	The options listed here specify the behaviour of the simulation.&lt;br /&gt;
&lt;br /&gt;
;steps: number of steps to be performed.&lt;br /&gt;
		&lt;br /&gt;
;[restart_step_counter=0]: 0|1&lt;br /&gt;
:0 means that the step counter will start from the value read in the configuration file; if 1, the step counter will be reset to 0. The total duration of the simulation is unchanged.&lt;br /&gt;
			&lt;br /&gt;
;[seed=time(NULL)]: seed for the random number generator. On Unix systems, it will use by default a number from /dev/urandom + time(NULL)&lt;br /&gt;
		&lt;br /&gt;
;T: temperature of the simulation. It can be expressed in simulation units or kelvin (append a k or K after the value) or celsius (append a c or C after the value).&lt;br /&gt;
:Examples:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Value&lt;br /&gt;
! Simulation Units&lt;br /&gt;
|-&lt;br /&gt;
| 0.1&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300 K&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 300k&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85c&lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
| 26.85 C &lt;br /&gt;
| 0.1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
		&lt;br /&gt;
;verlet_skin: if a particle moves more than verlet_skin then the lists will be updated. Its name is somewhat misleading: the actual verlet skin is 2*verlet_skin.&lt;br /&gt;
	&lt;br /&gt;
;[use_average_seq=1]: 0|1&lt;br /&gt;
: specifies whether to use the default hard-coded average parameters for base-pairing and stacking interaction strengths or not. If sequence dependence is to be used, set this to 0 and specify seq_dep_file.&lt;br /&gt;
	&lt;br /&gt;
;[seq_dep_file]: specifies the file from which the sequence dependent parameters should be read. Mandatory if use_average_seq=no, ignored otherwise. A sample file is provided (sequence_dependent_parameters.txt).&lt;br /&gt;
&lt;br /&gt;
;[external_forces=0]: 0|1&lt;br /&gt;
: specifies whether there are external forces acting on the nucleotides or not. If it is set to 1, then a file which specifies the external forces&#039; configuration has to be provided (see external_forces_file).&lt;br /&gt;
&lt;br /&gt;
;[external_forces_file]: specifies the file containing all the external forces&#039; configurations. Currently there are six supported force types (see EXAMPLES/TRAPS for some examples):&lt;br /&gt;
:*string&lt;br /&gt;
:*twist&lt;br /&gt;
:*trap&lt;br /&gt;
:*repulsion_plane&lt;br /&gt;
:*repulsion_plane_moving&lt;br /&gt;
:*mutual_trap&lt;br /&gt;
	&lt;br /&gt;
====Molecular dynamics simulations options====&lt;br /&gt;
&lt;br /&gt;
;dt: time step of the integration.&lt;br /&gt;
&lt;br /&gt;
;thermostat: no|refresh|brownian &lt;br /&gt;
:no means no thermostat will be used. refresh will refresh all the particle&#039;s velocities from a maxwellian every newtonian_steps steps. john is an Anderson-like thermostat (see pt). Make sure you read [[Thermostat|thermostat]].&lt;br /&gt;
&lt;br /&gt;
;newtonian_steps: required if thermostat != no&lt;br /&gt;
:number of steps after which a procedure of thermalization will be performed.&lt;br /&gt;
			&lt;br /&gt;
;pt: used if thermostat == john. It&#039;s the probability that a particle&#039;s velocity will be refreshed during a thermalization procedure.&lt;br /&gt;
		&lt;br /&gt;
;diff_coeff: required if pt is not specified&lt;br /&gt;
:used internally to automatically compute the pt that would be needed if we wanted such a self diffusion coefficient. Not used if pt is set.&lt;br /&gt;
&lt;br /&gt;
====Monte Carlo simulations options====&lt;br /&gt;
	&lt;br /&gt;
;[check_energy_every=10]: this number times print_energy_every gives the number of steps after which the energy will be computed from scratch and checked against the actual value computed adding energy differences.&lt;br /&gt;
		&lt;br /&gt;
;[check_energy_threshold=1e-4]:	if abs((old_energy - new_energy)/old_energy) &amp;gt; check_energy_threshold then the program will die and warn the user.&lt;br /&gt;
	&lt;br /&gt;
;ensemble: NVT&lt;br /&gt;
:ensemble of the simulation. More ensembles could be added in future versions.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement (per dimension) for translational moves in simulation units.&lt;br /&gt;
	&lt;br /&gt;
;delta_translation: maximum displacement for rotational moves in simulation units.&lt;br /&gt;
&lt;br /&gt;
===Input/output===&lt;br /&gt;
The options listed here are used to manage the I/O (read and write configurations, energies and so on)&lt;br /&gt;
	&lt;br /&gt;
;conf_file: initial configuration file. &lt;br /&gt;
		&lt;br /&gt;
;topology: file containing the system&#039;s topology.&lt;br /&gt;
		&lt;br /&gt;
;trajectory_file: the main output of the program. All the configurations will be appended to this file as they are printed.&lt;br /&gt;
		&lt;br /&gt;
;[confs_to_skip=0]: valid only if conf_file is a trajectory. Skip the first confs_to_skip configurations and then load in memory the (confs_to_skip+1)th.&lt;br /&gt;
		&lt;br /&gt;
;[lastconf_file=last_conf.dat]: this is the file where the last configuration is saved (when the program finishes or is killed). Set to last_conf.dat by default&lt;br /&gt;
&lt;br /&gt;
;[refresh_vel=0]: 0|1&lt;br /&gt;
:if 1 the initial velocities will be refreshed from a maxwellian.&lt;br /&gt;
	&lt;br /&gt;
;energy_file: energy output file.&lt;br /&gt;
		&lt;br /&gt;
;[print_energy_every=1000]: this will make the program print the energies every print_energy_every steps.&lt;br /&gt;
		&lt;br /&gt;
;[no_stdout_energy=0]: 0|1&lt;br /&gt;
:if 1 the energy will be printed just to the energy_file.&lt;br /&gt;
		&lt;br /&gt;
;[time_scale=linear]: linear|log_lin&lt;br /&gt;
:using linear configurations will be saved every print_conf_interval.&lt;br /&gt;
:using log_lin configurations will be saved logarithmically for print_conf_ppc times. After that the logarithmic sequence will restart.&lt;br /&gt;
	&lt;br /&gt;
;print_conf_interval: linear interval if time_scale == linear. First step of the logarithmic scale if time_scale == log_lin.&lt;br /&gt;
		&lt;br /&gt;
;[print_reduced_conf_every=0]: every print_reduced_conf_every steps the program will print out the reduced configurations (i.e. confs containing only the centers of mass of strands).&lt;br /&gt;
&lt;br /&gt;
;reduced_conf_output_dir: used if print_reduced_conf_every &amp;gt; 0&lt;br /&gt;
:output directory for reduced_conf files.&lt;br /&gt;
		&lt;br /&gt;
;[log_file=stderr]: file where generic and debug informations will be logged. If not specified then stderr will be used.&lt;br /&gt;
&lt;br /&gt;
==Output files==&lt;br /&gt;
*The log file contains all the relevant information about the simulation (specified options, activated external forces, warnings about misconfigurations, critical errors, etc.). If the log file is omitted, all this information will be displayed on the standard output.&lt;br /&gt;
&lt;br /&gt;
*The energy file layout for MD simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| time&lt;br /&gt;
| potential energy&lt;br /&gt;
| kinetic energy&lt;br /&gt;
| total energy&lt;br /&gt;
| hydrogen bonding energy&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:while for MC simulations is&lt;br /&gt;
&lt;br /&gt;
:{|&lt;br /&gt;
| time&lt;br /&gt;
| potential energy&lt;br /&gt;
| hydrogen bonding energy&lt;br /&gt;
| acceptance ratio for translational moves&lt;br /&gt;
| acceptance ratio for rotational moves&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:N.B. potential, kinetic and total energies are divided by the number of particles whereas the hydrogen bonding energy is not.&lt;br /&gt;
&lt;br /&gt;
*Configurations are saved in the trajectory file.&lt;br /&gt;
&lt;br /&gt;
==Configuration and topology files==&lt;br /&gt;
The current state of a system, as specified by oxDNA, is described by two files: a configuration file and a topology file. The configuration file contains all the general information (timestep, energy and box size) and the orientations and positions of each nucleotide. The topology file, on the other hand, keeps track of the backbone-backbone bonds between nucleotides in the same strand. Working configuration and topology files can be found in the &amp;lt;tt&amp;gt;[[Examples|EXAMPLES]]&amp;lt;/tt&amp;gt; directory.&lt;br /&gt;
&lt;br /&gt;
===Configuration file===&lt;br /&gt;
The first three rows of a configuration file contain the timestep &amp;lt;tt&amp;gt;T&amp;lt;/tt&amp;gt; at which the configuration has been printed, the length of the box sides &amp;lt;tt&amp;gt;Lx&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;Ly&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Lz&amp;lt;/tt&amp;gt; and the total, potential and kinetic energies, &amp;lt;tt&amp;gt;Etot&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;U&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;K&amp;lt;/tt&amp;gt;, respectively:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
t = T&lt;br /&gt;
b = Lz Ly Lz&lt;br /&gt;
E = Etot U K&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
after this header, each row contains position of the centre of mass, orientation, velocity and angular velocity of a single nucleotide in the following order:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\overbrace{r_x r_y r_z}^{\rm Position} \overbrace{b_x b_y b_z}^{\rm Backbone-base versor} \overbrace{n_x n_y n_z}^{\rm Normal versor} \overbrace{v_x v_y v_z}^{\rm Velocity} \overbrace{L_x L_y L_z}^{\rm Angular velocity}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Topology file===&lt;br /&gt;
The topology file stores the intra-strand, fixed bonding topology (i.e. which nucleotides share backbone links). The first row contains the total number of nucleotides &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; and the number of strands &amp;lt;tt&amp;gt;Ns&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
N Ns&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After this header, the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th row specifies strand, base and 3&#039; and 5&#039; neighbors of the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide in this way:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
S B 3&#039; 5&#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where S is the index of the strand (starting from 1) which the nucleotide belongs to, B is the base and 3&#039; and 5&#039; specify the index of the nucleotides with which the &amp;lt;tt&amp;gt;i&amp;lt;/tt&amp;gt;-th nucleotide is bonded in the 3&#039; and 5&#039; direction, respectively. A &amp;lt;tt&amp;gt;-1&amp;lt;/tt&amp;gt; signals that the nucleotide terminates the strand in either 3&#039; or 5&#039; direction. The topology file of a strand of sequence &amp;lt;tt&amp;gt;GCGTTG&amp;lt;/tt&amp;gt; would be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
6 1&lt;br /&gt;
1 G -1 1&lt;br /&gt;
1 C 0 2&lt;br /&gt;
1 G 1 3&lt;br /&gt;
1 T 2 4&lt;br /&gt;
1 T 3 5&lt;br /&gt;
1 G 4 -1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Specifying the topology in this way can simplify the process of simulating, for example, circular DNA.&lt;br /&gt;
&lt;br /&gt;
===Generation of initial configurations===&lt;br /&gt;
In order to generate initial configuration and topology files, we provide the &amp;lt;tt&amp;gt;${oxDNA}/UTILS/generate-sa.py&amp;lt;/tt&amp;gt; script. The usage of the script is&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;generate-sa.py &amp;lt;box side&amp;gt; &amp;lt;file with sequence&amp;gt;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
where &amp;lt;tt&amp;gt;&amp;lt;box side&amp;gt;&amp;lt;/tt&amp;gt; specifies the length of the box side in simulation units and &amp;lt;tt&amp;gt;&amp;lt;file with sequence&amp;gt;&amp;lt;/tt&amp;gt; contains the sequence of the strands to be generated, one row per strand. If double strands are needed, each sequence must be preceded by &amp;lt;tt&amp;gt;DOUBLE&amp;lt;/tt&amp;gt;. For example, a file containing&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DOUBLE AGGGCT&lt;br /&gt;
CCTGTA&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
would generate a double strand with a sequence &amp;lt;tt&amp;gt;AGGGCT&amp;lt;/tt&amp;gt; and a single strand with a sequence &amp;lt;tt&amp;gt;CCTGTA&amp;lt;/tt&amp;gt;. The sequences are given in 3&#039;-5&#039; order.&lt;br /&gt;
&lt;br /&gt;
Positions and orientations of the strands are all chosen at random in such a way that the resulting initial configuration does not contain significant excluded volume interactions between nucleotides belonging to different strands. Generated single- and double-strands have helical conformations (i.e. they are in the minimum of the intra-strand interaction energy).&lt;br /&gt;
&lt;br /&gt;
The output configuration and topology are stored in &amp;lt;tt&amp;gt;generated.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;generated.top&amp;lt;/tt&amp;gt;, respectively. &lt;br /&gt;
Since this script will initialize nucleotides&#039; velocities and angular velocities to 0, when performing a molecular (or Brownian) dynamics simulation remember to put &amp;lt;tt&amp;gt;refresh_vel = 1&amp;lt;/tt&amp;gt; in the [[Documentation#Input_file|input]] file.&lt;br /&gt;
&lt;br /&gt;
==Analysis of configurations==&lt;br /&gt;
The configurations produced by oxDNA can be analysed with the &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; program in &amp;lt;tt&amp;gt;${oxDNA}/UTILS/process_data/&amp;lt;/tt&amp;gt; directory. This program takes as command line arguments the input file (to recover the temperature and topology file), a configuration/trajectory file and an optional number. Since &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; reads analyses a single configuration, the optional number selects the configuration which it needs to analyse in the trajectory. Analysing a whole trajectory can be done by looping over a counter.&lt;br /&gt;
&lt;br /&gt;
Please note that &amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; is not compiled automatically. If you never compiled it, do so as described in the [[Download_and_Installation#Installation|installation instructions]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;output_bonds&amp;lt;/tt&amp;gt; can be used as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
${oxDNA}/UTILS/process_data/output_bonds &amp;lt;input_file&amp;gt; &amp;lt;trajectory_file&amp;gt; [counter]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The program outputs some debugging information to the standard error and information regarding the interaction energies to the standard output. The contributions arising from each of the terms in the potential (see the appendix of [[Publications|Ref. 2]]) are reported for each pair of nucleotides that have non-zero total interactions.&lt;br /&gt;
&lt;br /&gt;
This output can be easily parsed to analyse the configurations.&lt;br /&gt;
&lt;br /&gt;
For each pair of nucleotides that do interact in the configuration, the program prints out a line containing:&lt;br /&gt;
* The id of the two particles (starting from 0)&lt;br /&gt;
* The total interaction energy&lt;br /&gt;
* The hydrogen bonding (base pairing) energy&lt;br /&gt;
* The stacking energy&lt;br /&gt;
* The cross stacking energy&lt;br /&gt;
* The excluded volume energy&lt;br /&gt;
* The FENE interaction energy&lt;br /&gt;
* A letter indicating a status code. This will be &amp;lt;tt&amp;gt;N&amp;lt;/tt&amp;gt; for pairs that interact through bonded interactions (i.e. they are neighbors along a strand) and it will be &amp;lt;tt&amp;gt;H&amp;lt;/tt&amp;gt; when a base pair is present. Our definition of base pair is when two nucleotides have a hydrogen bonding energy less than 0.1 in simulation units (see [[Publications|Ref. 2]]).&lt;br /&gt;
&lt;br /&gt;
===Geometry of the Model===&lt;br /&gt;
In the configuration/trajectory files only the positions and orientations of the nucleotides are stored. If one wants to recover the positions of the individual interaction sites in the model, some maths need to be done.&lt;br /&gt;
&lt;br /&gt;
The position of the base, stacking and backbone sites can be recovered as follows:&lt;br /&gt;
&lt;br /&gt;
base site:     (center) + 0.40 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
stacking site: (center) + 0.34 * (axis vector)&lt;br /&gt;
&lt;br /&gt;
backbone site: (center) - 0.40 * (axis_vector)&lt;br /&gt;
&lt;br /&gt;
The picture in the [[Model_introduction|introduction]] might help understanding where the sites are.&lt;br /&gt;
&lt;br /&gt;
==External Forces==&lt;br /&gt;
The code implements several types of external forces that can be imposed on the system that can be used either to simulate tension exerted on DNA or simply to accelerate the formation of secondary or tertiary structure. External forces can be tricky to treat, especially in a dynamics simulation, since they are an external source of work. Care should be taken in adjusting the time step, thermostat parameters and such.&lt;br /&gt;
&lt;br /&gt;
To enable external forces, one needs to specify &amp;lt;tt&amp;gt;external_forces = 1&amp;lt;/tt&amp;gt; in the input file and also supply an external force file to read from with the key &amp;lt;tt&amp;gt;external_forces_file = &amp;lt;file&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The syntax of the external forces file is quite simple. Examples of such files can be found in the [[Hairpin_formation|hairpin formation]] and [[Pseudoknot|Pseudoknot formation]] examples. Each force is specified within a block contained in curly brackets. Empty lines and lines beginning with an hash symbol (&amp;lt;tt&amp;gt;#&amp;lt;/tt&amp;gt;) are ignored. Different forces require different keys to be present. If the file has the wrong syntax, oxDNA should spit out a sensible error message while parsing the file.&lt;br /&gt;
&lt;br /&gt;
The different types of forces implemented at the moment are:&lt;br /&gt;
* harmonic trap&lt;br /&gt;
* string &lt;br /&gt;
* repulsion plane&lt;br /&gt;
* mutual trap&lt;br /&gt;
&lt;br /&gt;
All forces act on the centre of the particle.&lt;br /&gt;
&lt;br /&gt;
Forces of different kinds can be combined in the same simulation. There is a maximum number of 10 external forces per particle for memory reasons. This can be manually overridden recompiling the code with a different value of the macro &amp;lt;tt&amp;gt;MAX_EXT_FORCES&amp;lt;/tt&amp;gt; (currently 10) in &amp;lt;tt&amp;gt;defs.h&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===String===&lt;br /&gt;
A string is implemented as a force that does not depend on the particle position. Its value can be constant or can change linearly with time. It is useful as it does not fluctuate with time.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = string&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;F0&#039;&#039;&#039; (float) the value of the force at time = 0 in simulation units (please note that the value of the time may or may not be reset when starting a simulation, depending on the input file)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) growing rate of the force (simulation units/time steps). Typical values are very small (&amp;lt; 10^(-5))&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of the force (automatically normalised by the code)&lt;br /&gt;
&lt;br /&gt;
The following bit of code will create an external force on the first nucleotide in the system starting at 1 simulation units (48.6 pN) and growing linearly with time at the rate of 48.6pN every million time steps. The force will pull the nucleotide along the &amp;lt;tt&amp;gt;z&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = string&lt;br /&gt;
particle = 0&lt;br /&gt;
F0 = 1.&lt;br /&gt;
rate = 1e-6&lt;br /&gt;
dir = 0., 0., 1.&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Harmonic trap===&lt;br /&gt;
This type of force implements an harmonic trap, of arbitrary stiffness, that can move linearly with time. It can be useful to fix the position of the nucleotides to simulate attachment to something or to implement (quasi) constant extension simulations.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force&lt;br /&gt;
* &#039;&#039;&#039;pos0&#039;&#039;&#039; (3 floats separated by commas) rest position of the trap&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * dx)&lt;br /&gt;
* &#039;&#039;&#039;rate&#039;&#039;&#039; (float) speed of the trap (length simulation units/time steps)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) direction of movement of the trap&lt;br /&gt;
&lt;br /&gt;
Here is an example input for a harmonic trap acting on the third nucleotide constraining it to stay close to the origin. In this example the trap does not move (&amp;lt;tt&amp;gt;rate=0&amp;lt;/tt&amp;gt;), but one could have it move at a constant speed along the direction specified by &amp;lt;tt&amp;gt;dir&amp;lt;/tt&amp;gt;, in this case the &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; direction.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = trap&lt;br /&gt;
particle = 2&lt;br /&gt;
pos0 = 0., 0., 0.&lt;br /&gt;
stiff = 1.0&lt;br /&gt;
rate = 0.&lt;br /&gt;
dir = 1.,0.,0.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note that the trap does not comply with periodic boundary conditions. This is most likely what you want.&lt;br /&gt;
&lt;br /&gt;
===Repulsion plane===&lt;br /&gt;
This kind of external force implements a repulsion plane that constrains a particle (or the whole system) to stay on one side of it. It is implemented as a harmonic repulsion, but the stiffness can be made arbitrarily high to mimic a hard repulsion.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = repulsion_plane&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force. If set to the special value -1, the force will be exerted on all particles.&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap (the force is stiff * D, where D is distance from the plane. The force is exerted only if the nucleotide is below the plane)&lt;br /&gt;
* &#039;&#039;&#039;dir&#039;&#039;&#039; (3 floats separated by commas) a direction normal to the plane&lt;br /&gt;
* &#039;&#039;&#039;position&#039;&#039;&#039; (1 float number) specifies the position of the plane&lt;br /&gt;
&lt;br /&gt;
If direction is &amp;lt;tt&amp;gt; direction =  u,v,w &amp;lt;/tt&amp;gt; , then the plane contains all the points (x,y,z) that satisfy the equation: u*x + v*y + w*z + position = 0.&lt;br /&gt;
Only nucleotides  with coordinates (x,y,z) that satisfy u*x + v*y + w*z + position &amp;lt; 0 will feel the force.&lt;br /&gt;
The force exerted on a nucleotide is equal to stiff * D, where D is the distance of the nucleotide from the plane, where &amp;lt;math&amp;gt; D = | ux + vy + wz + \mbox{position}| / \sqrt{u^2 + v^2 + w^2 }.&amp;lt;/math&amp;gt;&lt;br /&gt;
For nucleotides for which u*x + v*y + w*z + position &amp;gt;= 0, no force will be exerted.&lt;br /&gt;
&lt;br /&gt;
Here is an example. This plane acts on the whole system and will not exert any force on nucleotides with a positive &amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate. A force proportional to 48.6 pN * (&amp;lt;tt&amp;gt;x&amp;lt;/tt&amp;gt; coordinate) will be exerted on all particles . &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = repulsion_plane&lt;br /&gt;
#whole system&lt;br /&gt;
particle = -1&lt;br /&gt;
stiff = 1. #48.6 pN /(simulation length unit)  &lt;br /&gt;
dir = 1, 0, 0&lt;br /&gt;
position = 0&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If in the above example you would specify position = 3, then the force would be exerted on all nucleotides with coordinate x &amp;gt; -3.&lt;br /&gt;
&lt;br /&gt;
===Mutual trap===&lt;br /&gt;
This force is useful to form initial configurations. It is a harmonic force that at every moment pulls a particle towards a reference particle. It is possible to specify the separation at which the force will be 0.&lt;br /&gt;
&lt;br /&gt;
A force of this kind is specified with &amp;lt;tt&amp;gt;type = mutual_trap&amp;lt;/tt&amp;gt;. The relevant keys are:&lt;br /&gt;
* &#039;&#039;&#039;particle&#039;&#039;&#039; (int) the particle on which to exert the force.&lt;br /&gt;
* &#039;&#039;&#039;ref_particle&#039;&#039;&#039; (int) particle to pull towards. Please note that this particle will not feel any force (the name mutual trap is thus misleading).&lt;br /&gt;
* &#039;&#039;&#039;stiff&#039;&#039;&#039; (float) stiffness of the trap&lt;br /&gt;
* &#039;&#039;&#039;r0&#039;&#039;&#039; (float) equilibrium distance of the trap.&lt;br /&gt;
&lt;br /&gt;
Here is an example, extracted from the [[Pseudoknot|pseudoknot formation example]]. This will pull particle 14 towards particle 39, favouring an equilibrium distance of 1.4 (which corresponds roughly to the minimum of the hydrogen bonding potential, not a coincidence). The same force with opposite sign is exerted on particle 39 through a separate force. It is not necessary to have both particles feel the force, but it usually works much better.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 14&lt;br /&gt;
ref_particle = 39&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
type = mutual_trap&lt;br /&gt;
particle = 39&lt;br /&gt;
ref_particle = 14&lt;br /&gt;
stiff = 1.&lt;br /&gt;
r0 = 1.2&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Visualisation of structures==&lt;br /&gt;
oxDNA produces a trajectory file where all the relevant information is&lt;br /&gt;
stored. A converter is provided (&amp;lt;tt&amp;gt;traj2vis.py&amp;lt;/tt&amp;gt;) in the&lt;br /&gt;
&amp;lt;tt&amp;gt;UTILS&amp;lt;/tt&amp;gt; directory that is able to produce files in the &amp;lt;tt&amp;gt;xyz&amp;lt;/tt&amp;gt;&lt;br /&gt;
and &amp;lt;tt&amp;gt;pdb&amp;lt;/tt&amp;gt; formats. The same program can be used on a configuration&lt;br /&gt;
file and it will produce a snapshot.&lt;br /&gt;
&lt;br /&gt;
Since the model is coarse-grained, we have to &amp;quot;trick&amp;quot; the visualisers into&lt;br /&gt;
thinking that the interaction sites in the model are actually atoms.&lt;br /&gt;
Advanced nucleic acids representations such as ribbons will not work on the&lt;br /&gt;
outputs.&lt;br /&gt;
&lt;br /&gt;
All the images in the [[Screenshots]] page were produced with the pdb representation using UCSF chimera (see later on).&lt;br /&gt;
&lt;br /&gt;
===xyz format===&lt;br /&gt;
&lt;br /&gt;
just run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2vis.py xyz &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(where &amp;lt;tt&amp;gt;$oxDNA&amp;lt;/tt&amp;gt; is the oxDNA source directory) to get the xyz representation in a file called the same as the trajectory&lt;br /&gt;
file with &amp;lt;tt&amp;gt;.xyz&amp;lt;/tt&amp;gt; appended. Please note that boundary conditions are&lt;br /&gt;
implemented strand-wise, so strands that are bound might appear at two&lt;br /&gt;
different sizes of the box. Also, the center of mass of the system (where&lt;br /&gt;
each strand is weighted the same regardless of the length) is set to 0 at&lt;br /&gt;
each frame. Carbons represent the backbone sites and oxygens the base sites.&lt;br /&gt;
&lt;br /&gt;
The resulting file can be read with a variety of programs. Here we will&lt;br /&gt;
explain how to visualise it sensibly in [http://www.ks.uiuc.edu/Research/vmd/ VMD].&lt;br /&gt;
&lt;br /&gt;
* Run VMD and load the xyz file.&lt;br /&gt;
* In the graphics menu, go to Representations.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name C&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.8 and Bond Radius 0.&lt;br /&gt;
* In the Selected Atoms line, input &amp;lt;tt&amp;gt;name O&amp;lt;/tt&amp;gt;. Also select Drawing method CPK, sphere scale 0.6 and Bond Radius 0.&lt;br /&gt;
&lt;br /&gt;
This should produce a ball representation of our model DNA. Bonds&lt;br /&gt;
automatically produced by VMD are NOT meaningful in our context.&lt;br /&gt;
&lt;br /&gt;
===pdb format===&lt;br /&gt;
Run &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;$oxDNA/UTILS/traj2chimera.py &amp;lt;trajectory&amp;gt; &amp;lt;topology&amp;gt; &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
to produce a trajectory/configuration in the pdb format. A further file&lt;br /&gt;
called &amp;lt;tt&amp;gt;chimera.com&amp;lt;/tt&amp;gt; will be produced (more on this later). All&lt;br /&gt;
comments above about periodic boundaries and centre of mass apply here as&lt;br /&gt;
well.&lt;br /&gt;
&lt;br /&gt;
The pdb file can be visualised in VMD just like the xyz format, but a nicer&lt;br /&gt;
output can be produced with [http://www.cgl.ucsf.edu/chimera/ UCSF Chimera] (although only for snapshots at&lt;br /&gt;
the moment) as follows:&lt;br /&gt;
&lt;br /&gt;
Run chimera and load the pdb file. An ugly output will be displayed.&lt;br /&gt;
&lt;br /&gt;
Bring up the command line under the &amp;lt;tt&amp;gt;Tools → General Controls&amp;lt;/tt&amp;gt; menu.&lt;br /&gt;
Input &amp;lt;tt&amp;gt;read chimera.com&amp;lt;/tt&amp;gt; in the command line and press enter. You&lt;br /&gt;
should get a nicer visualisation with different bases in different colors,&lt;br /&gt;
all the covalent bonds in the right place, etc.&lt;br /&gt;
&lt;br /&gt;
On large configurations, the production of ellipsoids will be extremely&lt;br /&gt;
slow. You can remove it by removing the line&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;aniso scale 0.75 smoothing 4&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
from the commands file. Loading the resulting file should be much faster.&lt;br /&gt;
&lt;br /&gt;
UCSF chimera can in turn export the scene in a variety of formats.&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=RNA_model&amp;diff=724</id>
		<title>RNA model</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=RNA_model&amp;diff=724"/>
		<updated>2014-03-11T17:40:02Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* Simulation units */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Description of the oxRNA model===&lt;br /&gt;
The RNA model, oxRNA, treats each RNA nucleotide as a single rigid body with multiple interaction sites, following the coarse-graining approach adopted for the DNA model. &lt;br /&gt;
&lt;br /&gt;
The nucleotides interact with the following pairwise interaction potentials:&lt;br /&gt;
&lt;br /&gt;
#Backbone connectivity &amp;lt;math&amp;gt;V_{\rm backbone~}&amp;lt;/math&amp;gt;,&lt;br /&gt;
#Excluded volume &amp;lt;math&amp;gt;V_{\rm exc~}&amp;lt;/math&amp;gt;,&lt;br /&gt;
#Hydrogen bonding &amp;lt;math&amp;gt;V_{\rm  H.B.~}&amp;lt;/math&amp;gt;,&lt;br /&gt;
#Nearest-neighbor stacking &amp;lt;math&amp;gt;V_{\rm stack~}&amp;lt;/math&amp;gt;,&lt;br /&gt;
#Cross-stacking in a duplex &amp;lt;math&amp;gt;V_{\rm cross~st.}&amp;lt;/math&amp;gt;,&lt;br /&gt;
#Coaxial stacking &amp;lt;math&amp;gt;V_{\rm cx.~stack}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
which are schematically illustrated in the picture:&lt;br /&gt;
&lt;br /&gt;
[[Image:Image_duplex_combined_annotated.png|500px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Simulation units===&lt;br /&gt;
The code uses units for energy, mass, length and time that are convenient for a typical system. The relationship between simulation units (SU) and SI units is given below.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Simulation unit &lt;br /&gt;
! Physical unit&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of length&lt;br /&gt;
| 8.4x10&amp;lt;math&amp;gt;^{-10}&amp;lt;/math&amp;gt; m&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of energy&lt;br /&gt;
| 4.142x10&amp;lt;math&amp;gt;^{-20}&amp;lt;/math&amp;gt; J&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of temperature      &lt;br /&gt;
| 3000 K&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of force&lt;br /&gt;
| 49.3x10&amp;lt;math&amp;gt;^{-11}&amp;lt;/math&amp;gt; N&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of mass&lt;br /&gt;
| 5.34x10&amp;lt;math&amp;gt;^{-25}&amp;lt;/math&amp;gt; kg&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of time&lt;br /&gt;
| 3.06x10&amp;lt;math&amp;gt;^{-12}&amp;lt;/math&amp;gt; s&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Running a simulation with the oxRNA model===&lt;br /&gt;
&lt;br /&gt;
The oxRNA model is integrated into the oxDNA simulation code. In particular, it is possible to use the Virtual Move Monte Carlo (VMMC), Monte Carlo (MC) and Molecular Dynamics (MD) simulation algorithms using the same format of input file as for the DNA model. The format of the configuration files is also the same as for the DNA model, described in [[Documentation]]. When running simulations of the oxRNA model, the following additional line must be included in the input file to specify that the RNA model is to be used:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
interaction_type = RNA&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The RNA model comes with two parametrizations, the average-base and sequence-dependent one. In the average-base parametrization, the &amp;lt;math&amp;gt;V_{\rm  H.B.}&amp;lt;/math&amp;gt; interaction strengths are the same for all Watson-Crick and wobble base pairs (AU, GC, GU) and 0 for all other types of base pairs, and the interaction strengths have the same strength for all possible pairs of nucleotides interacting with the stacking interaction &amp;lt;math&amp;gt;V_{\rm stack}&amp;lt;/math&amp;gt;. &lt;br /&gt;
In the sequence-dependent version of the model, the interaction strengths of &amp;lt;math&amp;gt;V_{\rm stack}&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;V_{\rm H.B.}&amp;lt;/math&amp;gt; depend on the type of interacting bases (interactions for &amp;lt;math&amp;gt;V_{\rm H.B.}&amp;lt;/math&amp;gt; are still 0 for base pairs other than  AU, GC or GU).&lt;br /&gt;
&lt;br /&gt;
The average-base parametrization is used by default. In order to use the sequence-dependent version of the model, the following options need to be added into the input file:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
use_average_seq = 0&lt;br /&gt;
seq_dep_file = rna_sequence_dependent_parameters.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the file &amp;lt;tt&amp;gt;rna_sequence_dependent_parameters.txt&amp;lt;/tt&amp;gt; needs to be located in the directory where you run the simulation, or the full location of the file needs to be specified in the &amp;lt;tt&amp;gt;seq_dep_file&amp;lt;/tt&amp;gt; option.&lt;br /&gt;
&lt;br /&gt;
Furthermore, the initial configuration files need to be generated so that the nucleotides are positioned in an arrangement that satisfies the RNA potentials (for instance in the case of a duplex, they need to be initialized in an A-helical structure). For this purpose, a script  &amp;lt;tt&amp;gt;generate-RNA.py&amp;lt;/tt&amp;gt; is provided in the &amp;lt;tt&amp;gt;UTILS/&amp;lt;/tt&amp;gt; subdirectory of the source code main directory.&lt;br /&gt;
For instance, if one wants to generate an initial configuration consisting of three strands, two of them complementary (with sequence 3&#039;-GCAAGUCG-5&#039; and its complementary) in a duplex configuration, and one single strand with sequence 3&#039;-ACCCGU-5&#039;, one needs to create the following text file, called for example &amp;lt;tt&amp;gt;sequences.txt&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DOUBLE GCAAGUCG&lt;br /&gt;
ACCCGU&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note that the sequences are always specified in 3&#039;-5&#039; order.&lt;br /&gt;
In order to create the initial configuration files &amp;lt;tt&amp;gt;generated.top&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;generated.conf&amp;lt;/tt&amp;gt; with the duplex and single strand randomly placed in a simulation cube with side of length 20 in simulation units, run the script &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
generate-RNA.py sequences.txt generated 20.0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
which will create the configuration files. These can then be used as an initial configuration for a simulation. Other input file options that apply to oxDNA, such external_forces=1 (for the use of external forces), can be used with oxRNA with the same syntax (see [[Documentation]] for a full list and for further details).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For an example on how to use VMMC simulations to determine the melting temperature of an RNA duplex, please see the [[RNA duplex melting]] tutorial.&lt;br /&gt;
&lt;br /&gt;
===Visualization of RNA configurations=== &lt;br /&gt;
&lt;br /&gt;
In order to visualize the configurations of the oxRNA model, one can use the &amp;lt;tt&amp;gt;traj2chimera.py&amp;lt;/tt&amp;gt; script, as described for the oxDNA model. It is however necessary to first set the environment variable &amp;lt;tt&amp;gt;OXRNA&amp;lt;/tt&amp;gt; to 1 in order for the script to properly generate visual representation of oxRNA:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
export OXRNA=1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The visualization of a configuration specified in, for example, &amp;lt;tt&amp;gt;generated.top&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;generated.conf&amp;lt;/tt&amp;gt; can then be obtained by running&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
traj2chimera.py generated.conf generated.top &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
in the &amp;lt;tt&amp;gt;UTILS/&amp;lt;/tt&amp;gt; directory  &lt;br /&gt;
which creates the files &amp;lt;tt&amp;gt;generated.conf.pdb&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;chimera.com&amp;lt;/tt&amp;gt; which can then be visualized with [http://www.cgl.ucsf.edu/chimera/download.html Chimera software]&lt;br /&gt;
by running the following command:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
chimera generated.conf.pdb chimera.com&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
or alternatively, you can load &amp;lt;tt&amp;gt;generated.conf.pdb&amp;lt;/tt&amp;gt; in the Chimera software and then click on Tools-&amp;gt;General Controls-&amp;gt;Command line and specify&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
read chimera.com&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
in the command line, where &amp;lt;tt&amp;gt;chimera.com&amp;lt;/tt&amp;gt; needs to be present in the directory where you started Chimera.&lt;br /&gt;
&lt;br /&gt;
===References===&lt;br /&gt;
The model and its performance is discussed in detail in the following reference:&lt;br /&gt;
&lt;br /&gt;
P. Šulc, F. Romano, T. E. Ouldridge, J. P. K. Doye, A. A. Louis: A nucleotide-level coarse-grained model of RNA, submitted&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Model_introduction&amp;diff=723</id>
		<title>Model introduction</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Model_introduction&amp;diff=723"/>
		<updated>2014-03-11T17:39:09Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* Simulation units */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The model treats DNA as a string of rigid nucleotides, which interact through potentials which depend on the position and orientation of the nucleotides. The interactions are:&lt;br /&gt;
#Sugar-phosphate backbone connectivity,&lt;br /&gt;
#Excluded volume,&lt;br /&gt;
#Hydrogen bonding,&lt;br /&gt;
#Nearest-neighbour stacking,&lt;br /&gt;
#Cross-stacking between base-pair steps in a duplex,&lt;br /&gt;
#Coaxial stacking.&lt;br /&gt;
&lt;br /&gt;
This interactions are illustrated below. Orientational modulations of the stacking potential encourage the bases to form coplanar stacks, the twist arising from the different length scales of the backbone separation and the optimum stacking separation. The possibility of unstacking allows single strands to be very flexible. Hydrogen bonding  can occur between complementary bases when they are anti-aligned, leading to the formation of double helical structures.&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/The_model.png&lt;br /&gt;
&lt;br /&gt;
(a) Model interaction sites with their interaction ranges (the typical range of an interaction is twice the radius of the sphere shown).&lt;br /&gt;
&lt;br /&gt;
(b) Representation of these interaction site in a visualisation that makes the planarity of the base clear.&lt;br /&gt;
&lt;br /&gt;
(c) A duplex in this representation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/interactions.png&lt;br /&gt;
&lt;br /&gt;
Indication of the interactions which hold together a typical duplex. V(b.b.) indicates the phosphate-sugar backbone connectivity.&lt;br /&gt;
&lt;br /&gt;
In the original model, all complementary base pairs and stacking partners interact with the same strength (there is no attractive interaction between non-complementary bases). A sequence-dependent parameterisation of the hydrogen-bonding and stacking interactions is included as an option in the code release.&lt;br /&gt;
The melting temperatures of a set of short DNA oligomers in the sequence-dependent coarse-grained model, compared to the melting temperatures as predicted by SantaLucia&#039;s nearest-neighbor model ([http://www.pnas.org/content/95/4/1460.full]), are available here: [http://www-thphys.physics.ox.ac.uk/people/PetrSulc/data/CG_model_Tm.txt]&lt;br /&gt;
&lt;br /&gt;
The model does not incorporate the differentiation between the major and minor grooves of DNA double helices, and incorporates electrostatics only through the short-ranged excluded volume. For this reason, it is only appropriate for the study of systems at high salt concentration, when electrostatic interactions are strongly screened.&lt;br /&gt;
&lt;br /&gt;
===Simulation units===&lt;br /&gt;
The code uses units for energy, mass, length and time that are convenient for a typical system. The relationship between simulation units (SU) and SI units is given below.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Simulation unit &lt;br /&gt;
! Physical unit&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of length&lt;br /&gt;
| 8.518x10&amp;lt;math&amp;gt;^{-10}&amp;lt;/math&amp;gt; m&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of energy&lt;br /&gt;
| 4.142x10&amp;lt;math&amp;gt;^{-20}&amp;lt;/math&amp;gt; J&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of temperature      &lt;br /&gt;
| 3000 K&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of force&lt;br /&gt;
| 4.863x10&amp;lt;math&amp;gt;^{-11}&amp;lt;/math&amp;gt; N&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of mass&lt;br /&gt;
| 5.24x10&amp;lt;math&amp;gt;^{-25}&amp;lt;/math&amp;gt; kg&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of time&lt;br /&gt;
| 3.03x10&amp;lt;math&amp;gt;^{-12}&amp;lt;/math&amp;gt; s&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The model and its performance is discussed in detail in the following references (the thesis provides the most complete analysis):&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, D.Phil. Thesis, University of Oxford, 2011.&lt;br /&gt;
[http://ora.ox.ac.uk/objects/uuid:b2415bb2-7975-4f59-b5e2-8c022b4a3719 Coarse-grained modelling of DNA and DNA self-assembly]&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, A. A. Louis and J. P. K. Doye, J. Chem. Phys, 134, 085101 (2011)&lt;br /&gt;
[http://link.aip.org/link/?JCP/134/085101 Structural, mechanical and thermodynamic properties of a coarse-grained DNA model] ([http://arxiv.org/abs/arXiv:1009.4480 arXiv])&lt;br /&gt;
&lt;br /&gt;
P. Šulc, F. Romano, T. E. Ouldridge, L. Rovigatti, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;137&#039;&#039;&#039;, 135101 (2012)&lt;br /&gt;
[http://jcp.aip.org/resource/1/jcpsa6/v137/i13/p135101_s1 Sequence-dependent thermodynamics of a coarse-grained DNA model] ([http://arxiv.org/abs/1207.3391 arxiv])&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
	<entry>
		<id>https://dna.physics.ox.ac.uk/index.php?title=Model_introduction&amp;diff=722</id>
		<title>Model introduction</title>
		<link rel="alternate" type="text/html" href="https://dna.physics.ox.ac.uk/index.php?title=Model_introduction&amp;diff=722"/>
		<updated>2014-03-11T17:37:21Z</updated>

		<summary type="html">&lt;p&gt;Snodinb: /* Simulation units */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The model treats DNA as a string of rigid nucleotides, which interact through potentials which depend on the position and orientation of the nucleotides. The interactions are:&lt;br /&gt;
#Sugar-phosphate backbone connectivity,&lt;br /&gt;
#Excluded volume,&lt;br /&gt;
#Hydrogen bonding,&lt;br /&gt;
#Nearest-neighbour stacking,&lt;br /&gt;
#Cross-stacking between base-pair steps in a duplex,&lt;br /&gt;
#Coaxial stacking.&lt;br /&gt;
&lt;br /&gt;
This interactions are illustrated below. Orientational modulations of the stacking potential encourage the bases to form coplanar stacks, the twist arising from the different length scales of the backbone separation and the optimum stacking separation. The possibility of unstacking allows single strands to be very flexible. Hydrogen bonding  can occur between complementary bases when they are anti-aligned, leading to the formation of double helical structures.&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/The_model.png&lt;br /&gt;
&lt;br /&gt;
(a) Model interaction sites with their interaction ranges (the typical range of an interaction is twice the radius of the sphere shown).&lt;br /&gt;
&lt;br /&gt;
(b) Representation of these interaction site in a visualisation that makes the planarity of the base clear.&lt;br /&gt;
&lt;br /&gt;
(c) A duplex in this representation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://www-thphys.physics.ox.ac.uk/people/ThomasOuldridge/Site/interactions.png&lt;br /&gt;
&lt;br /&gt;
Indication of the interactions which hold together a typical duplex. V(b.b.) indicates the phosphate-sugar backbone connectivity.&lt;br /&gt;
&lt;br /&gt;
In the original model, all complementary base pairs and stacking partners interact with the same strength (there is no attractive interaction between non-complementary bases). A sequence-dependent parameterisation of the hydrogen-bonding and stacking interactions is included as an option in the code release.&lt;br /&gt;
The melting temperatures of a set of short DNA oligomers in the sequence-dependent coarse-grained model, compared to the melting temperatures as predicted by SantaLucia&#039;s nearest-neighbor model ([http://www.pnas.org/content/95/4/1460.full]), are available here: [http://www-thphys.physics.ox.ac.uk/people/PetrSulc/data/CG_model_Tm.txt]&lt;br /&gt;
&lt;br /&gt;
The model does not incorporate the differentiation between the major and minor grooves of DNA double helices, and incorporates electrostatics only through the short-ranged excluded volume. For this reason, it is only appropriate for the study of systems at high salt concentration, when electrostatic interactions are strongly screened.&lt;br /&gt;
&lt;br /&gt;
===Simulation units===&lt;br /&gt;
The code uses dimensionless units for energy, mass, length and time for convenience. The relationship between simulation units (SU) and SI units is given below.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
! Simulation unit &lt;br /&gt;
! Physical unit&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of length&lt;br /&gt;
| 8.518x10&amp;lt;math&amp;gt;^{-10}&amp;lt;/math&amp;gt; m&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of energy&lt;br /&gt;
| 4.142x10&amp;lt;math&amp;gt;^{-20}&amp;lt;/math&amp;gt; J&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of temperature      &lt;br /&gt;
| 3000 K&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of force&lt;br /&gt;
| 4.863x10&amp;lt;math&amp;gt;^{-11}&amp;lt;/math&amp;gt; N&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of mass&lt;br /&gt;
| 5.24x10&amp;lt;math&amp;gt;^{-25}&amp;lt;/math&amp;gt; kg&lt;br /&gt;
|-&lt;br /&gt;
| 1 unit of time&lt;br /&gt;
| 3.03x10&amp;lt;math&amp;gt;^{-12}&amp;lt;/math&amp;gt; s&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The model and its performance is discussed in detail in the following references (the thesis provides the most complete analysis):&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, D.Phil. Thesis, University of Oxford, 2011.&lt;br /&gt;
[http://ora.ox.ac.uk/objects/uuid:b2415bb2-7975-4f59-b5e2-8c022b4a3719 Coarse-grained modelling of DNA and DNA self-assembly]&lt;br /&gt;
&lt;br /&gt;
T. E. Ouldridge, A. A. Louis and J. P. K. Doye, J. Chem. Phys, 134, 085101 (2011)&lt;br /&gt;
[http://link.aip.org/link/?JCP/134/085101 Structural, mechanical and thermodynamic properties of a coarse-grained DNA model] ([http://arxiv.org/abs/arXiv:1009.4480 arXiv])&lt;br /&gt;
&lt;br /&gt;
P. Šulc, F. Romano, T. E. Ouldridge, L. Rovigatti, J. P. K. Doye, A. A. Louis, &#039;&#039;J. Chem. Phys.&#039;&#039; &#039;&#039;&#039;137&#039;&#039;&#039;, 135101 (2012)&lt;br /&gt;
[http://jcp.aip.org/resource/1/jcpsa6/v137/i13/p135101_s1 Sequence-dependent thermodynamics of a coarse-grained DNA model] ([http://arxiv.org/abs/1207.3391 arxiv])&lt;/div&gt;</summary>
		<author><name>Snodinb</name></author>
	</entry>
</feed>