Analysing trajectories with chemfiles
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
chemfiles @ ac40ff0

cfiles, tools for chemistry files analysis

Build Status codecov

cfiles is a collection of post-processing algorithms for molecular or quantum chemical simulations. It offer both data managing capacities and analysis of simulation output. cfiles is implemented using the chemfiles library for reading and writing trajectory data.

You can ask questions about cfiles in the chat, or in github issues.


Analysis algorithms

  • Radial distribution functions;
  • Density profiles;
  • Angles and dihedral angles distributions;
  • Hydrogen bonds detection.

Data management

  • Convert from one file format to another;
  • Merge multiple trajectories in one file.

Get it, build it

To build it you can run

git clone --recursive
cd cfiles
mkdir build
cd build
cmake ..

You can then copy the cfiles executable to some place in your path

Note: When using the C++ standard library from GCC 4.8, cfiles rely on the boost_regex library, which can be installed using your favorite package manager.


You are welcome to contribute to cfiles, whatever your skill level. You can help with new analysis algorithms, improving existing ones, adding or improving documentation, etc. If you plan adding new code, please open an issue about it for discussion.

Don't forget to run the tests when changing the code; and to add new tests when adding new algorithms. The tests are Python scripts in the tests directory, checking the output of the algorithms.

cd cfiles/build

Here is a short check list to contribute to cfiles. If there is anything you don't understand, or if you have any question, please ask! You can reach me on github issues, by email, or in the chat.

  • Fork cfiles;
  • Create a local branch;
  • Add code / correct typos / ...;
    • Add new tests with your code;
    • Add documentation for your code;
  • Check that the tests still pass;
  • Push to Github;
  • Create a Pull-Request;
  • Discuss your changes with the reviewers;
  • Have your code merged;
  • Celebrate! 🎉 🍰 🎉

Contributors and license

cfiles was created and is maintained by Guillaume Fraux, and put to your disposition under the terms of the 3 clauses BSD license. By contributing to cfiles, you agree to distribute your contributions under the same license.

All the contributors to chemfiles are listed in the AUTHORS file. Many thanks to all of them!