If you work with molecular models of large biomolecules, you’ve probably encountered the challenge of selecting chains based on specific features like visibility, atom count, charge, or chain ID. Especially when dealing with complex proteins or assemblies, manually browsing through the molecular tree can be cumbersome and error-prone.
Thankfully, SAMSON’s Node Specification Language (NSL) provides a precise and fast way to query specific chains using attribute filters. In this post, we focus on the chain attribute space, which lets you filter only protein (or polymer) chains with fine control.
Understanding the Chain Attribute Space
In NSL, the chain attribute space (short version: c) refers to nodes that represent chains. You can use this to access a rich set of properties, either to filter or select them in your workspace.
Let’s explore some of the most common use cases with examples:
โ๏ธ Select chains by visibility
Working with layered or large structures? You might want to isolate visible or hidden chains.
c.v→ Selects visible chains.not c.v→ Selects hidden chains.
๐งฌ Select chains by chain ID
Chain IDs are crucial in PDB parsing and multi-chain analyses.
c.id 2→ Selects the chain with ID = 2.c.id 1:3,6→ Selects chains with ID between 1 and 3, and also ID = 6.
๐ Charge-based filtering
If you’re analyzing charge distribution:
c.fc > 1→ Selects chains with formal charge greater than 1.c.pc 1.5:2.0→ Selects chains with partial charge in that range.
โ๏ธ Select by number of atoms or residues
Useful for size-based selections:
c.nat < 1000→ Chains with less than 1000 atoms.c.nr > 130→ Chains with more than 130 residues.
๐งช Element counts
Target chains rich or poor in specific atoms, e.g.:
c.nC < 10→ Few carbon atoms.c.nO 10:20→ Oxygen atom count in a specific range.
๐งฉ Combine attributes for complex filtering
Chains can be filtered using combinations of attributes. For example:
|
1 |
c.v and c.nr > 100 and c.nC > 20 |
This selects chains that are visible, have more than 100 residues, and more than 20 carbon atoms.
Why this matters
Efficient selection of chains is a foundation for analysis, editing, and simulation setup. Using attribute-based queries reduces errors and saves time โ especially when working with large systems like ribosomes or complexes with many ligands and cofactors.
The chain attribute space offers a blend of simplicity and precision, and once you learn to use it fluently, you can interact with your molecular systems more effectively.
Want to go deeper? For the full list of supported attributes and examples, visit the official documentation: https://documentation.samson-connect.net/users/latest/nsl/chain/
SAMSON and all SAMSON Extensions are free for non-commercial use. You can download SAMSON at https://www.samson-connect.net.
