# Openbabel: Generate random 3D geometry

Is it possible with openbabel to generate random 3D geometries (i.e. conformers) of a molecule without taking energy into account? Ideally with the property of being truly random, so that after generating conformers like this for a sufficient amount of time, a good coverage of the conformational space is obtained. Because the --conformer options of openbabel takes energy into account, but I want to input the geometries into a qc program that then calculates the energies for the conformers.

• I would generate a normal coordination file and write a little script that twists desired bond-angles by different amounts – Fl.pf. Jul 6 '17 at 9:18
• If you create actual random 3D geometries I expect 99.9% of those being absolute garbage and they won't have anything to do with different confomers. There are techniques which allow for confomer search, for example simulated annealing. – DSVA Jul 6 '17 at 9:27
• ^ this. I don't know what exactly you want to achieve, but maybe some kind of MD simulation could help you get enough snapshots? I mean you have something in the scale of $n_{steps} \cdot N_{atoms}^3$ calculations to do if you want a random, statistical approach to all angles. I don't know, but my boss would ask me if I was crazy if I would start 10k calculations of which 9990 would be garbage... – Fl.pf. Jul 6 '17 at 10:49
• Well, the thing with the openbabel conformer generator is that it is often not expolaritive enough (sometimes even only a single conformer is returned). So my idea was to generate random conformers and optimize them afterwards to have a more robust method. – logical x 2 Jul 6 '17 at 16:12
• 99.9% no problem: then I just generate 10000 structures and get 10 conformers that are actually different. because openbabel just gives me basically always the same conformer. – logical x 2 Jul 6 '17 at 16:16

If you're finding only one conformer output, that's because you're not using the --writeconformers flag: http://open-babel.readthedocs.io/en/latest/3DStructureGen/multipleconformers.html
• Doesn't matter what combination of input flags - if you don't use --writeconformers you'll only get the lowest energy one. Alternatively, write a Python script. :-) – Geoff Hutchison Oct 12 '17 at 21:28