Understanding Backbone Attributes in SAMSON’s Node Specification Language (NSL)

Molecular modeling often involves managing vast and complex molecular structures. One of the recurrent challenges is specifying and querying the properties of these molecules with precision. If you’ve ever needed to streamline your work when handling molecular backbones, SAMSON’s Node Specification Language (NSL) is here to help!

In this blog post, we’ll explore the backbone attribute space in NSL. This guide helps you understand how to manage molecular backbones with attributes such as visibility, material possession, selection states, and more. These attributes are not just labels—they allow for streamlined queries and operations within SAMSON’s integrative molecular design platform, saving valuable time and effort.

What Are Backbone Attributes?

Backbone attributes are properties within the “backbone” attribute space (short name: s) that help describe and query the backbone nodes of molecular entities. These attributes include names, possible values, and example expressions, making it easier to perform precise operations on molecular structures.

Backbone attributes can be grouped into two main categories:

  • Attributes inherited from the node attribute space
  • Attributes inherited from the structuralGroup attribute space

Commonly Used Backbone Attributes

Here are some key attributes you might find useful when working with backbones in NSL:

Inherited From Node Attribute Space

  • hasMaterial (hm): A boolean attribute to check whether the backbone has material. For example: bb.hm or not bb.hm.
  • hidden (h): Useful for checking or toggling the visibility of a backbone. E.g., bb.h or not bb.h.
  • name (n): The string-based name of the backbone. You can query backbones by their names using patterns: bb.n "A" or bb.n "L*".
  • ownsMaterial (om): A boolean attribute to check if the backbone owns the material: bb.om.
  • visibilityFlag (vf): Allows checking visibility flags of backbones: bb.vf false.

Inherited From StructuralGroup Attribute Space

  • formalCharge (fc): An integer-based attribute representing the formal charge of the backbone. Examples: bb.fc > 1 or bb.fc 6:8.
  • numberOfAtoms (nat): Helps query the count of atoms within a backbone: bb.nat < 1000.
  • partialCharge (pc): A float-based attribute for querying fractional charges. Example: bb.pc > 1.5.
  • numberOfHydrogens (nH): Query the number of hydrogen atoms in a backbone: bb.nH < 10.

Practical Use Cases

One practical example of using backbone attributes could be selecting specific backbones for molecular dynamics or simulations. For instance:

  • To find all backbones that are visible: bb.v
  • To query backbones with a formal charge greater than 1: bb.fc > 1
  • To isolate structures with a specific number of carbon atoms: bb.nC 10:20

These simplified queries empower modelers to execute tasks efficiently without manually inspecting each node, saving hours of tedious effort.

Resources to Get Started

With these attributes at your disposal, NSL opens up significant possibilities for molecular modeling. To dive deeper into the full range of backbone attributes and their usage, you can explore the detailed documentation page here.

Note: SAMSON and all SAMSON Extensions are free for non-commercial use. Download SAMSON at SAMSON Connect today!

Comments are closed.