Nuclei and coherences
NMRTools.NMRBase.CoherenceNMRTools.NMRBase.MQNMRTools.NMRBase.NMRToolsErrorNMRTools.NMRBase.NucleusNMRTools.NMRBase.SQNMRTools.NMRBase.coherenceorderNMRTools.NMRBase.gyromagneticratioNMRTools.NMRBase.nucleusNMRTools.NMRBase.spinNMRTools.NMRBase.xi_ratio
NMRTools.NMRBase.Nucleus — Type
NucleusEnumeration of common nuclei associated with biomolecular NMR. Nuclei are named e.g. H1, C13.
Defined nuclei: H1, H2, C12, C13, N14, N15, F19, P31.
See also spin, gyromagneticratio, Coherence.
NMRTools.NMRBase.nucleus — Function
nucleus(label::AbstractString) -> NucleusParse a nucleus from a string label, returning the corresponding Nucleus enum value.
The function accepts common NMR nucleus notation formats:
- Mass number followed by element symbol: "1H", "13C", "15N", "19F", "31P"
- Element symbol followed by mass number: "H1", "C13", "N15", "F19", "P31"
Examples
julia> nucleus("19F")
F19::Nucleus = 6
julia> nucleus("H1")
H1::Nucleus = 0
julia> nucleus("7Li")
ERROR: ArgumentError: Unknown nucleus: 7Li
[...]Throws ArgumentError if the nucleus is not recognised or not defined in the Nucleus enum.
NMRTools.NMRBase.spin — Function
spin(n::Nucleus)Return the spin quantum number of nucleus n, or nothing if not defined.
Examples
julia> spin(H1)
1//2See also Coherence.
NMRTools.NMRBase.gyromagneticratio — Function
gyromagneticratio(n::Nucleus)
gyromagneticratio(c::Coherence)Return the gyromagnetic ratio in Hz/T of a nucleus, or calculate the effective gyromagnetic ratio of a coherence. This is equal to the product of the individual gyromagnetic ratios with their coherence orders.
Returns nothing if not defined.
Examples
julia> gyromagneticratio(H1)
2.6752218744e8
julia> gyromagneticratio(SQ(H1))
2.6752218744e8
julia> gyromagneticratio(MQ(((H1,1),(C13,1))))
3.3480498744e8
julia> gyromagneticratio(MQ(((H1,0),)))
0.0NMRTools.NMRBase.xi_ratio — Function
xi_ratio(n::Nucleus; aqueous=true)Return the Xi ratio for nucleus n, used for indirect chemical shift referencing.
The Xi ratio is defined as the ratio of the reference frequency of nucleus X to the 1H reference frequency (TMS or DSS). This enables indirect referencing of heteronuclear dimensions from a single 1H reference.
Arguments
n::Nucleus: The nucleus for which to retrieve the Xi ratioaqueous=true: Iftrue, use DSS-based ratios (aqueous solutions). Iffalse, use TMS-based ratios (organic solvents).
Returns
- The Xi ratio as a Float64, or
nothingif not defined for this nucleus.
Examples
julia> xi_ratio(C13)
0.25144953
julia> xi_ratio(C13; aqueous=true)
0.25144953
julia> xi_ratio(C13; aqueous=false)
0.2514502
julia> xi_ratio(N15)
0.101329118References
- Markley et al., 1998, Pure Appl. Chem. 70, 117-142
- Wishart et al., 1995, J. Biomol. NMR 6, 135-140
- Maurer and Kalbitzer, 1996, J. Magn. Reson. B113, 177-178
- IUPAC recommendations 2001/2008
NMRTools.NMRBase.SQ — Type
SQ(nucleus::Nucleus, label=="")Representation of a single quantum coherence on a given nucleus.
NMRTools.NMRBase.MQ — Type
MQ(coherences, label=="")Representation of a multiple-quantum coherence. Coherences are specified as a tuple of tuples, of the form (nucleus, coherenceorder)
Examples
julia> MQ(((H1,1), (C13,-1)), "ZQ")
MQ(((H1, 1), (C13, -1)), "ZQ")
julia> MQ(((H1,3), (C13,1)), "QQ")
MQ(((H1, 3), (C13, 1)), "QQ")NMRTools.NMRBase.coherenceorder — Function
coherenceorder(coherence)Calculate the total coherence order.
Examples
julia> coherenceorder(SQ(H1))
1
julia> coherenceorder(MQ(((H1,1),(C13,1))))
2
julia> coherenceorder(MQ(((H1,1),(C13,-1))))
0
julia> coherenceorder(MQ(((H1,3),(C13,1))))
4
julia> coherenceorder(MQ(((H1,0),)))
0Errors
NMRTools.NMRBase.NMRToolsError — Type
NMRToolsError(message)An error arising in NMRTools.