# How to get more significant digits from OpenBabel?

I am generating conformers from SMILES string using OpenBabel. The shell script looks something like:

obabel -:"C=C(C)C(=O)OCCN(C)C" -O test_.pdb --gen3D -d
obabel test_.pdb -O conf_op.xyz --conformer --nconf 30 --score rmsd --writeconformers


I am wondering how I can get more significant digits in my conformer search. Right now, the output has 6 significant digits. I would like to send this up to 12 if possible.

This is how it looks like:

26
test_.pdb
C          3.58931       -1.28578        2.90344
C          4.15221       -0.82944        1.59187
C          4.95274       -1.60633        0.84210
C          3.75510        0.55018        1.18604


Is there a way to increase accuracy? Any advice would be appreciated.

• Do you have any reason to believe you need positions more accurate than this? Its probably within error of your program if I had to guess. Jan 7 at 16:07
• I am going to run quantum calculations on it with psi4. I thought I could do with some additional accuracy @TristanMaxson Jan 7 at 16:21
• These are just initial guesses though correct? I may just be unaware, I think its a valid question I just was curious why more accuracy would be needed. Jan 7 at 16:44
• @megamence - I strongly suspect that the difference between the force field and whatever quantum method you use with Psi4 will be at least 0.01Å, making "accuracy" in coordinates irrelevant. Jan 7 at 16:57

The PDB file format has a strict specification on the number of columns, etc. (Consider that some proteins have very large sizes, so distances can be many Ångstroms.)

Thus, the number of decimal places are generally given by the file format.

Some people have asked why Open Babel doesn't give more decimal places, e.g., in the XYZ format, which is, in principal, more flexible:

C          1.38320       -0.22154        0.00551
C          0.50683       -1.30676       -0.00807


Consider that the accuracy above is 0.00001Å, far beyond any experimental technique. I picked that as a reasonable balance - adding more decimal places quickly adds up for file sizes across many larger molecules.

In principal, there may be some small round-off errors if you're converting to XYZ from some calculation.

If someone can provide clear justification that the round-off error produces significant error in a subsequent calculation, I'd consider that a bug worth fixing.

You seem to be generating initial geometries with a force field. I'd guess that errors in bond lengths, angles, etc. from the force field (vs. quantum chemistry) are on the order of 0.01Å or larger, so even 5 decimal places seems overkill.