Giter Site home page Giter Site logo

Comments (12)

BradyAJohnston avatar BradyAJohnston commented on August 13, 2024 2

It is now part of the main release (https://github.com/BradyAJohnston/MolecularNodes/releases) if anyone would like to try it out. I am yet to write documentation for the oxDNA specific import, but it follows similar approach to the other data formats. If you would like to give Blender a try then I'd love any feedback anyone has about it.

from oxdna.

BradyAJohnston avatar BradyAJohnston commented on August 13, 2024 1

Okay thanks for all of the extra information everyone. I'm now correctly using the base_normal and base_vector to position the backbone and align the bases (previous videos was just drawing backbone through centre_of_mass), so it now has the major & minor grooves as it should.

CleanShot 2023-11-21 at 09 58 42@2x

Am I correct that there are sometimes connecting segments, that don't have bases but are still part of the 'strand'? For the icosahderon example there are lots of long connectors that don't show any base information but you still use them in the simulations? I just want to know if I should be doing anything special with them. Again, unfamiliar with the data formats so thanks for answering all of my naive questions!

from oxdna.

ErikPoppleton avatar ErikPoppleton commented on August 13, 2024

Hi Brady, super excited to hear that oxDNA support is coming to Molecular Nodes! It will be super nice to now have to export to PDB when loading into Blender.

Probably the biggest thing to watch for is that there are two different topology files, the “original” one in which nucleotides are listed backwards (3’-5’), and the “new” one added in the last release which has a different format to enable DNA/RNA hybrid simulations and has the strands in the normal direction (5’-3’).

The other thing to note is that the positions recorded in the configuration file represents the center of mass of the nucleotide, the backbone and base sites are offset from the backbone based on DNA/RNA model and the a1/3 vectors.

You’ve probably already found it, but there is a documentation page on file formats. You also might find it useful to look at the topology parser for oxDNA analysis tools, which can be found here. The configuration parser, unfortunately, is in Cython and doesn’t deal with the backbone vs base sites, but you can see how we did it in oxView here (sorry it’s in Typescript).

from oxdna.

BradyAJohnston avatar BradyAJohnston commented on August 13, 2024

Hi @ErikPoppleton, thanks for the extra info! Yes I chatted to a number of DNA origami people at the Synthetic Biology Australia conference, and I figured it should be doable without too much trouble (managed to get it together over the weekend). I have so far just done the old style topology, but the new style should be straight forward to add as well. A question around this, will the trajectory be in the same 5' -> 3' as the newer topology? So the trajectory / topologies won't be usable with each other?

For the offsets from the centre of mass, are you saying that:

backbone_position = centre_of_mass - 1/3 * base_vector
base_position = centre_of_mass + 1/3 * base_vector

Then the base_normal gives the rotation? I did go through the documentation page, but couldn't find anything about how the backbone / base is calculated from centre_of_mass.

from oxdna.

lorenzo-rovigatti avatar lorenzo-rovigatti commented on August 13, 2024

Yes, exactly, nucleotides in trajectories and configurations are listed 3'->5' with old topologies and 5'->3' with new topologies. There is a script to convert between the two (utils/convert.py). As for the documentation, note that the page linked by Erik contains the following information, which, if I understand correctly, is what you need:

Screenshot_20231120_135233

from oxdna.

BradyAJohnston avatar BradyAJohnston commented on August 13, 2024

@lorenzo-rovigatti ah yes apologies, I had gone through the page but not realised that part was what I was after. Should be able to finish off the rest of the implementation.

The two different oxDNA1 / oxDNA2, is this for old / new topology system, or is this another spec?

from oxdna.

zoombya avatar zoombya commented on August 13, 2024

Hi Brady, another thing to whatch out is that strands can diffuse through the periodic boundary,
our python reader handles it in the following way https://github.com/lorenzo-rovigatti/oxDNA/blob/master/analysis/src/oxDNA_analysis_tools/UTILS/RyeReader.py#L426
Your video looks really cool!

from oxdna.

zoombya avatar zoombya commented on August 13, 2024

oxDNA1 vs oxDNA2 are 2 different force fields, new vs old topology is independent of the force field.

from oxdna.

lorenzo-rovigatti avatar lorenzo-rovigatti commented on August 13, 2024

Just to chime in, most people use oxDNA2, which features the major minor groove that your video (which btw is great!) seems to be missing. I think using the oxDNA2 positions makes the most sense.

from oxdna.

BradyAJohnston avatar BradyAJohnston commented on August 13, 2024

Additionally, are there some small trajectories that I could use for running unit tests? I've grabbed some .top / .oxdna from the examples in this repo and oxdna viewer, but they all seem to be either start or final frames of the trajectories.

from oxdna.

sulcgroup avatar sulcgroup commented on August 13, 2024

Hi Brady,

Each base is a part of a DNA strand, but some bases are not part of a duplex (they are in a single-stranded region). When a structure is imported into oxDNA from CADNANO, a popular DNA nanotech design tool, the single-stranded regions are not represented there, and it might also result into some bases being far away from their correct physical position. Once the sturcture is relaxed and ran in oxDNA simulation, these nucleotides are assigned physically sensible 3D position and you should no longer see such long stretches. If you still do, there is some problem with the oxDNA configuration import.

As for the short trajectory, the RNA tile here could be a good one (it is in oxRNA, but close enough to oxDNA, format is very similar): https://github.com/sulcgroup/oxdna-viewer/tree/master/examples

Other option is to run the Holliday junction (also available in the examples) for 1 hour on oxDNA.org, and the trajectory should be short and sufficient to play with.

from oxdna.

BradyAJohnston avatar BradyAJohnston commented on August 13, 2024

Thanks @sulcgroup for the additional details! I'll run a short sim and use some frames for testing.

from oxdna.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.