1. 04 May, 2020 1 commit
    • Andy Simmonett's avatar
      Nosé Hoover Middle scheme (#2600) · 5f374e1d
      Andy Simmonett authored
      * Convert Nose-Hoover into LF middle scheme by copying NH kernels
      
      * Rebrand VelocityVerletIntegrator as NoseHooverIntegrator
      
      * Consolidate NH tests
      
      * NoseHooverChainKernel begone
      
      * Make Windows builds happy
      
      * Add missing header for Windows build
      
      * Fix mistake in CommonKernels header
      
      * Add 6th Yoshida-Suzuki and make it the default
      5f374e1d
  2. 19 Apr, 2020 1 commit
  3. 18 Apr, 2020 1 commit
  4. 10 Apr, 2020 1 commit
  5. 01 Apr, 2020 1 commit
  6. 31 Mar, 2020 2 commits
  7. 30 Mar, 2020 3 commits
  8. 29 Mar, 2020 1 commit
    • Rasmus Wriedt Larsen's avatar
      Minor Python tweaks (#2616) · c87b96fb
      Rasmus Wriedt Larsen authored
      * Use list-comprehension in Python code
      
      A minor change, but slighly easier to understand the initialization of
      `parent_exclude_list` in my opinion.
      
      * Implement __ne__ in Python classes that has __eq__
      
      In Python 3, `__ne__` is automatically implemented as `not __eq__`.
      
      However, in Python 2 it seems to be implemented as `not is` (so based on object
      identity).
      
      Based on setup.py [0] which says that "OpenMM requires Python 2.7 or better", it
      should be useful to have better support for Python 2 :)
      
      This was already done in 4 of the 12 classes that implements `__eq__`
      
      ```
      >>> class WildCard(object):
      ...     def __eq__(self, other): return True
      
      >>> w = WildCard()
      
      >>> w == 42
      True
      
      >>> w != 42
      True
      
      >>> w != w
      False
      ```
      
      [0]: https://github.com/openmm/openmm/blob/5cef29ce8d4e17b6d0f9fd8a3c6cc1669ca0ba2b/wrappers/python/setup.py#L237
      
      * Use umambiguous floor division for index calculations in Python
      
      This makes the code work as intended if run as Python 3
      
      ```
      $ python2 -c 'print(3/2, 3//2)'
      (1, 1)
      $ python3 -c 'print(3/2, 3//2)'
      1.5 1
      ```
      
      * Use `with` for file handling in Python
      
      * Use `is None` instead of `== None` in Python
      
      This is recommended in PEP8:
      
      > Comparisons to singletons like None should always be done with is or is not, never the equality operators.
      > - https://www.python.org/dev/peps/pep-0008/#programming-recommendations
      c87b96fb
  9. 24 Mar, 2020 1 commit
  10. 19 Mar, 2020 1 commit
  11. 17 Mar, 2020 2 commits
  12. 16 Mar, 2020 1 commit
  13. 12 Mar, 2020 1 commit
  14. 27 Feb, 2020 1 commit
  15. 24 Feb, 2020 2 commits
  16. 18 Feb, 2020 1 commit
  17. 06 Feb, 2020 2 commits
  18. 17 Jan, 2020 2 commits
  19. 14 Jan, 2020 1 commit
  20. 06 Jan, 2020 1 commit
  21. 04 Jan, 2020 3 commits
  22. 03 Jan, 2020 2 commits
  23. 30 Dec, 2019 1 commit
  24. 16 Dec, 2019 2 commits
  25. 10 Dec, 2019 1 commit
  26. 06 Dec, 2019 1 commit
  27. 03 Dec, 2019 1 commit
  28. 02 Dec, 2019 1 commit
  29. 15 Nov, 2019 1 commit