MDAnalysis / scipy_proceedings

SciPy conference proceedings: MDAnalysis paper
Other
0 stars 4 forks source link

outline and topics #2

Closed orbeckst closed 8 years ago

orbeckst commented 8 years ago

Suggestions for topics to be addressed in the proceedings paper #1.

Note that this paper should not be an in-depth view of MDAnalysis but rather a big picture "advertisement". Primarily, it should introduce the library to a wider audience and quickly allow a reader to answer the questions

kain88-de commented 8 years ago

A good topic is that we can to unusual things to build simulation setups. I for example use it to setup large artificial proteins that are made up of smaller ones, the merge function is great for that. A colleague recently wanted to change the velocities in a trr, we have one of the few tools to do this.

richardjgowers commented 8 years ago

I think it'd be good to emphasise how fast you can prototype analysis compared to compiled languages. The total time to do analysis is time writing + time running, so while it will run slower it's much faster to write and faster overall. It might be cool to show an example of building up a certain analysis, maybe something like an RDF, then averaging over a trajectory is then another 2-3 lines on top of this. Or maybe something that shows off the inbuilt distance + angle functions which do PBC too, so a 2d probability contour map

Might be cheeky as it's not hit develop yet, but the 363 topology system where a Parser can define whatever it likes and we metaprogram this into the AtomGroup class. Similarly the Selection system where you can define new selections like here

Another good point is the format agnostic/transferability of it too. Repeatability of analysis, sharing analysis methods, open science etc

kain88-de commented 8 years ago

We can also show of other packages that have been build on top of MDAnalysis like Encore and MDSynthesis. Both are a good example how MDAnalysis can be used to build general analysis tools.

kain88-de commented 8 years ago

I've just look again at the old paper. In it's core it lists a number of possible uses for MDAnalysis. @orbeckst did you think of doing the same style again for this paper with updated examples? I thought about adding the contact analysis again, especially since it is now very very flexible with the newest release.

orbeckst commented 8 years ago

On 17 May, 2016, at 13:53, kain88-de notifications@github.com wrote:

I've just look again at the old paper. In it's core it lists a number of possible uses for MDAnalysis. @orbeckst did you think of doing the same style again for this paper with updated examples? I thought about adding the contact analysis again, especially since it is now very very flexible with the newest release.

For the SciPy proceedings I was thinking 2-3 pages max. Very roughly:

After 0.16.0 and heading for 1.0 we should be thinking about a proper and longer MDAnalysis paper.

Oliver Beckstein * orbeckst@gmx.net skype: orbeckst * orbeckst@gmail.com

kain88-de commented 8 years ago

It might be cool to show an example of building up a certain analysis

That is a good idea. I thought we could show how to calculate an RMSD for a single configuration and extend this to an RMSD for a simulation using only a sub selection. In the end we introduce the analysis pacakge which overs convenience functions for this.

A good thing to display is also the selection functions. I think the spherical and cylindrical selections are unique to MDA and interesting to others.

To show that we want to allow for flexibility I think we can show of the new Contacts class. That one allows do a lot with only minimal changes to the code. As an example I would show how to use the Contacts class to setup a q1q2 analysis and then refer to the function that exists already for this.

richardjgowers commented 8 years ago

Since this is a scipy specific paper, maybe it'd be interesting to contrast the old list of Atom to new (363) system?

On Tue, 17 May 2016 22:04 Oliver Beckstein, notifications@github.com wrote:

On 17 May, 2016, at 13:53, kain88-de notifications@github.com wrote:

I've just look again at the old paper. In it's core it lists a number of possible uses for MDAnalysis. @orbeckst did you think of doing the same style again for this paper with updated examples? I thought about adding the contact analysis again, especially since it is now very very flexible with the newest release.

For the SciPy proceedings I was thinking 2-3 pages max. Very roughly:

  • Big picture overview.
  • What the OO layer looks like and how it relates to the data.
  • Examples of use:
  • “basic” selections and trajectory access and manipulation
  • analysis (contacts would be a great example – do you want to write 2 paragraphs and a figure?).
  • Showing that we can use it already for big systems (which will be even better after 363).
  • Showing interactive use in Jupyter notebooks with nglview and pandas.

After 0.16.0 and heading for 1.0 we should be thinking about a proper and longer MDAnalysis paper.

Oliver Beckstein * orbeckst@gmx.net skype: orbeckst * orbeckst@gmail.com

