soprano.data.nmr#

NMR Data

Data on NMR relevant properties of elements and isotopes - spin, gyromagnetic ratio and quadrupole moment.

Functions

get_isotope_list_from_species(elements, species)

Convert a list of species to a list of isotopes.

nmr_gamma(el[, iso])

Gyromagnetic ratio for an element

nmr_quadrupole(el[, iso])

Quadrupole moment for an element

nmr_spin(el[, iso])

Nuclear spin for an element

soprano.data.nmr._el_iso(sym)[source]#

Utility function: split isotope and element in conventional representation.

soprano.data.nmr._get_isotope_list(elems, isotopes=None, isotope_list=None, use_q_isotopes=False)[source]#

elems can be a single element string or a list of elements returns the isotope number for each element elems

soprano.data.nmr._species_list_to_isotope_dict(species_list)[source]#

Convert a list of species to a dictionary of isotopes.

Parameters:#

species_list: list

A list of species strings (e.g. [‘1H’, ‘13C’, ‘18O’])

Returns:#

isotope_dict: dict

A dictionary of isotopes (e.g. {‘H’: 1, ‘C’: 13, ‘O’: 18})

Parameters:

species_list (list[str])

Return type:

dict[str, int]

soprano.data.nmr._species_list_to_isotope_list(species_list)[source]#

Convert a list of species to a list of isotopes.

Parameters:#

species_list: list

A list of species strings (e.g. [‘1H’, ‘13C’, ‘18O’])

Returns:#

isotope_list: list

A list of isotopes (e.g. [1, 13, 18])

Parameters:

species_list (list[str])

Return type:

list[int]

soprano.data.nmr.get_isotope_list_from_species(elements, species, use_q_isotopes=False)[source]#

Convert a list of species to a list of isotopes. If the elements list and the species list are of different lengths, the elements list is assumed to be a list of element symbols and the species list is assumed to be a list of unique species strings. i.e. you can either give one species per element (=site) or a list of unique species. The output is always a numpy array with isotope numbers, one per element (=site).

Parameters:#

elements: list

A list of element strings (e.g. [‘H’, ‘C’, ‘O’])

species: list

A list of species strings (e.g. [‘1H’, ‘13C’, ‘18O’])

use_q_isotopes: bool

If True, use the quadrupolar isotopes for the elements

Returns:#

isotope_list: list

A list of isotopes (e.g. [1, 13, 18])

Parameters:
  • elements (list[str])

  • species (list[str])

Return type:

ndarray

soprano.data.nmr.nmr_gamma(el, iso=None)[source]#

Gyromagnetic ratio for an element

Return the gyromagnetic ratio for the given element and isotope, in rad/(s*T)

Args:
el (str): element symbol
iso (int): isotope. Default is the most abundant one.
Returns:
gamma (float): gyromagnetic ratio in rad/(s*T)
soprano.data.nmr.nmr_quadrupole(el, iso=None)[source]#

Quadrupole moment for an element

Return the quadrupole moment for the given element and isotope, in millibarn

Args:
el (str): element symbol
iso (int): isotope. Default is the most abundant one.
Returns:
Q (float): quadrupole moment in millibarn
soprano.data.nmr.nmr_spin(el, iso=None)[source]#

Nuclear spin for an element

Return the nuclear spin for the given element and isotope, in Bohr magnetons

Args:
el (str): element symbol
iso (int): isotope. Default is the most abundant one.
Returns:
I (float): nuclear spin in Bohr magnetons