【发布时间】:2023-04-28 23:45:01
【问题描述】:
我需要使用约束和权重进行曲线拟合。阅读,主要是在这里,我创建了一个函数
def residuals_ga(self,p,h,n,err,kkind=None):
# checking if to use the minimum or maximum value of kappa
if kkind == "min":
kappa = self.k0[0] - self.k0[1]
elif kkind == "max":
kappa = self.k0[0] + self.k0[1]
# checking if kappa is in bounds
elif p[0] > self.k0[0] + self.k0[1]:
return float("inf")
elif p[0] < self.k0[0] - self.k0[1]:
return float("inf")
else:
kappa = p[0]
ag = float(p[1])
hq = lambda n,kappa,ag: self.hq_func(n,1,kappa,ag)
return (hq(n,kappa,ag) - h)/err**2
据我所知,这应该可行。然而,结果非常糟糕。这个方法对吗?我错过了什么吗?
我应该提到我使用 xmgrace 测试了函数本身,它工作正常。
【问题讨论】:
-
你能告诉我们一些信息告诉我们结果有多糟糕吗?
标签: python scipy curve-fitting least-squares