Open BFedder opened 2 years ago
The content of this issue already almost makes your first blog post. Perhaps add a section on how you plan to tackle the project, what you want to prioritize and why, and a timeline, and you have your first post!
Issue #3629 can be the "EDR" issue, which collects anything specific to the EDRReader. I would use this issue for more abstract discussions about the general user interface and as a way to link your project together.
Is your feature request related to a problem?
In molecular dynamics simulations, users frequently have to inspect energy-like terms such as potential or kinetic energy, temperature, or pressure. This is so common a task that even small inefficiencies add up. Currently, users have to create intermediate files from their MD simulation's output files to obtain plottable data, and this quickly becomes cumbersome when multiple terms are to be inspected. Being able to read in the energy output files directly would make this more convenient.
Describe the solution you'd like
I suggest that new energy file readers should be written as part of the auxiliary module. MDAnalysis'
AuxReader
s allow the association of non-trajectory data with trajectory timesteps and seem like a good fit for this purpose. In addition to reading the energy files and making their contents available to users without the need to write intermediate files, the framework would allow association of energy data to trajectories for further analyses.I'm picturing an implementation of these new energy readers similar to the following (based on a hypothetical EDR file reader for GROMACS output)
Overall, new AuxReaders for energy files produced by GROMACS, Amber, NAMD, or OpenMM might be interesting. OpenMM's StateDataReporters produce CSV files as output. Generalising this to a CSV AuxReader would be useful.
Moving away from energy files, a general NumPy array AuxReader would also be very interesting. It would allow great flexibility of the kind of data users could associate with trajectories, allowing for example the direct association of Analysis results like RMSD calculations to trajectories.
Additional context
EDR Reader Issue: #3629. NumPy Reader Issue: #3750
The user guide has a great explanation of how the aux system currently works.