mosdef-hub / gmso

Flexible storage of chemical topology for molecular simulation
https://gmso.mosdef.org
MIT License
52 stars 32 forks source link

Custom/non-element "Elements" #77

Open mattwthompson opened 5 years ago

mattwthompson commented 5 years ago

For non-atomistic systems, the ParmEd/MDTraj approach is to defined a custom "Element" that is an instance of some Element class but does not correspond to anything physically - instead it just tracks a name and a mass (which is all we think we need to care about).

My idea was to have a special Element-like class that inherits from our Element class but only includes the information we care about.

Alex suggested that, because physically a UA/CG bead doesn't really include the physical concept of an element, maybe we shouldn't have them as elements? A Site can include the mass of the bead and other things can probably just be tied to that Site (or, in some situations, instead of AtomType). I like this approach - it makes sense and is consistent with the "be able to specify things but also fall back if needed" sort of design we use elsewhere.

mattwthompson commented 5 years ago

I think the most reasonable approach would be to not have a clearly-defined element for non-physical things and instead just keep that information directly in the Site. Which is to say the mass, since I don't think the other atomic information is relevant for a UA/CG bead.