mirror of
https://github.com/fjosw/pyerrors.git
synced 2025-05-15 20:13:41 +02:00
fix: fits now work with irregular Monte Carlo histories
This commit is contained in:
parent
b2a249302a
commit
443e4eb74e
1 changed files with 6 additions and 3 deletions
|
@ -301,7 +301,8 @@ def total_least_squares(x, y, func, silent=False, **kwargs):
|
||||||
|
|
||||||
result = []
|
result = []
|
||||||
for i in range(n_parms):
|
for i in range(n_parms):
|
||||||
result.append(derived_observable(lambda x, **kwargs: x[0], [pseudo_Obs(out.beta[i], 0.0, y[0].names[0], y[0].shape[y[0].names[0]])] + list(x.ravel()) + list(y), man_grad=[0] + list(deriv_x[i]) + list(deriv_y[i])))
|
result.append(derived_observable(lambda x, **kwargs: x[0], list(x.ravel()) + list(y), man_grad=list(deriv_x[i]) + list(deriv_y[i])))
|
||||||
|
result[-1]._value = out.beta[i]
|
||||||
|
|
||||||
output.fit_parameters = result + const_par
|
output.fit_parameters = result + const_par
|
||||||
|
|
||||||
|
@ -418,7 +419,8 @@ def _prior_fit(x, y, func, priors, silent=False, **kwargs):
|
||||||
|
|
||||||
result = []
|
result = []
|
||||||
for i in range(n_parms):
|
for i in range(n_parms):
|
||||||
result.append(derived_observable(lambda x, **kwargs: x[0], [pseudo_Obs(params[i], 0.0, y[0].names[0], y[0].shape[y[0].names[0]])] + list(y) + list(loc_priors), man_grad=[0] + list(deriv[i])))
|
result.append(derived_observable(lambda x, **kwargs: x[0], list(y) + list(loc_priors), man_grad=list(deriv[i])))
|
||||||
|
result[-1]._value = params[i]
|
||||||
|
|
||||||
output.fit_parameters = result
|
output.fit_parameters = result
|
||||||
output.chisquare = chisqfunc(np.asarray(params))
|
output.chisquare = chisqfunc(np.asarray(params))
|
||||||
|
@ -612,7 +614,8 @@ def _standard_fit(x, y, func, silent=False, **kwargs):
|
||||||
|
|
||||||
result = []
|
result = []
|
||||||
for i in range(n_parms):
|
for i in range(n_parms):
|
||||||
result.append(derived_observable(lambda x, **kwargs: x[0], [pseudo_Obs(fit_result.x[i], 0.0, y[0].names[0], y[0].shape[y[0].names[0]])] + list(y), man_grad=[0] + list(deriv[i])))
|
result.append(derived_observable(lambda x, **kwargs: x[0], list(y), man_grad=list(deriv[i])))
|
||||||
|
result[-1]._value = fit_result.x[i]
|
||||||
|
|
||||||
output.fit_parameters = result + const_par
|
output.fit_parameters = result + const_par
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue