Isotope¶
- class mrsimulator.spin_system.isotope.Isotope(*, symbol: str)¶
Bases:
BaseModel
The Isotope class.
- symbol¶
The isotope symbol is given as the atomic number followed by the atomic symbol.
- Type:
str (required)
Example
>>> # 13C isotope information >>> carbon = Isotope(symbol='13C') >>> carbon.spin 0.5 >>> carbon.natural_abundance # in % 1.11 >>> carbon.gyromagnetic_ratio # in MHz/T 10.708398861439887 >>> carbon.atomic_number 6 >>> carbon.quadrupole_moment # in b 0.0
- B0_to_ref_freq(B0=9.4)¶
Return the primary reference frequency given the magnetic field strength B0.
- Parameters:
B0 (float) – magnetic flux density in T
- Returns:
primary reference frequency in MHz
- Return type:
float
Example
>>> H1 = Isotope(symbol="1H") >>> B0 = H1.B0_to_ref_freq(B0 = 9.4)
- property atomic_number¶
Atomic number of the isotope.
- property efg_to_Cq¶
Factor for converting EFG to quadrupolar coupling constant, Cq, in Hz.
- property gyromagnetic_ratio¶
Reduced gyromagnetic ratio of the nucleus given in units of MHz/T.
- json(**kwargs) dict ¶
Generate a JSON representation of the model, include and exclude arguments as per dict().
encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().
- larmor_freq(B0=9.4)¶
Return the Larmor frequency of the isotope at a magnetic field strength B0.
- Parameters:
B0 (float) – magnetic field strength in T
- Returns:
Larmor frequency in MHz
- Return type:
float
Example
>>> silicon = Isotope(symbol="29Si") >>> freq = silicon.larmor_freq(B0 = 9.4)
- property natural_abundance¶
Natural abundance of the isotope in units of %.
- classmethod parse(item)¶
Attempt to parse the provided item into an Isotope instance
- property quadrupole_moment¶
Quadrupole moment of the nucleus given in units of b (barn).
- ref_freq_to_B0(ref_freq=400)¶
Return the magnetic field strength B0 given the primary reference frequency.
- Parameters:
ref_freq (float) – primary reference frequency in MHz
- Returns:
magnetic flux density in T
- Return type:
float
Example
>>> H1 = Isotope(symbol="1H") >>> B0 = H1.ref_freq_to_B0(ref_freq = 400)
- property ref_larmor_ratio¶
Ratio of primary reference frequency (w_ref) to larmor frequency (w_0) of the isotope.
\((1 - \sigma_{iso}^{ref}) = |-w_{ref} / w_0|\) where \(\sigma_{iso}^{ref}\) is the reference isotropic shielding in ppm.
- property reference¶
Reference compound database
- classmethod register(symbol: str, copy_from: Optional[str] = None, **kwargs)¶
Register a new isotope symbol with intrinsic attributes given by kwargs. If copy_from is not None and matches a known isotope symbol, then the attributes are copied from that symbol.
- Parameters:
symbol ((str)) – The isotope symbol to register. Must be unique.
copy_from ((str)) – An optional isotope symbol to copy attributes from. If None, then no attributes are copied.
- property spin¶
Spin quantum number, I, of the isotope.
- property spin_multiplicity¶
Spin multiplicity, (2I+1), of the isotope.