Web Analytics Made Easy - Statcounter
Skip to content

Atom attributes#

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:

Attribute name Short name Possible values Examples
altLocation alt characters (A, B, ...) a.alt A
a.alt B, C
aminoAcidBackbone aabb true, false a.aabb
aromatic ar true, false a.ar
chain c characters (A, B, ...) a.c A
a.c B,C
chainID ci integers a.ci 1
coarseGrainedMass cgm mass a.cgm > 50Da
a.cgm 50Da:75Da
coarseGrainedRadius cgr length a.cgr > 0.5A
a.cgr 0.5A:1A
coarseGrainedType cgt names a.cgt P4
a.cgt C3, C5
customType ct integers a.ct 1
element e element names a.e Carbon
a.e Nitrogen, Oxygen
formalCharge fc integers a.fc > 1
a.fc -1, 1
geometry g See atom geometry a.g tetrahedral
hetatm het true, false a.het
hybridization hy See atom hybridization a.hy sp2
fixed f true, false a.f
nonPolarHydrogen hnp true, false a.hnp
nucleicAcidBackbone nabb true, false a.nabb
numberOfBondedAtoms nba integers a.nba > 2
numberOfBondedCarbons nbha integers a.nbha > 2
numberOfBondedHeavyAtoms nbc integers a.nbc 2
numberOfBondedHydrogens nbh integers a.nbh 3
numberOfBondedNitrogens nbn integers a.nbn 1
numberOfBondedOxygens nbo integers a.nbo 2
numberOfBondedSulfurs nbs integers a.nbs 1
occupancy oc floats a.oc < 0.3
oxidationState os integers a.os > 2
partialCharge pc floats a.pc > 2
planar pl true, false a.pl
polarHydrogen hp true, false a.hp
residueSequenceNumber resi integers a.resi 42
a.resi 40:50,100
resonance reso true, false a.reso
serialNumber sn integers a.sn > 1000
substructureSequenceNumber sgi integers a.sgi 42
a.sgi 40:50,100
sybyl sy SYBYL types a.sy C.2
a.sy C.2, C.3
symbol s element symbols a.s Ca
a.s H, O, N, C
temperatureFactor tf floats a.tf > 75
water w true, false a.w
x length a.x 0A:100A
y length a.y -1nm:0nm
z length a.z -1nm:1nm

The following atom attributes depend only on the atom's element type (i.e. they are equal for atoms with the same element type):

Attribute name Short name Possible values Examples
atomicNumber at integers a.at 6
a.at 6,8
covalentRadius cr length a.cr > 0.6A
a.cr 0.6A:1A
vanDerWaalsRadius vdwr length a.vdwr > 2A
a.vdwr 1.5A:2A
electronegativity en floats a.en > 2
a.en 1.57:3
mass m mass a.m < 16Da
a.m 14Da:19Da
actinide true, false a.actinide
alkaliMetal alkali true, false a.alkaliMetal
alkalineEarthMetal alkaline true, false a.alkalineEarthMetal
diatomicNonmetal true, false a.diatomicNonmetal
halogen hal true, false a.hal
lanthanide true, false a.lanthanide
metal met true, false a.met
metalloid true, false a.metalloid
nobleGas true, false a.nobleGas
reactiveNonmetal true, false a.reactiveNonmetal
polyatomicNonmetal true, false a.polyatomicNonmetal
postTransitionMetal true, false a.postTransitionMetal
transitionMetal true, false a.transitionMetal

actinide#

The atom.actinide attribute matches atoms from the actinide subcategory.

Possible values: true, false.

alkaliMetal#

The atom.alkaliMetal attribute (short name: a.alkali) matches atoms from the alkali metal subcategory.

Possible values: true, false.

alkalineEarthMetal#

The atom.alkalineEarthMetal attribute (short name: a.alkaline) matches atoms from the alkaline earth metal subcategory.

Possible values: true, false.

altLocation#

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 atoms with alternate location B
  • atom.altLocation B, C (short version: a.alt B, C): matches atoms with alternate location B or C

aminoAcidBackbone#

The atom.aminoAcidBackbone attribute (short name: a.aabb) matches atoms that belong to an amino-acid backbone.

Possible values: true, false.

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 backbone

atomicNumber#

The atom.atomicNumber attribute (short name: a.at) matches atoms with specific atomic number.

Possible values: integer.

Examples:

  • atom.atomicNumber 1 (short version: a.at 1): matches atoms with atomic number 1
  • atom.atomicNumber 6, 8 (short version: a.at 6,8): matches atoms with atomic number 6 or 8

aromatic#

The atom.aromatic attribute (short name: a.ar) matches atoms that are aromatic.

Possible values: true, false.

Examples:

  • atom.aromatic (short version: a.ar): matches aromatic atoms
  • atom.symbol C and atom.aromatic (short version: a.s C and a.ar): matches aromatic carbon atoms

chain#

The 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 A
  • atom.chain B, C (short version: a.c B, C): matches atoms from chain B or C

chainID#

The 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 0
  • atom.chainID >= 0 (short version: a.ci >= 0): matches atoms from chain ID greater than 0
  • atom.chainID 0:2 (short version: a.ci 0:2): matches atoms from chain ID between 0 and 2

coarseGrainedMass#

The 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: mass.

Examples:

  • atom.coarseGrainedMass >= 50Da (short version: a.cgm >= 50Da): matches coarse-grained atoms with their mass greater than or equal to 50 dalton
  • atom.coarseGrainedMass 60Da:100Da (short version: a.cgm 60Da:100Da): matches coarse-grained atoms that have mass between 60 and 100 daltons

coarseGrainedRadius#

The 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: length.

Examples:

  • atom.coarseGrainedRadius == 0.3A (short version: a.cgr == 0.3A): matches coarse-grained atoms with their radius equal to 0.3A
  • atom.coarseGrainedRadius 0.2A:1A (short version: a.cgr 0.2A:1A): matches coarse-grained atoms that have radius between 0.2A and 1A

coarseGrainedType#

The 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 P4
  • atom.coarseGrainedType C3, C5 (short version: a.cgt C3, C5): matches coarse-grained atoms with type C3 or C5

covalentRadius#

The atom.covalentRadius attribute (short name: a.cr) matches atoms with specific covalent radius.

Possible values: length.

Examples:

  • atom.covalentRadius > 0.6A (short version: a.cr > 0.6A): matches atoms with their covalent radius greater than 0.6A
  • atom.covalentRadius 0.6A:1A (short version: a.cr 0.6A:1A): matches atoms that have covalent radius between 0.6A and 1A

customType#

The 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 0
  • atom.customType >= 0 (short version: a.ct >= 0): matches atoms with custom type greater than 0
  • atom.customType 0:2 (short version: a.ct 0:2): matches atoms with custom type between 0 and 2

diatomicNonmetal#

The atom.diatomicNonmetal attribute matches atoms from the diatomic nonmetal subcategory (H, N, O, F, Cl, Br, I).

Possible values: true, false.

electronegativity#

The atom.electronegativity attribute (short name: a.en) matches atoms with specific electronegativity.

Possible values: float values.

Examples:

  • atom.electronegativity > 2 (short version: a.en > 2): matches atoms with their electronegativity greater than 2
  • atom.electronegativity 1.57:3 (short version: a.en 1.57:3): matches atoms that have electronegativity between 1.57 and 3

element#

The 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 atoms
  • atom.element Oxygen, Nitrogen (short version: a.e Oxygen, Nitrogen): matches oxygen and nitrogen atoms
  • atom.symbol O (short version: a.s O): matches oxygen atoms

formalCharge#

The 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 1
  • atom.formalCharge 2:3 (short version: a.fc 2:3): matches atoms with formal charge between 2 and 3

geometry#

The 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 geometry
  • atom.geometry linear (short version: a.g l): matches atoms with linear geometry
  • atom.geometry octahedral, dodecahedral (short version: a.g o, d): matches atoms with octahedral or dodecahedral geometry

halogen#

The atom.halogen attribute (short name: a.hal) matches halogen (F, Cl, Br, I, At).

Possible values: true, false.

hetatm#

The 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: true, false.

Examples:

  • atom.hetatm (short version: a.het): matches atoms with HETATM record
  • node.type atom and not (atom.symbol H, C) (short version: n.t a and not (a.s H, C)): matches heteroatoms, i.e. atoms that are not carbons or hydrogens

hybridization#

The 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.
  • atom.hybridization SP2, SP3 (short version: a.hy sp2, sp3): matches atoms with SP2 or SP3 hybridization.

lanthanide#

The atom.lanthanide attribute matches atoms from the lanthanide subcategory.

Possible values: true, false.

mass#

The atom.mass attribute (short name: a.cgm) matches atoms with specific mass.

Possible values: mass.

Examples:

  • atom.mass > 16Da (short version: a.cgm > 16Da): matches coarse-grained atoms with their mass greater than 16 dalton
  • atom.mass 14Da:19Da (short version: a.cgm 14Da:19Da): matches coarse-grained atoms that have mass between 14 and 19 daltons

metal#

The atom.metal attribute (short name: a.met) matches atoms from metal subcategories.

Possible values: true, false.

Examples:

  • atom.metal (short version: a.met): matches atoms from metal subcategories
  • node.type atom and not atom.metal (short version: n.t a and not a.met): matches atoms that are not from metal subcategories

metalloid#

The atom.metalloid attribute matches atoms from the metalloid subcategory.

Possible values: true, false.

mobile#

Deprecated: use fixed instead.

The atom.mobile attribute (short name: a.mo) matches atoms that are mobile.

Possible values: true, false.

Examples:

  • atom.mobile (short version: a.mo): matches mobile atoms

fixed#

The atom.fixed attribute (short name: a.f) matches atoms that are fixed (non-mobile).

Possible values: true, false.

Examples:

  • atom.fixed (short version: a.f): matches fixed atoms
  • node.type atom and not atom.fixed (short version: n.t a and not a.f): matches non-fixed atoms

nobleGas#

The atom.nobleGas attribute matches atoms from the noble gas subcategory.

Possible values: true, false.

nonPolarHydrogen#

The atom.nonPolarHydrogen attribute (short name: a.hnp) matches non-polar hydrogens. See also: polarHydrogen.

Possible values: true, false.

nucleicAcidBackbone#

The atom.nucleicAcidBackbone attribute (short name: a.nabb) matches atoms that belong to a nucleic acid backbone.

Possible values: true, false.

Examples:

  • atom.nucleicAcidBackbone (short version: a.nabb): matches atoms that belong to a nucleic acid backbone

numberOfBondedAtoms#

The 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 atoms

numberOfBondedHeavyAtoms#

The 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 atoms

numberOfBondedCarbons#

The 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 atoms

numberOfBondedHydrogens#

The atom.numberOfBondedHydrogens attribute (short name: a.nbh) matches atoms with a specific number of bonded hydrogen atoms.

Possible values: integers.

Examples:

  • atom.numberOfBondedHydrogens 3 (short version: a.nbh 3): matches atoms that have exactly 1 bonded hydrogen atom

numberOfBondedNitrogens#

The 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 atoms

numberOfBondedOxygens#

The 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 atoms

numberOfBondedSulfurs#

The 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 atoms

occupancy#

The 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.5
  • atom.occupancy 0.6:0.7 (short version: a.oc 0.6:0.7): matches atoms with occupancy between 0.6 and 0.7

oxidationState#

The 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 2

partialCharge#

The 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.3

planar#

The 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: true, false.

Examples:

  • atom.planar (short version: a.pl): matches planar atoms

polarHydrogen#

The atom.polarHydrogen attribute (short name: a.hp) matches polar hydrogens. Polar hydrogens are hydrogens attached to atoms with significantly larger electronegativity: N, O, S, F, Cl.

Possible values: true, false.

reactiveNonmetal#

The atom.reactiveNonmetal attribute matches atoms from the reactive nonmetal subcategory.

Possible values: true, false.

polyatomicNonmetal#

The atom.polyatomicNonmetal attribute matches atoms from the polyatomic nonmetal subcategory (C, P, S, Se).

Possible values: true, false.

postTransitionMetal#

The atom.postTransitionMetal attribute matches atoms from the post-transition metal subcategory.

Possible values: true, false.

residueSequenceNumber#

The atom.residueSequenceNumber attribute (short name: a.resi) matches atoms in residues with specific IDs.

Possible values: integers.

Examples:

  • atom.residueSequenceNumber 12 (short version: a.resi 12): matches atoms in residues with ID 12
  • atom.residueSequenceNumber 12:97 (short version: a.resi 12:97): matches atoms in residues with IDs between 12 to 97

resonance#

The atom.resonance attribute (short name: a.reso) matches resonant atoms.

Possible values: true, false.

Examples:

  • atom.resonance (short version: a.reso): matches resonant atoms
  • node.type atom and not atom.resonance (short version: n.t a and not a.reso): matches non-resonant atoms

serialNumber#

The 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 greater than 20
  • atom.serialNumber 20:897 (short version: a.sn 20:897): matches atoms with serial number between 20 and 897

substructureSequenceNumber#

The atom.substructureSequenceNumber attribute (short name: a.sgi) matches atoms in structural groups with specific IDs.

Possible values: integers.

Examples:

  • atom.substructureSequenceNumber 1000 (short version: a.sgi 1000): matches atoms in structural groups with ID 1000
  • atom.substructureSequenceNumber 10:40 (short version: a.sgi 10:40): matches atoms in structural groups with IDs between 12 to 97

sybyl#

The 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 type

symbol#

The 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 atoms
  • atom.symbol O, N (short version: a.s O, N): matches atoms that are oxygens and nitrogens

temperatureFactor#

The 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 2
  • atom.temperatureFactor 10:50 (short version: a.tf 10:50): matches atoms with a temperature factor between 10 and 50

transitionMetal#

The atom.transitionMetal attribute matches atoms from the transition metal subcategory.

Possible values: true, false.

vanDerWaalsRadius#

The atom.vanDerWaalsRadius attribute (short name: a.vdwr) matches atoms with specific van der Waals radius.

Possible values: length.

Examples:

  • atom.vanDerWaalsRadius > 2A (short version: a.vdwr > 2A): matches atoms with their van der Waals radius greater than 2A
  • atom.vanDerWaalsRadius 1.5A:2A (short version: a.vdwr 1.5A:2A): matches atoms that have van der Waals radius between 1.5A and 2A

water#

The atom.water attribute (short name: a.w) matches atoms with the water flag.

Possible values: true, false.

Examples:

  • atom.water (short version: a.w): matches water atoms
  • atom.symbol O and atom.water (short version: a.s O and a.w): matches oxygen atoms that have the water flag
  • atom.symbol O in water (short version: a.s O in wat): matches oxygen atoms in water

x, y, z#

The 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 angstrom
  • atom.y < 2.0 nm (short version: a.y < 2.0 nm): matches atoms whose y coordinate is less than 2 nm
  • atom.z > 100 pm (short version: a.z > 100 pm): matches atoms whose z coordinate is greater than 100 pm
  • atom.x 1nm:10nm (short version: a.x 1nm:10nm): matches atoms whose x coordinate is between 1 nm and 10 nm
  • atom.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