From ffba4900a18b15495f2c416d5342bba6c14ddabb Mon Sep 17 00:00:00 2001 From: Dominik Demuth Date: Tue, 13 Feb 2024 16:17:08 +0000 Subject: [PATCH] remove complex kwarg when necessary (#246) closes #245 Co-authored-by: Dominik Demuth Reviewed-on: https://gitea.pkm.physik.tu-darmstadt.de/IPKM/nmreval/pulls/246 --- src/nmreval/fit/result.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/nmreval/fit/result.py b/src/nmreval/fit/result.py index d77fd88..bd954b4 100644 --- a/src/nmreval/fit/result.py +++ b/src/nmreval/fit/result.py @@ -401,7 +401,10 @@ class FitResult(Points): raise ValueError('no fit function available to calculate new y values') new_fit = self.copy() - y_values = self.func.func(self.p_final, x_values, **self.fun_kwargs) + fun_kwargs = {k: v for k, v in self.fun_kwargs.items()} + if self.fun_kwargs.get('complex_mode', -1) == -1: + fun_kwargs.pop('complex_mode', None) + y_values = self.func.func(self.p_final, x_values, **fun_kwargs) y_values = check_complex(y_values, self.fun_kwargs.get('complex_mode', -1), self._data_complex) new_fit.set_data(x_values, y_values, y_err=0.0) @@ -414,6 +417,9 @@ class FitResult(Points): part_functions = [] actual_mode = self.fun_kwargs.get('complex_mode', -1) + fun_kwargs = {k: v for k, v in self.fun_kwargs.items()} + if self.fun_kwargs.get('complex_mode', -1) == -1: + fun_kwargs.pop('complex_mode', None) for sub_name, sub_y in zip(self.func.sub_name(), self.func.sub(self.p_final, x_values, **self.fun_kwargs)): sub_y = check_complex(sub_y, actual_mode, self._data_complex)