Skip to content

Thermodynamic ensembles in input files #111

Open
@Luthaf

Description

@Luthaf

Here is an idea that I had about the input files. Currently, the input system is quite complex and the user need to choose a lot of parameters. This is good, because some people will like to use this. But it make the code a bit harder to use for newcomers.

How about having some kind of alias system in the input files, allowing to select thermodynamic ensembles with a sensible set of default?

For example,

[simulations.propagator]
type = "MolecularDynamics"
ensemble = {name = "NPT", pressure = "500 bar", temperature = "300 K"}

Would expand to something like this, picking algorithms and parameters values:

[simulations.propagator]
type = "MolecularDynamics"
timestep = "1 fs"
integrator = {type = "BerendsenBarostat", pressure = "500 bar", timestep = 1000}
thermostat = {type = "Berendsen", temperature = "300 K", timestep = 100}

Which algorithm would be used could change from one release to another, and to make sure simulation conditions are properly documented, the code would print the equivalent input somewhere when expanding the alias.

The integrator parameters (in MD) or the moves (in MC) would be as generic as possible, and thus not generate the fastest possible simulation. But it can get people started more easily.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions