For molecular modelers, accurately specifying and analyzing molecular structures is a critical task—and it often involves defining and working with chemical bonds. This is where SAMSON’s Node Specification Language (NSL) comes in, offering powerful ways to explore and filter data. In this blog post, we’ll dive deep into how bond attributes work in NSL, and how they can make your modeling sessions more efficient and focused.
What Are Bond Attributes in NSL?
Bond attributes in NSL are part of the bond attribute space (short name: b) and are used specifically for matching and analyzing chemical bond nodes in your molecular models. They make it possible to filter and work with bonds based on criteria like their type, length, custom type, or order.
Let’s break down the most important bond attributes available in NSL:
Custom Types (customType)
The customType attribute (short name: b.ct) allows you to match bonds with specific custom identifiers. For example:
bond.customType 0(short version:b.ct 0) matches bonds with a custom type of 0.bond.customType 0:2(short version:b.ct 0:2) matches bonds with custom types between 0 and 2.
If your model uses custom type classifications for bonds, this attribute can help isolate specific groups of bonds.
Bond Length (length)
The length attribute (short name: b.len) allows you to filter bonds based on their length. This can be extremely useful in structural modeling, where bond lengths often need to fall within precise ranges. Possible queries include:
bond.length >= 1.5A(short version:b.len >= 1.5A) matches bonds longer than 1.5 angstroms.bond.length 0.15nm:2.1nm(short version:b.len 0.15nm:2.1nm) matches bonds with lengths between 0.15 and 2.1 nanometers.
Whether you’re refining a molecular model or validating structural hypotheses, specifying length constraints has never been easier.
Bond Order (order)
The order attribute (short name: b.o) refers to the bond order and allows filtering based on numeric values. For example:
bond.order >= 2(short version:b.o >= 2) matches bonds with orders of 2 or higher.bond.order 1:1.5(short version:b.o 1:1.5) matches bonds with orders between 1 and 1.5.
This is particularly useful for differentiating between single, double, or partial bond types in complex molecules.
Bond Type (type)
The type attribute (short name: b.t) matches bonds with specific chemical types. The supported types include:
| Type | Short Name | Description |
|---|---|---|
single |
s, 1 |
single bond |
double |
d, 2 |
double bond |
amide |
am |
amide bond |
aromatic |
ar |
aromatic bond |
For example:
bond.type single(short version:b.t s) matches single bonds.bond.type single, double(short version:b.t s,d) matches both single and double bonds.
Streamline Your Modeling Workflow
Using bond attributes, you can focus your model exploration and analysis with surgical precision. Whether you’re optimizing molecular geometry, validating a structure, or analyzing interactions, NSL makes it intuitive to specify bond attributes in meaningful ways.
To learn more about bond attributes and other features of NSL, visit the full documentation here: https://documentation.samson-connect.net/users/latest/nsl/bond/
SAMSON and all SAMSON Extensions are free for non-commercial use. You can get SAMSON at https://www.samson-connect.net.
