I have two coordinate files—one for a substrate and one for a product. I’m wondering if it’s possible to refine or align them so that the atom numbering is consistent between the two structures. This is necessary for methods like NEB-TS in Orca.
You can do this in the atom coordinate editor (it’s a bit of a hack). Since you can copy / paste individual lines, you can cut line 5 (i.e., atom 5) and paste it after line 2 to become atom 3, etc.
It probably wouldn’t be hard to make a Python script for renumbering, but at the moment, there isn’t like a mouse tool that you can click on individual atoms to reset the numbering.
@mandaro Jimmy Charnley’s implementation of the Kabsch test in Python (link to the public GitHub repository, BSD-2 license model) to process .xyz and .pdb offers an optional ordering which defaults to the Hungarian algorithm. The script’s documentation indicates a few literature references, too.
@ghutchis I don’t know if Charnley’s implementation would be an addition suitable to Avogadro2 – I’m aware that there is a similar one by in Jmol, which basically is a compare model1 model2 rotate translate. However, over time (relying both on numpy and scipy), rmsd became rather large and heavy to set up and get running.
I think the most useful option for that implementation is as a Python script plugin (e.g., present a dialog to select the reference file xyz or pdb file, and pick whether to include hydrogens and/or reorder atoms) - then run Charnley’s code and read back the results.