Atom attributes are defined in the atom
attribute space (short name a
). Atom attributes may only match atom nodes.
The following atom attributes are available in NSL:
alt
)aabb
)ar
)c
)ci
)cgm
)cgr
)cgt
)ct
)e
)fc
)g
)het
)hy
)met
)f
)nabb
)nba
)nbc
)nbha
)nbh
)nbn
)nbo
)nbs
)oc
)os
)pc
)pl
)resi
)reso
)sn
)sy
)s
)tf
)w
)Attribute name | Short name | Possible values | Examples |
altLocation | alt | a.alt A | |
aminoAcidBackbone | aabb | a.aabb | |
aromatic | ar | a.ar | |
chain | c | a.c A | |
chainID | ci | a.ci == 1 | |
coarseGrainedMass | cgm | a.cgm > 50Da | |
coarseGrainedRadius | cgr | a.cgr > 0.5A | |
coarseGrainedType | cgt | a.cgt P4 | |
customType | ct | a.ct == 1 | |
element | e | a.e Carbon | |
formalCharge | fc | a.fc > 1 | |
geometry | g | See atom geometry | a.g tetrahedral |
hetatm | het | a.het | |
hybridization | hy | See atom hybridization | a.hy sp2 |
metal | met | a.met | |
fixed | f | a.f | |
nucleicAcidBackbone | nabb | a.nabb | |
numberOfBondedAtoms | nba | a.nba > 2 | |
numberOfBondedHeavyAtoms | nbha | a.nbha > 2 | |
numberOfBondedCarbons | nbc | a.nbc == 2 | |
numberOfBondedHydrogens | nbh | a.nbh == 3 | |
numberOfBondedNitrogens | nbn | a.nbn == 1 | |
numberOfBondedOxygens | nbo | a.nbo == 2 | |
numberOfBondedSulfurs | nbs | a.nbs == 1 | |
occupancy | oc | a.oc < 0.3 | |
oxidationState | os | a.os > 2 | |
partialCharge | pc | a.pc > 2 | |
planar | pl | a.pl | |
residueSequenceNumber | resi | a.resi == 42 | |
resonance | reso | a.reso | |
serialNumber | sn | a.sn > 1000 | |
sybyl | sy | a.sy C.2 | |
symbol | s | a.s Ca | |
temperatureFactor | tf | a.tf > 75 | |
water | w | a.w> | |
x | x | a.x | |
y | y | a.y | |
z | z | a.z |
The atom.altLocation
attribute (short name a.alt
) matches atoms based on their alternate location.
Possible values: a character.
Examples:
atom.altLocation B
(short version: a.alt B
): matches all atoms with alternate location Batom.altLocation B or atom.altLocation C
(short version: a.alt B or a.alt C
): matches all atoms with alternate location B or CThe atom.aminoAcidBackbone
attribute (short name a.aabb
) matches atoms that belong to an amino-acid backbone.
Possible values: none.
Examples:
atom.aminoAcidBackbone
(short version: a.aabb
): matches atoms that belong to an amino-acid backbone"CA" and atom.aminoAcidBackbone
(short version: "CA" and a.aabb
): matches "CA" atoms that belong to an amino-acid backboneThe atom.aromatic
attribute (short name a.ar
) matches atoms that are aromatic.
Possible values: none.
Examples:
atom.aromatic
(short version: a.ar
): matches aromatic atomsatom.symbol C and atom.aromatic
(short version: a.s C and a.ar
): matches aromatic carbon atomsThe atom.chain
attribute (short name a.c
) matches atoms that are aromatic.
Possible values: a character.
Examples:
atom.chain A
(short version: a.c A
): matches atoms from chain Aatom.chain B or atom.chain C
(short version: a.c B or a.c C
): matches atoms from chain B or CThe atom.chainID
attribute (short name a.ci
) matches atoms with specific chain IDs.
Possible values: an integer.
Examples:
atom.chainID == 0
(short version: a.ci == 0
): matches atoms from chain ID 0atom.chainID >= 0
(short version: a.ci >= 0
): matches atoms from chain ID greater than 0atom.chainID >= 0 and atom.chainID <= 2
(short version: a.ci >= 0 and a.ci <= 2
): matches atoms from chain ID between 0 and 2The atom.coarseGrainedMass
attribute (short name a.cgm
) matches coarse-grained atoms with specific coarse-grained mass. Note that this works only for coarse-grained atoms.
Possible values: a mass.
Examples:
atom.coarseGrainedMass >= 50Da
(short version: a.cgm > 50Da
): matches coarse-grained atoms with their mass greater than or equal to 50 daltonatom.coarseGrainedMass > 60Da and atom.coarseGrainedMass < 100Da
(short version: a.cgm > 60Da and a.cgm < 100Da
): matches coarse-grained atoms that have mass between 60 and 100 daltonsThe atom.coarseGrainedRadius
attribute (short name a.cgr
) matches coarse-grained atoms with specific coarse-grained radius. Note that this works only for coarse-grained atoms.
Possible values: a length.
Examples:
atom.coarseGrainedRadius == 0.3A
(short version: a.cgr == 0.3A
): matches coarse-grained atoms with their radius equal to 0.3Aatom.coarseGrainedRadius > 0.2A and atom.coarseGrainedType < 1A
(short version: a.cgr > 0.2A and a.cgr < 1A
): matches coarse-grained atoms that have radius between 0.2A and 1AThe atom.coarseGrainedType
attribute (short name a.cgt
) matches coarse-grained atoms with specific types. Note that this works only for coarse-grained atoms with defined type.
Possible values: a string.
Examples:
atom.coarseGrainedType P4
(short version: a.cgt P4
): matches coarse-grained atoms with type P4atom.coarseGrainedType C3 or atom.coarseGrainedType C5
(short version: a.cgt C3 or a.cgt C5
): matches coarse-grained atoms with type C3 or C5The atom.customType
attribute (short name a.ct
) matches atoms with specific custom types. Note that this works only for atoms with defined custom type.
Possible values: an integer.
Examples:
atom.customType == 0
(short version: a.ct == 0
): matches atoms with custom type 0atom.customType >= 0
(short version: a.ct >= 0
): matches atoms with custom type greater than 0atom.customType >= 0 and atom.customType <= 2
(short version: a.ct >= 0 and a.ct <= 2
): matches atoms with custom type between 0 and 2The atom.element
attribute (short name a.e
) matches atoms by element. Another option is to use symbol.
Possible values: element names.
Examples:
atom.element Carbon
(short version: a.e Carbon
): matches carbon atomsatom.element Nitrogen
(short version: a.e Nitrogen
): matches nitrogen atomsatom.symbol O
(short version: a.s O
): matches oxygen atomsThe atom.formalCharge
attribute (short name a.fc
) matches atoms with specific formal charges.
Possible values: integer values.
Examples:
atom.formalCharge > 1
(short version: a.fc > 1
): matches atoms with formal charge greater than 1atom.formalCharge >= 2 and atom.formalCharge <= 3
(short version: a.fc >= 2 and a.fc <= 3
): matches atoms with formal charge between 2 and 3The atom.geometry
attribute (short name a.g
) matches atoms with specific geometry. Please note, that geometry needs to be computed first.
Possible geometry type values:
linear
(short name: l
)bent
(short name: b
)trigonalplanar
(short name: tpl
)trigonalpyramidal
(short name: tpy
)tshaped
(short name: ts
)tetrahedral
(short name: tet
)squareplanar
(short name: spl
)seesaw
(short name: ss
)trigonalbipyramidal
(short name: tb
)squarepyramidal
(short name: spy
)pentagonalplanar
(short name: ppl
)octahedral
(short name: o
)trigonalprismatic
(short name: tpr
)pentagonalpyramidal
(short name: ppy
)pentagonalbipyramidal
(short name: pbp
)cappedoctahedral
(short name: co
)cappedtrigonalprismatic
(short name: ctp
)squareantiprismatic
(short name: sa
)dodecahedral
(short name: d
)bicappedtrigonalprismatic
(short name: btp
)tricappedtrigonalprismatic
(short name: ttp
)cappedsquareantiprismatic
(short name: csa
)undefined
(short name: u
)Examples:
atom.geometry tetrahedral
(short version: a.g tet
): matches atoms with tetrahedral geometryatom.geometry linear
(short version: a.g l
): matches atoms with linear geometryatom.geometry octahedral or atom.geometry dodecahedral
(short version: a.g o or a.g d
): matches atoms with octahedral or dodecahedral geometryThe atom.hetatm
attribute (short name a.het
) matches heteroatoms in protein structures, i.e. atoms whose record type is HETATM in the Protein Data Bank file format.
Possible values: none.
Examples:
atom.hetatm
(short version: a.het
): matches atoms with HETATM recordnode.type atom and not (atom.symbol H or atom.symbol C)
(short version: n.t a and not (a.s H or a.s C)
): matches heteroatoms, i.e. atoms that are not carbons or hydrogensThe atom.hybridization
attribute (short name a.hy
) matches atoms with specific hybridization. Please note, that hybridization needs to be assigned first. Note that hybridization might not be specified for atoms by default.
Possible hybridization type values:
none
(short name: n
)SP
(alternative name: sp
)SP2
(alternative name: sp2
)SP3
(alternative name: sp3
)SP3D
(alternative name: sp3d
)SP3D2
(alternative name: sp3d2
)unknown
(short name: u
)Examples:
atom.hybridization SP2
(short version: a.hy sp2
): matches atoms with SP2 hybridization.atom.hybridization none
(short version: a.hy n
): matches atoms with no hybridization specified.The atom.metal
attribute (short name a.met
) matches atoms from metal subcategories.
Possible values: none.
Examples:
atom.metal
(short version: a.met
): matches atoms from metal subcategoriesnode.type atom and not atom.metal
(short version: n.t a and not a.met
): matches atoms that are not from metal subcategoriesDeprecated: use fixed instead.
The atom.mobile
attribute (short name a.mo
) matches atoms that are mobile.
Possible values: none.
Examples:
atom.mobile
(short version: a.mo
): matches mobile atomsThe atom.fixed
attribute (short name a.f
) matches atoms that are fixed (non-mobile).
Possible values: none.
Examples:
atom.fixed
(short version: a.f
): matches fixed atomsnode.type atom and not atom.fixed
(short version: n.t a and not a.f
): matches non-fixed atomsThe atom.nucleicAcidBackbone
attribute (short name a.nabb
) matches atoms that belong to a nucleic acid backbone.
Possible values: none.
Examples:
atom.nucleicAcidBackbone
(short version: a.nabb
): matches atoms that belong to a nucleic acid backboneThe atom.numberOfBondedAtoms
attribute (short name a.nba
) matches atoms with a specific number of bonded atoms.
Possible values: integers.
Examples:
atom.numberOfBondedAtoms > 3
(short version: a.nba > 3
): matches atoms that have more than 3 bonded atomsThe atom.numberOfBondedHeavyAtoms
attribute (short name a.nbha
) matches atoms with a specific number of bonded heavy (non-hydrogen) atoms.
Possible values: integers.
Examples:
atom.numberOfBondedHeavyAtoms == 3
(short version: a.nbha == 3
): matches atoms that have exactly 3 bonded heavy atomsThe atom.numberOfBondedCarbons
attribute (short name a.nbc
) matches atoms with a specific number of bonded carbon atoms.
Possible values: integers.
Examples:
atom.numberOfBondedCarbons> 3
(short version: a.nbc > 3
): matches atoms that have more than 3 bonded carbon atomsThe atom.numberOfBondedHydrogens
attribute (short name a.nbh
) matches atoms with a specific number of bonded hydrogen atoms.
Possible values: integers.
Examples:
atom.numberOfBondedHydrogens
(short version: a.nbh == 3
): matches atoms that have exactly 1 bonded hydrogen atomThe atom.numberOfBondedNitrogens
attribute (short name a.nbn
) matches atoms with a specific number of bonded nitrogen atoms.
Possible values: integers.
Examples:
atom.numberOfBondedNitrogens < 2
(short version: a.nbn < 2
): matches atoms that have less than 2 bonded nitrogen atomsThe atom.numberOfBondedOxygens
attribute (short name a.nbo
) matches atoms with a specific number of bonded oxygen atoms.
Possible values: integers.
Examples:
atom.numberOfBondedOxygens == 2
(short version: a.nbo == 2
): matches atoms that have exactly 2 bonded oxygen atomsThe atom.numberOfBondedSulfurs
attribute (short name a.nbs
) matches atoms with a specific number of bonded sulfur atoms.
Possible values: integers.
Examples:
atom.numberOfBondedSulfurs == 0
(short version: a.nbs == 0
): matches atoms that have zero bonded sulfur atomsThe atom.occupancy
attribute (short name a.oc
) matches atoms with a specific occupancy.
Possible values: floating-point values.
Examples:
atom.occupancy > 0.5
(short version: a.oc > 0.5
): matches atoms with occupancy greater than 0.5atom.occupancy >= 0.6 and atom.occupancy <= 0.7
(short version: a.oc >= 0.6 and a.oc <= 0.7
): matches atoms with occupancy between 0.6 and 0.7The atom.oxidationState
attribute (short name a.os
) matches atoms with a specific oxidation state.
Possible values: integer values.
Examples:
atom.oxidationState >= 2
(short version: a.os >= 2
): matches atoms with oxidation state greater than or equal to 2The atom.partialCharge
attribute (short name a.pc
) matches atoms with specific partial charges.
Possible values: floating-point values.
Examples:
atom.partialCharge >= 1.3
(short version: a.pc >= 1.3
): matches atoms with partial charge greater than or equal to 1.3The atom.planar
attribute (short name a.pl
) matches planar atoms, i.e. atoms that are in a plane with its covalently bonded atoms.
Possible values: none.
Examples:
atom.planar
(short version: a.pl
): matches planar atomsThe atom.residueSequenceNumber
attribute (short name a.resi
) matches atoms in residues with specific indices.
Possible values: integers.
Examples:
atom.residueSequenceNumber == 12
(short version: a.resi == 12
): matches atoms in residue 12atom.residueSequenceNumber >= 12 and atom.residueSequenceNumber <= 97
(short version: a.resi >= 12 and a.resi <= 97
): matches atoms in residue 12 to 97The atom.resonance
attribute (short name a.reso
) matches resonant atoms.
Possible values: none.
Examples:
atom.resonance
(short version: a.reso
): matches resonant atomsnode.type atom and not atom.resonance
(short version: n.t a and not a.reso
): matches non-resonant atomsThe atom.serialNumber
attribute (short name a.sn
) matches atoms with specific serial numbers.
Possible values: integers.
Examples:
atom.serialNumber >= 20
(short version: a.sn >= 20
): matches atoms with serial number larger than 20atom.serialNumber >= 20 and atom.serialNumber <= 897
(short version: a.sn >= 20 and a.sn <= 897
): matches atoms with serial number between 20 and 897The atom.sybyl
attribute (short name a.sy
) matches atoms with the specified SYBYL type. Please note, that atoms need to have SYBYL types assigned.
Possible values: sybyl type names, e.g. "C.2", "C.3", "N.2", etc.
Examples:
atom.sybyl "C.3"
(short version: a.sy "C.3"
): matches atoms with the specified C.3 SYBYL typeThe atom.symbol
attribute (short name a.s
) matches atoms with specific symbols.
Possible values: element symbols.
Examples:
atom.symbol C
(short version: a.s C
): matches carbon atomsatom.symbol N
(short version: a.s N
): matches nitrogen atomsatom.symbol C or atom.symbol H
(short version: a.s C or a.s H
): matches atoms that are carbons or hydrogensThe atom.temperatureFactor
attribute (short name a.tf
) matches atoms with specific temperature factors.
Possible values: floating-point values.
Examples:
atom.temperatureFactor > 2
(short version: a.tf > 2
): matches atoms with a temperature factor strictly greater than 2atom.temperatureFactor >= 10 and atom.temperatureFactor <= 50
(short version: a.tf >= 10 and a.tf <= 50
): matches atoms with a temperature factor between 10 and 50The atom.water
attribute (short name a.w
) matches atoms with the water flag.
Possible values: none.
Examples:
atom.water
(short version: a.w
): matches water atomsatom.symbol O and atom.water
(short version: a.s O and a.w
): matches oxygen atoms that have the water flagatom.symbol O in water
(short version: a.s O in wat
): matches oxygen atoms in waterThe atom.x
, atom.y
, atom.z
(short names: a.x
, a.y
, a.z
) attributes match atoms with specific x, y, z coordinates.
Possible values: floating-point values with length units.
Possible units for lengths are:
micrometer
(short name um
)nanometer
(short name nm
)angstrom
(short name A
)picometer
(short name pm
)femtometer
(short name fm
)Examples:
atom.x >= 1.0 A
(short version: a.x >= 1.0 A
): matches atoms whose x coordinate is greater than or equal to 1.0 angstromatom.y < 2.0 nm
(short version: a.y < 2.0 nm
): matches atoms whose y coordinate is less than 2 nmatom.z > 100 pm
(short version: a.z > 100 pm
): matches atoms whose z coordinate is greater than 100 pmatom.x > 10 A and atom.y > 10 A
(short version: a.x > 10 A and a.y > 10 A
): matches atoms whose x and y coordinates are greater than 10 angstroms