I am engaged in the field of quantum-chemical calculations using programs written by myself. I have found out that I have a problem in finding the point group symmetry of the molecule. The first idea that came up was to determine the possible symmetry elements by transforming the object in space by symmetry operations and testing if system coincides with itself. This way is time consuming, because finding the axes and planes of symmetry requires a very large number of comparisons. And if the system is large, it takes a long time. The second way is to use the Z-matrix. But I don’t have any idea what to start with in this direction. I don’t want to reinvent everything, if it has already been invented and checked. I'm from Ukraine, so I apologize for my English. If something is incomprehensible: please ask to repeat.
Work out the matrix of distances of the atoms, and then apply a graph isomorphism algorithm for the complete undirected graph whose vertices are lavbelled with atom types and whose edges are labelled with the distances.
An entry point to the graph isomorphism problem is http://www.cs.sunysb.edu/~algorith/implement/nauty/implement.shtml