hyperfine.bnmr.lineshape.QuadrupoleSplitting

class hyperfine.bnmr.lineshape.QuadrupoleSplitting(I: float, gamma: float, Q: float)[source]

Bases: object

Genernal class for calculating (exact) quadrupole splittings of an NMR line.

__init__(I: float, gamma: float, Q: float) None

Methods

V(eta, theta, phi)

Electric field gradient (EFG) tensor.

V_pas(eta, theta, phi)

Electric field gradient (EFG) tensor in its principle axis system (PAS).

V_xx(eta, theta, phi)

V_xy(eta, theta, phi)

V_xz(eta, theta, phi)

V_yx(eta, theta, phi)

V_yy(eta, theta, phi)

V_yz(eta, theta, phi)

V_zx(eta, theta, phi)

V_zy(eta, theta, phi)

V_zz(eta, theta, phi)

__init__(I, gamma, Q)

get_energy_levels(nu_0, efg, eta, theta, phi)

Energy levels of the Zeeman + quadrupole Hamiltonians.

get_n_quantum_transitions(eigenvalues[, n])

Calculate the positions of the n-quantum transitions for a set of eigenvalues.

lorentzian(x, position, fwhm, amplitude)

Lorentzian lineshape.

quadrupole_coupling(efg)

Quadrupole coupling constant (in Hz).

quadrupole_frequency(efg)

Quadrupole frequency (in Hz).

Attributes

I

gamma

Q

N

I_x

I_y

I_z

I_p

I_m

I_2

V(eta: float, theta: float, phi: float) array[source]

Electric field gradient (EFG) tensor.

V_pas(eta: float, theta: float, phi: float) array[source]

Electric field gradient (EFG) tensor in its principle axis system (PAS).

get_energy_levels(nu_0: float, efg: float, eta: float, theta: float, phi: float) array[source]

Energy levels of the Zeeman + quadrupole Hamiltonians.

get_n_quantum_transitions(eigenvalues: array, n: int = 1) array[source]

Calculate the positions of the n-quantum transitions for a set of eigenvalues.

lorentzian(x: float, position: float, fwhm: float, amplitude: float) float[source]

Lorentzian lineshape.

quadrupole_coupling(efg: float) float[source]

Quadrupole coupling constant (in Hz).

quadrupole_frequency(efg: float) float[source]

Quadrupole frequency (in Hz).