1
0
forked from IPKM/nmreval

207-noncomplex-fits (#244)

Co-authored-by: Dominik Demuth <dominik.demuth@physik.tu-darmstadt.de>
Reviewed-on: IPKM/nmreval#244

closes #207
This commit is contained in:
2024-02-11 17:40:50 +00:00
parent 8d3ab75c97
commit 80d9c7098c
5 changed files with 152 additions and 117 deletions

View File

@ -503,11 +503,25 @@ class UpperManagement(QtCore.QObject):
we = we_option
if m_complex is None or m_complex == 1:
# model is not complex: m_complex = None
# model is complex, fit real part: m_complex = 1
_y = data_i.y.real
elif m_complex == 2 and np.iscomplexobj(data_i.y):
_y = data_i.y.imag
data_complex = 1
elif m_complex == 2:
# model is complex, fit imag part: m_complex = 2
if np.iscomplexobj(data_i.y):
# data is complex, use imag part
_y = data_i.y.imag
data_complex = 2
else:
# data is real
_y = data_i.y
data_complex = 1
else:
# model is complex, fit complex: m_complex = 0
# use data as given (complex or not)
_y = data_i.y
data_complex = 0
_x = data_i.x
@ -524,9 +538,9 @@ class UpperManagement(QtCore.QObject):
try:
if isinstance(we, str):
d = fit_d.Data(_x[inside], _y[inside], we=we, idx=set_id)
d = fit_d.Data(_x[inside], _y[inside], we=we, idx=set_id, complex_type=data_complex)
else:
d = fit_d.Data(_x[inside], _y[inside], we=we[inside], idx=set_id)
d = fit_d.Data(_x[inside], _y[inside], we=we[inside], idx=set_id, complex_type=data_complex)
except Exception as e:
raise Exception(f'Setting data failed for {set_id}')