— You are receiving this because you commented.

Reply to this email directly or view it on GitHub https://github.com/MDAnalysis/scipy_proceedings/issues/2#issuecomment-219853541

richardjgowers commented 8 years ago

Which I guess we can file under the big system bullet point.

On Tue, 17 May 2016 22:15 Richard Gowers, richardjgowers@gmail.com wrote:

Since this is a scipy specific paper, maybe it'd be interesting to contrast the old list of Atom to new (363) system?

On Tue, 17 May 2016 22:04 Oliver Beckstein, notifications@github.com wrote:

On 17 May, 2016, at 13:53, kain88-de notifications@github.com wrote:

I've just look again at the old paper. In it's core it lists a number of possible uses for MDAnalysis. @orbeckst did you think of doing the same style again for this paper with updated examples? I thought about adding the contact analysis again, especially since it is now very very flexible with the newest release.

For the SciPy proceedings I was thinking 2-3 pages max. Very roughly:

  • Big picture overview.
  • What the OO layer looks like and how it relates to the data.
  • Examples of use:
  • “basic” selections and trajectory access and manipulation
  • analysis (contacts would be a great example – do you want to write 2 paragraphs and a figure?).
  • Showing that we can use it already for big systems (which will be even better after 363).
  • Showing interactive use in Jupyter notebooks with nglview and pandas.

After 0.16.0 and heading for 1.0 we should be thinking about a proper and longer MDAnalysis paper.

Oliver Beckstein * orbeckst@gmx.net skype: orbeckst * orbeckst@gmail.com

— You are receiving this because you commented.

Reply to this email directly or view it on GitHub https://github.com/MDAnalysis/scipy_proceedings/issues/2#issuecomment-219853541

orbeckst commented 8 years ago

On 17 May, 2016, at 14:15, Richard Gowers notifications@github.com wrote:

Since this is a scipy specific paper, maybe it'd be interesting to contrast the old list of Atom to new (363) system?

I like this idea – basically “We learned that better data structures are important” (and not OO at all cost).

@richardjgowers can you have a crack at this (maybe with input from @dotsdl): Topology system before/after.

Oliver Beckstein * orbeckst@gmx.net skype: orbeckst * orbeckst@gmail.com

tylerjereddy commented 8 years ago

Obviously, my virus work is thematically relevant to big systems and involved a direct contribution to scipy itself (scipy.spatial.SphericalVoronoi coming in 0.18.0) with coordinate / trajectory data exposed by MDAnalysis. As that is a few years work I'm working on it as a separate technical paper (analysis code: https://github.com/tylerjereddy/viral_voronoi_analysis) but I suppose the viruses could be briefly mentioned as successful big system use cases if you want (and even bigger ones are coming...).

mnmelo commented 8 years ago

I second all the ideas put forth so far, and really underscore the applicability to big systems. Our plasma membrane simulations would have been impossible to analyze without the scalability MDAnalysis offers.

I recall talking to Jean Helie about this at the BPS two years ago and he also remarked his work would not be possible without MDAnalysis (and the then recently introduced indexing of gromacs trajectories).

dotsdl commented 8 years ago

@orbeckst happy to help @richardjgowers on this kind of section if desired. I think it's a good fit for the technical details for MDAnalysis' performance, and it's totally necessary for doing anything reasonable with ~10M atom systems.

kain88-de commented 8 years ago

@MDAnalysis/coredevs I will write 2-3 paragaphs about the analysis module and our current approach to unify the interface with AnalysisBase. As an example I will use the new Contacts where I can also empathize that we try to make standard analysis methods easy while providing flexible API to extend them, here I can go into the q1q2 analysis which just uses this flexibility.

orbeckst commented 8 years ago

I also want to mention a bit about the development process and how we interact with users:

kain88-de commented 8 years ago

should the new topology section be under a more general 'outlook' where we lay out the plans for the future until 1.0?

orbeckst commented 8 years ago

On 23 May, 2016, at 14:36, kain88-de notifications@github.com wrote:

should the new topology section be under a more general ‘outlook' where we lay out the plans for the future until 1.0?

Start writing it as if this is the current state. It’s pretty annoying if the paper is outdated in two months…

We can always shift it around a little bit and add qualifiers when polishing it.

Oliver Beckstein * orbeckst@gmx.net skype: orbeckst * orbeckst@gmail.com

richardjgowers commented 8 years ago

Ok I'm going to write something on basic usage and selections