Implement CanonicalEnsemble

Description

As a first example for a functional ensemble derived from BaseEnsemble (#162 (closed)) the canonical ensemble shall be implemented. This includes

  • a trial move
  • an acceptance/rejection condition
  • ensemble specific kwargs and properties (temperature)

Notes

  • in this first version the energy change is to be computed using a total energy calculation (see #167 (closed))
  • a smart strategy for computing the energy change due to different types of moves (also relevant for other ensemble will be discussed elsewhere)

Sub-tasks

  • trial move
  • acceptance/rejection
  • kwargs, properties
  • unit test
  • add basic example

Demonstration

  • all tests pass
  • complete docstrings
  • example available
Edited by Mattias Ångqvist