I was thinking about issue #36. And it made me think, what if someone passed the SMIRKSifier a different pattern than just bonds, angle, torsion, improper, non-bond? Right now I'm not sure it would handle it well because it uses openforcefields way of handling symmetry in those parameters.
For example, a bond specified between atoms (1,2) and (2,1) would be treated as one parameter.
I will add some more tests to SMIRKSifier to check that it can handle clusters for all of those types and a "weird" type, maybe 5 atoms in a row or branching.
I was thinking about issue #36. And it made me think, what if someone passed the
SMIRKSifier
a different pattern than just bonds, angle, torsion, improper, non-bond? Right now I'm not sure it would handle it well because it uses openforcefields way of handling symmetry in those parameters. For example, a bond specified between atoms (1,2) and (2,1) would be treated as one parameter.I will add some more tests to SMIRKSifier to check that it can handle clusters for all of those types and a "weird" type, maybe 5 atoms in a row or branching.