<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<p>Hi again!</p>
<p><br>
</p>
<p>So in my quest to use OpenMM from Chimera, my first proof-of-concept attempts consist of using a PDB file as intermediate to convert chimera.Molecule objects to OpenMM Topologies (using openmm.app.PDBFile loader). </p>
<p><br>
</p>
<p>While not ideal yet, it'd be convenient to use StringIO() as a memory file, and I have been more or less successful. This is my strategy:</p>
<p><br>
</p>
<p>memfile = StringIO()</p>
<p>m = chimera.openModels.list()</p>
<p>chimera.pdbWrite(m, m[0].openState.xform, memfile)</p>
<p>memfile.seek(0)</p>
<p># pass memfile to openmm.app.PDBFile and do OpenMM stuff</p>
<p>memfile.close()</p>
<p><br>
</p>
<p>It works, but some residues are not properly recognised... I dumped the converted PDB to an actual file and saw that the problematic residue (an ARG) is totally messed up! I've attached the results: original file is the mol2, the converted one is the pdb,
 and also a Chimera session with both superimposed.</p>
<p><br>
</p>
<p>What's the recommended method to convert a chimera.Molecule to a PDB file (if possible, in-memory) with Chimera Python API?</p>
<p><br>
</p>
<p>Thanks a lot!</p>
</div>
</body>
</html>