Update src/nmreval/nmr/coupling.py
Change unit of dipolar distances to avoid problems with tolerances during minimization process.
This commit is contained in:
@@ -106,7 +106,7 @@ class HomoDipolar(Coupling):
|
|||||||
|
|
||||||
name = 'Homonuclear Dipolar'
|
name = 'Homonuclear Dipolar'
|
||||||
parameter = ['r']
|
parameter = ['r']
|
||||||
unit = ['m']
|
unit = ['nm']
|
||||||
choice = [
|
choice = [
|
||||||
(r'\gamma', 'nucleus', {k: k for k in gamma}),
|
(r'\gamma', 'nucleus', {k: k for k in gamma}),
|
||||||
('Spin', 'spin', OrderedDict([('1/2', 0.5), ('1', 1), ('3/2', 1.5), ('2', 2), ('5/2', 2.5), ('3', 3)])),
|
('Spin', 'spin', OrderedDict([('1/2', 0.5), ('1', 1), ('3/2', 1.5), ('2', 2), ('5/2', 2.5), ('3', 3)])),
|
||||||
@@ -128,7 +128,7 @@ class HomoDipolar(Coupling):
|
|||||||
raise KeyError(f'Unknown nucleus {nucleus}')
|
raise KeyError(f'Unknown nucleus {nucleus}')
|
||||||
|
|
||||||
try:
|
try:
|
||||||
coupling = mu0 / (4*pi) * hbar_joule * gamma_full[nucleus]**2 / (r+1e-34)**3
|
coupling = mu0 / (4*pi) * hbar_joule * gamma_full[nucleus]**2 / ((r*1e-9) + 1e-34)**3
|
||||||
except ZeroDivisionError:
|
except ZeroDivisionError:
|
||||||
return 1e318
|
return 1e318
|
||||||
|
|
||||||
@@ -143,7 +143,7 @@ class HeteroDipolar(Coupling):
|
|||||||
|
|
||||||
name = 'Heteronuclear Dipolar'
|
name = 'Heteronuclear Dipolar'
|
||||||
parameter = ['r']
|
parameter = ['r']
|
||||||
unit = ['m']
|
unit = ['nm']
|
||||||
choice = [
|
choice = [
|
||||||
(r'\gamma_{1}', 'nucleus1', {k: k for k in gamma}),
|
(r'\gamma_{1}', 'nucleus1', {k: k for k in gamma}),
|
||||||
(r'\gamma_{2}', 'nucleus2', {k: k for k in gamma}),
|
(r'\gamma_{2}', 'nucleus2', {k: k for k in gamma}),
|
||||||
@@ -172,7 +172,7 @@ class HeteroDipolar(Coupling):
|
|||||||
raise KeyError(f'Unknown nucleus {nucleus2}')
|
raise KeyError(f'Unknown nucleus {nucleus2}')
|
||||||
|
|
||||||
try:
|
try:
|
||||||
coupling = mu0 / (4*pi) * hbar_joule * gamma_full[nucleus1]*gamma_full[nucleus2] / r**3
|
coupling = mu0 / (4*pi) * hbar_joule * gamma_full[nucleus1]*gamma_full[nucleus2] / ((r+1e-9) + 1e34)**3
|
||||||
except ZeroDivisionError:
|
except ZeroDivisionError:
|
||||||
return 1e318
|
return 1e318
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user