2.3.3.1.12. NXatom¶
Status:
base class, extends NXobject
Description:
Base class for documenting a set of atoms. ...
Base class for documenting a set of atoms.
Atoms in the set may be bonded. The set may have a net charge to represent an ion. An ion can be a molecular ion.
Symbols:
The symbols used in the schema to specify e.g. dimensions of arrays.
n_pos: Number of atom positions.
d: Dimensionality
n_ivec_max: Maximum number of atoms/isotopes allowed per ion.
n_ranges: Number of mass-to-charge-state-ratio range intervals for ion type.
- Groups cited:
none
Structure:
name: (optional) NX_CHAR
Given name for the set. ...
Given name for the set.
This field could for example be used in the research field of atom probe tomography to store a standardized human-readable name of the element or ion like such as Al +++ or 12C +.
id: (optional) NX_UINT {units=NX_UNITLESS}
Given numerical identifier for the set. ...
Given numerical identifier for the set.
The identifier zero is reserved for the special unknown ion type.
identifier_chemical: (optional) NX_CHAR ⤆
Identifier used to refer to if the set of atoms represents a substance. ...
Identifier used to refer to if the set of atoms represents a substance.
Obligatory value:
inchi
charge: (optional) NX_NUMBER {units=NX_CHARGE}
Signed net (partial) charge of the (molecular) ion. ...
Signed net (partial) charge of the (molecular) ion.
Different methods for computing charge are in use. Care needs to be exercised with respect to the integration. T. A. Manz and N. G. Limas discuss computational details.
charge_state: (optional) NX_NUMBER {units=NX_UNITLESS}
Charge reported in multiples of the charge of an electron. ...
Charge reported in multiples of the charge of an electron.
For research using atom probe tomography the value should be set to zero if the charge_state is unknown and irrecoverable. This can happen when classical ranging definition files in formats like RNG, RRNG are used. These file formats do not document the charge state explicitly but only the number of atoms of each element per molecular ion surplus the respective mass-to-charge-state-ratio interval.
Details on ranging definition files in the literature are M. K. Miller.
volume: (optional) NX_NUMBER {units=NX_VOLUME}
Assumed volume affected by the set of atoms. ...
Assumed volume affected by the set of atoms.
Neither individual atoms nor a set of cluster of these have a volume that is unique as a some cut-off criterion is required.
indices: (optional) NX_CHAR (Rank: 1, Dimensions: [n_pos])
Index for each atom at locations as detailed by position. ...
Index for each atom at locations as detailed by position. Indices can be used as identifier and thus names for individual atoms.
type: (optional) NX_UINT (Rank: 1, Dimensions: [n_pos]) {units=NX_UNITLESS}
Nuclide information for each atom at locations as detailed by position. ...
Nuclide information for each atom at locations as detailed by position.
One approach for storing nuclide information efficiently is via individual hash values. Consult the docstring of
nuclide_hash
for further details.position: (optional) NX_NUMBER (Rank: 2, Dimensions: [n_pos, d]) {units=NX_ANY}
Position of each atom.
@depends_on: (optional) NX_CHAR
Path to an instance of :ref:`NXcoordinate_system` to document ...
Path to an instance of NXcoordinate_system to document the reference frame in which the positions are defined.
This resolves ambiguity when the reference frame is different to the NeXus default reference frame (McStas).
occupancy: (optional) NX_NUMBER (Rank: 1, Dimensions: [n_pos]) {units=NX_DIMENSIONLESS}
Relative occupancy of the atom position. ...
Relative occupancy of the atom position.
This field is useful for specifying the atomic motif in instances of NXunit_cell.
nuclide_hash: (optional) NX_UINT (Rank: 1, Dimensions: [n_ivec_max]) {units=NX_UNITLESS}
Vector of nuclide hash values. The vector is sorted in decreasing order. ...
Vector of nuclide hash values. The vector is sorted in decreasing order.
Individual hash values \(H\) encode for each nuclide or element the number of protons \(Z\) and a constant \(c\) via the following hashing rule \(H = Z + c \cdot 256\). \(Z\) and \(c\) must be 8-bit unsigned integers.
The constant \(c\) is either set to number of neutrons \(N\) or to the special value 255. The special value 255 is used to refer to all isotopes of an element from the IUPAC periodic table.
Some examples:
The element hydrogen (meaning irrespective which isotope), its hash value is \(H = 1 + 255 \cdot 256 = 65281\).
The \(^{1}H\) hydrogen isotope (\(Z = 1, N = 0\)), its hash value is \(H = 1 + 0 \cdot 256 = 1\).
The \(^{2}H\) deuterium isotope (\(Z = 1, N = 1\)), its hash value is \(H = 1 + 1 \cdot 256 = 257\).
The \(^{3}H\) tritium isotope (\(Z = 1, N = 2\)), its hash value is \(H = 1 + 2 \cdot 256 = 513\).
The \(^{99}Tc\) technetium isotope (\(Z = 43, N = 56\)), its hash value is \(H = 43 + 56 \cdot 256 = 14379\).
The special hash value \(0\) is a placeholder.
This hashing rule implements a bitshift operation. The benefit is that this enables encoding of all currently known nuclides and elements efficiently into an 16-bit unsigned integer. Sufficient unused indices remain to case situations when new elements will be discovered.
nuclide_list: (optional) NX_UINT (Rank: 2, Dimensions: [n_ivec_max, 2]) {units=NX_UNITLESS}
Table which decodes the entries in nuclide_hash into a human-readable matrix ...
Table which decodes the entries in nuclide_hash into a human-readable matrix instances for either nuclids or elements. Specifically, the first row specifies the nuclide mass number. When the nuclide_hash values are used this means the row should report the sum \(Z + N\) or 0. The value 0 documents that an element from the IUPAC periodic table is meant. The second row specifies the number of protons \(Z\). The value 0 in this case documents a placeholder or that no element-specific information is relevant.
Taking a carbon-14 nuclide as an example the mass number is 14. That is encoded as a column vector (14, 6). The array is stored matching the order of nuclide_hash.
mass_to_charge_range: (optional) NX_NUMBER (Rank: 2, Dimensions: [n_ranges, 2]) {units=NX_ANY}
Associated lower :math:`{\frac{m}{q}}_{min}` and upper :math:`{\frac{m}{q}}_{m ...
Associated lower \({\frac{m}{q}}_{min}\) and upper \({\frac{m}{q}}_{max}\) bounds of the mass-to-charge-state ratio interval(s) \([{\frac{m}{q}}_{min}, {\frac{m}{q}}_{max}]\). (boundaries inclusive). This field is primarily of interest for documenting NXprocess steps of indexing a ToF/mass-to-charge-state ratio histogram.
Hypertext Anchors¶
List of hypertext anchors for all groups, fields, attributes, and links defined in this class.