Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MDAKit / Hackathon] New file formats #27

Open
IAlibay opened this issue Sep 25, 2023 · 0 comments
Open

[MDAKit / Hackathon] New file formats #27

IAlibay opened this issue Sep 25, 2023 · 0 comments

Comments

@IAlibay
Copy link
Member

IAlibay commented Sep 25, 2023

Overview

MDAnalysis supports a wide range of file formats for reading/writing
coordinates and topologies
(https://userguide.mdanalysis.org/stable/formats/index.html).
However, there are still some file formats that are missing - e.g.
PDBx/mmCIF, which has replaced the PDB format as the default
format for the Protein Data Bank (see Issue
#2367).
We also welcome the addition of support for any other file formats
we are currently missing.

Note that MDAnalysis can support new formats without adding code to
the main package
. You can put the code ("reader" and "writer"
classes for trajectories, "parser" classes for topologies) into a MDAKit and
if you use the appropriate base classes, MDAnalysis will automagically
know how to work with the newly supported file format!

Where to start

  • Identify a file format currently not supported by MDAnaylsis --- if you
    don't have a particular format in mind, support for PDBx/mmCIF is a
    frequent request.

    (See the PDBx/mmCIF software resources, for example,
    py-mmcif and biopython could also be used, and there exists a Python-only
    implementation in mmcif_pdbx.)

  • Become familiar with our reader/writer API - for
    trajectory files (coordinate data)
    and topology files (atom information)
    as appropriate; and look at how existing supported file formats
    are handled.

  • Create a Kit featuring a new reader/writer class, using ReaderBase/WriterBase,
    for the new file format. If there are existing tools that could
    aid in reading this format, your Kit could use these as dependencies.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant