Netiquette · Download · News · Gallery · Homepage · DSSR Manual · G-quadruplexes · DSSR-Jmol · DSSR-PyMOL · DSSR Licensing · Video Overview· RNA Covers

Author Topic: Wrapper for GROMACS MD trajectroy  (Read 20017 times)

Offline Rajendra Kumar

  • with-posts
  • *
  • Posts: 10
    • View Profile
    • 3DNA and dnaMD for MD trajectory analysis
Wrapper for GROMACS MD trajectroy
« on: October 16, 2013, 06:47:31 am »
Hello,

I have developed a 3DNA wrapper in C language, which uses GROMACS library to read GROMACS format trajectory, topology and index file. This wrapper dumps frame-wise data to several text files. I guess, this tool will work for any format of MD trajectory such as AMBER, NAMD and CHARMM, but it is yet to be tested.

Additionally, I am developing Python APIs to analyze the vast amount of data obtained from the wrapper. It includes many useful methods to analyze properties of the DNA. One can analyze the changes in DNA upon binding to protein. Also, it can be used to calculate elastic properties of the DNA. Moreover, I have implemented few methods to analyze bending motions of helical axis.

I have a query. Since I am using C language for wrapper, may I get C APIs/library of 3DNA such that I can use directly these APIs in wrapper. Currently, I use find_pair and analyze executable binary. When I use wrapper for ~30,000 frames containing 60 BP DNA, it takes a while to complete and I want to speed up this calculation.

I would like to release this tool through GitHub, however I am not sure that this work alone is of publication level. Please let me know, what would be your suggestion.

Thanks.

Offline xiangjun

  • Administrator
  • with-posts
  • *****
  • Posts: 1650
    • View Profile
    • 3DNA homepage
Re: Wrapper for GROMACS MD trajectroy
« Reply #1 on: October 16, 2013, 12:19:04 pm »
Quote
I have developed a 3DNA wrapper in C language, which uses GROMACS library to read GROMACS format trajectory, topology and index file. This wrapper dumps frame-wise data to several text files. I guess, this tool will work for any format of MD trajectory such as AMBER, NAMD and CHARMM, but it is yet to be tested.
I appreciate your effort in building a 3DNA wrapper for the analysis of GROMACS MD trajectories. It'd be great if you can test and verify that it works for "MD trajectory such as AMBER, NAMD and CHARMM".

Quote
Additionally, I am developing Python APIs to analyze the vast amount of data obtained from the wrapper. It includes many useful methods to analyze properties of the DNA. One can analyze the changes in DNA upon binding to protein. Also, it can be used to calculate elastic properties of the DNA. Moreover, I have implemented few methods to analyze bending motions of helical axis.
If done right, a Python API on top of the wrapper will make the results of MD simulations readily accessible to a much larger community. I'd suggest you start from a small selection of key parameters, and build your tool incrementally.

Quote
I have a query. Since I am using C language for wrapper, may I get C APIs/library of 3DNA such that I can use directly these APIs in wrapper. Currently, I use find_pair and analyze executable binary. When I use wrapper for ~30,000 frames containing 60 BP DNA, it takes a while to complete and I want to speed up this calculation.
3DNA is composed of a few standalone commandline tools, and does not include a C APIs/library. However, I'd like to help you out where appropriate. Do you really need to run find_pair for each frame? See the output from running "x3dna_ensemble analyze -h". How long it takes approximately for running a MD simulation vs analyzing it?

Quote
I would like to release this tool through GitHub, however I am not sure that this work alone is of publication level. Please let me know, what would be your suggestion.
GitHub seems a good option. As for publishing such work, did you know the paper "PTRAJ and CPPTRAJ: Software for Processing and Analysis of Molecular Dynamics Trajectory Data" by Daniel Roe and Thomas Cheatham?

Best regards,

Xiang-Jun

Offline Rajendra Kumar

  • with-posts
  • *
  • Posts: 10
    • View Profile
    • 3DNA and dnaMD for MD trajectory analysis
Re: Wrapper for GROMACS MD trajectroy
« Reply #2 on: October 21, 2013, 06:47:08 am »
Thank you very much for reply.

Quote
It'd be great if you can test and verify that it works for "MD trajectory such as AMBER, NAMD and CHARMM".

I don't have trajectory from these MD packages, but recent GROMACS tools can read any type of trajectories which are supported by VMD.

Quote
If done right, a Python API on top of the wrapper will make the results of MD simulations readily accessible to a much larger community. I'd suggest you start from a small selection of key parameters, and build your tool incrementally.

I have been writing with the same intentions. I have chosen PYTHON because one can use NumPy/SciPy to perform calculations on raw data and Matplotlib to render plots of the obtained results. In future, I will do documentation for these APIs.

Quote
3DNA is composed of a few standalone commandline tools, and does not include a C APIs/library. However, I'd like to help you out where appropriate.


I was thinking that if I will able to pass coordinates and base-pair information directly to some C functions present in analyze, which in results would return all calculated parameters. At least, I can avoid writing and reading intermediate PDB files, and this process will speedup the wrapper execution.

Quote
Do you really need to run find_pair for each frame? See the output from running "x3dna_ensemble analyze -h".

I have implemented two type of calculations. In first type,  find_pair executes only once at the start, and then same base-pairs information is used for whole calculation. However, during simulations, new base-pair may form and old may break, particularly in RNA. Therefore in second type, find_pair  executes at every frame, and output files are generated such that, one can easily able to get how base-pairs are forming and breaking.

Quote
GitHub seems a good option. As for publishing such work, did you know the paper "PTRAJ and CPPTRAJ: Software for Processing and Analysis of Molecular Dynamics Trajectory Data" by Daniel Roe and Thomas Cheatham?

Thank you for the suggestions and paper reference.


With best regards,
Rajendra

Offline xiangjun

  • Administrator
  • with-posts
  • *****
  • Posts: 1650
    • View Profile
    • 3DNA homepage
Re: Wrapper for GROMACS MD trajectroy
« Reply #3 on: October 25, 2013, 10:25:46 am »
Hi Rajendra,

Thanks for your concrete response -- discussions at this level of details are more likely to be productive.

Quote
I was thinking that if I will able to pass coordinates and base-pair information directly to some C functions present in analyze, which in results would return all calculated parameters. At least, I can avoid writing and reading intermediate PDB files, and this process will speedup the wrapper execution.

I am willing to adapt the 3DNA analyze program to fit your needs. Could you please be more specific as to the input and output? I guess the input would be atomic coordinates in PDB format, and the base-pair info as from find_pair. Note that there are so many output parameters from an analyze run: some are for single-stranded structures, others are for historical reasons, and I doubt you need all of them. The basic idea is to start with something simple, and make it functional. Do you have a protocol as to what the analyze C functions should behave?

Quote
I have implemented two type of calculations. In first type,  find_pair executes only once at the start, and then same base-pairs information is used for whole calculation. However, during simulations, new base-pair may form and old may break, particularly in RNA. Therefore in second type, find_pair  executes at every frame, and output files are generated such that, one can easily able to get how base-pairs are forming and breaking.

I know that "during simulations, new base-pair may form and old may break". However, by using the same 'presumed' base-pair information, one can easily identify where bps break by virtue of weird parameters associated with them. I am not sure how to make a consistent comparison the other way around. Keep in mind that I am not a practitioner of MD simulations.

Xiang-Jun

 

Created and maintained by Dr. Xiang-Jun Lu [律祥俊] (xiangjun@x3dna.org)
The Bussemaker Laboratory at the Department of Biological Sciences, Columbia University.