/* * HomologyContainer.hpp * * Created on: Sep 22, 2012 * Author: heber */ #ifndef HOMOLOGYCONTAINER_HPP_ #define HOMOLOGYCONTAINER_HPP_ // include config.h #ifdef HAVE_CONFIG_H #include #endif #include #include "Fragmentation/KeySet.hpp" class Graph; /** This class takes all KeySets in a Graph, checks for those that homologues * of one another and places them together. * * This is meant as a storage for key, value pairs, where the key is the KeySet * and the value is the energy associated to the fragment this keyset * represents. * Afterwards this can then be used as training data for a high-dimensional * approximation to the Born-Oppenheimer-surface decomposed into lower- * dimensional terms in an ANOVA-like fashion. * */ class HomologyContainer { public: HomologyContainer(const Graph &keysets, const std::map< KeySet, double> &values); ~HomologyContainer() {} private: typedef double value_t; typedef std::multimap< KeySet, value_t> container_t; }; #endif /* HOMOLOGYCONTAINER_HPP_ */