A colleague showed me GAUSSIAN 09 which comes with GaussView 5 for drawing structures. What impressed me was the snappiness of the Clean function.

What algorithm is used for the Clean function?

The GaussView 5 Reference can be downloaded from the publisher’s web site. It doesn’t seem to contain the information that I’m looking for.

Background: As part of a project called SAN – Self Aware Network, I have a similar problem, though with additional constraints. To find the distribution of points in space, I implemented a genetic algorithm. Unfortunately, with large structures, this algorithm tends to get stuck in local minima. I documented the algorithm in the report SAN: Location Optimizer. A mathematician friend implemented a solution using gradient descend. Yesterday, he showed me some nice results, but it’s nowhere as snappy as GaussView.


I also contacted Gaussian technical support. Their response: “Unfortunately, no. We do not have additional documentation about this function, other than what is already present in the GV5 manual. This function just uses a very simple MM expression with crude parameters just to provide a simple way to "clean" a structure drawn "by hand" in GaussView. It is certainly not intended to give accurate geometries (it is expected that one is going to use some other model in Gaussian to run a geometry optimization and get a good geometry). The purpose is simply as another aid as part of building a structure in GaussView, so one may "clean" a structure faster (not always) than otherwise using "modify bond", "modify angle", "modify dihedral" tools.”

  • 2
    $\begingroup$ I think it is unlikely you will find a direct answer to this question if the software is owned by Gaussian. Gaussian is notoriously strict about who they share their source code with and does not like when people share details of their algorithms. As an aside, I am almost certain that this "clean" function is not optimizing the structure. It is essentially making a sophisticated guess at the structure, so you might see faster convergence with GD if you use the clean output as an initial guess. Also, finding the global minimum of large structures is notoriously difficult and often unnecessary. $\endgroup$ – jheindel Jan 22 '19 at 4:01
  • 1
    $\begingroup$ This webpage gives general information about what clean is doing :http://flex.phys.tohoku.ac.jp/texi/gview/clean.htm. Basically, it's using van der waal's radii and various weights assigned to different internal coordinates to make a good guess. Again, you'll need to do a real optimization if you are interested in true minima. $\endgroup$ – jheindel Jan 22 '19 at 4:03
  • 1
    $\begingroup$ I would be very willing to bet that they are using gradient descent since they will already have a code for this to do actual geometry optimizations. If not, then it would be a Newton-Raphson, but given that they recommend 150 steps, this seems unlikely. $\endgroup$ – jheindel Jan 22 '19 at 17:40
  • 1
    $\begingroup$ First off, it's worth stating that GaussView is not developed by Gaussian, Inc. You might find that AMPAC GUI looks familiar. $\endgroup$ – Geoff Hutchison Jan 29 '19 at 20:09
  • 1
    $\begingroup$ I strongly suspect that GaussView is using steepest descent or conjugate gradients on a very simple force field (e.g., Lennard-Jones). Based on your comments, it looks like you want to read up on Distance Geometry embedding or some of the Stochastic Proximity Embedding and Self-Organizing papers by Agrafiotis. $\endgroup$ – Geoff Hutchison Jan 29 '19 at 20:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.