Skip to content
Snippets Groups Projects
  1. Aug 21, 2019
  2. Feb 25, 2019
  3. Jan 11, 2019
  4. Nov 22, 2018
  5. Nov 20, 2018
  6. Nov 17, 2018
    • Giovanni Bussi's avatar
      Completed exception mapping. · 8f970ae6
      Giovanni Bussi authored
      Now every exception thrown within PLUMED is remapped in the wrapper.
      
      In particular:
      - All standard C++ exceptions are remapped to equivalent ones.
      - PLUMED exceptions and lepton exceptions are remapped to ad hoc classes.
      - Any other exception derived from std::exception is mapped to std::exception.
      - Any other exception is rethrown after printing a warning.
      8f970ae6
  7. Oct 15, 2018
  8. Sep 28, 2018
  9. Sep 27, 2018
    • Giovanni Bussi's avatar
      Allow remapping exceptions. · 38a4763a
      Giovanni Bussi authored
      When using the C++ interface, this change remaps exception within plumed
      to a class that inherits from std::runtime_error.
      This allows them to be catched also from an MD code linked to
      a different C++ library.
      
      I also removed some cpp options, I think it is better to enforce
      exceptions to be managed in this way.
      38a4763a
  10. Jul 24, 2018
    • Giovanni Bussi's avatar
      auto · 026364f6
      Giovanni Bussi authored
      Using auto when creating a unique_ptr
      026364f6
    • Giovanni Bussi's avatar
      Fixed cmd map · 5b30b04d
      Giovanni Bussi authored
      Using c++11 to initialize the map instead of calling a function everytime
      5b30b04d
  11. May 03, 2018
    • Giovanni Bussi's avatar
      Better detailed timers · 0e280f74
      Giovanni Bussi authored
      Actions are now shown in order also when they are more than 10.
      Perhaps should be cleaned up a bit, but it works.
      0e280f74
  12. Apr 30, 2018
    • Giovanni Bussi's avatar
      Improved StopWatch class · e558166d
      Giovanni Bussi authored
      Changed so that start()/stop()/pause() return *this.
      This allows things like
      sw.start().stop()
      
      Stopwatch can be initialized with the reference to a log. In this
      case, it logs itself at destruction, provided the log is open.
      
      Added Stopwatch::Handler class
      It allows writing exception safe stopwatches which automatically
      stop when an exception is caught.
      
      Removed unnecessary start/stop in PlumedMain constructor.
      
      Simplified interface: Use default arguments instead of multiple functions.
      e558166d
  13. Apr 16, 2018
  14. Mar 12, 2018
  15. Nov 24, 2017
    • Giovanni Bussi's avatar
      Catch errors in PlumedMain::cmd() · 0b159ed2
      Giovanni Bussi authored
      I added a try/catch block so that any error that arises within a
      cmd() call is also reported on the log file (if open).
      
      In principle, this should allow removing all the duplicate code where we
      both write on the log and on the plumed_merror.
      
      Notice that in order to satisfy astyle the whole content of PlumedMain::cmd()
      has been indented so appears as changed in this commit. Actually, it is only
      indented.
      
      This commit closes #319
      0b159ed2
  16. Nov 15, 2017
    • carlocamilloni's avatar
      PlumedMain: · b4f11844
      carlocamilloni authored
      - added some info in the error message of the parser
      - std::string everywhere
      b4f11844
  17. Nov 06, 2017
    • Giovanni Bussi's avatar
      Improved syntax for ForwardDecl · 7de49fd7
      Giovanni Bussi authored
      Using ...Args it is easy to forward any argument to the constructor.
      
      This allows avoiding to explicitly put "new" statements when initializing
      a ForwardDecl. In addition, all ForwardDecl that should be constructed
      without arguments can be omitted from the initialization list, which
      significantly simplifies the code.
      7de49fd7
  18. Oct 11, 2017
  19. Sep 27, 2017
  20. Sep 26, 2017
  21. Sep 16, 2017
    • Gareth Tribello's avatar
      Python interface (#262) · 98650e1b
      Gareth Tribello authored
      * Added first working python interface
      
      * Tidied up python interface
      
      * Further simplification of python
      
      * Added example which should be deleted later
      
      * Added functions for getting values from plumed to python
      
      * Added regression test for python interface
      
      * Added mechanism to return exceptions from plumed to python
      
      * First commit of experimental stuff to catch exceptions in python correctly
      
      * Got rid of unecessarily duplicated method in PlumedMain
      
      * Fixed crazy MAC input encoding
      
      * Oops, had also broken the script..
      
      * Removed debug messages. Works on Ubuntu Linux
      
      Linus rules. Apple sucks.
      
      * Fixed PlumedMain passing of data from plumed to outside code
      
      * Hard coded real precision for python interface - this should have been with the last commit
      
      * Added first go at working makefile for python interface
      
      * Added options to configure to build python interface from makefile
      
      * Small changes to where loading of python interface is done
      
      * Removed unecessary wrapper c++ function from python interface
      
      * Made python install work in a way that is consistent with the rest of plumed
      
      * Added pythonpath to travis.yml
      
      * Added installation of Cython to travis.yml
      
      * Added ifdef block to stop cppcheck throwing an error
      
      * Using uniqu_ptr for DataFetching object in PlumedMain
      
      * Added install command for numpy to travis
      
      * Added string to tell me whether plumed+python is being built
      
      * Small change in travis.yml file to see if I can get python compile working
      
      * Compilers for cython are now specified from Makefile.conf
      
      * Now printing stuff on environment to try to work out why linking doesn't work
      
      * A new attempt to fix the travis-ci issues
      
      * Got rid of troubling TRAVIS_PYTHON_FLAG
      
      * Small change to see if we can get this to work on travis
      
      * Now setting LDSHARED from LDSO in makefile
      
      * Added something to print everything in the python path when we run the python test
      
      * Fixed python path in travis.yml
      
      * Removed stuff for debugging configuration on travis
      
      * Customized conda install (for python) in travis.yml so that osx version is installed for osx and linux version is installed for linux
      
      * Set TMPDIR in .travis.yml to hopefully get osx to compile PLUMED + Python
      
      * Made it so that python interface is rebuilt when user does make install so that correct paths are used
      
      * Made it so that python interface is rebuilt in staging area during install procedure
      
      * Corrected regtest script so that python tests are dealt with the same as everything else
      98650e1b
  22. Sep 08, 2017
    • Giovanni Bussi's avatar
      unique_ptr in ActionSet · 170f2ee5
      Giovanni Bussi authored
      This change required some small fixes here and there.
      
      In particular, the code accessing elements of ActionSet thinking it was
      a pointer now need a .get() in order to access the pointer (e.g. for
      a dynamic_cast)
      170f2ee5
  23. Aug 28, 2017
  24. Jul 23, 2017
  25. Jun 19, 2017
    • Giovanni's avatar
      Fix 241 (#248) · 5952dbec
      Giovanni authored
      * speed up of sharing and applying in plumed core
      the main differences are:
      - new member of class atoms to track unique local atoms (i.e. all the atoms needed by plumed action in a domain)
      - positions are retrieved only for unique local atoms
      - forces are zeroed only for unique local aotms
      - forces are applied only for unique local atoms
      in a system of 200K atoms on 4 mpi rank with plumed using only 4 atoms the
      sharing and applyign time improves by 2 order of magnitudes
      
      * removed leftover printf
      
      * core: make it a bit faster also without domain decomposition
      
      * astyle
      
      * fix-241: unique atoms are update only if:
      - particle decomposition has been updated
      - domain decomposition has been updated
      - replica-exchange step
      - neighbour lists have been updated
      overall this should make the sharing code even faster
      
      * actionAtomistic have now a list of local atoms that is updated on:
      - neighbour list step
      - update of the pd/dd list
      this allow to simplify the loop for the generation of global local list of unique atoms
      
      * atoms: small tweaks
      
      * fix: reallocate memory less often
      
      * fix: for the scalar case there is no need to generate the list of unique atoms
      
      * style
      
      * few comments
      5952dbec
  26. Jun 08, 2017
  27. Jun 06, 2017
  28. May 12, 2017
  29. May 11, 2017
  30. Apr 25, 2017
  31. Apr 21, 2017
Loading