【发布时间】:2023-02-01 19:36:03
【问题描述】:
我有一个数据集X我可以获得在 Python 中定义的指数函数 f(x) = a*np.exp(-b*(x-c)) ,如下所示:
def func(x, a, b, c):
return a*np.exp(-b*(x-c))
f = func(x, a, b, c)
一种,b,C在这种情况下都是已知的。
然而,在代数解之后,我需要将这个函数划分为三个不同的成员,我需要获得这个函数的解:
g(x) = f1*a1*np.exp(-b1*(x-c)) + f2*a2*np.exp(-b2*(x-c)) + f3*a3*np.exp(-b3*(x-c))。
a1,a2,a3,f1,f2,f3和C都知道,我需要做的是适应g(x)到f(x)以这样的方式获得b1,b2和b3,使用 curve_fit 或任何一种适合此类问题的方法。
f1,f2,f3代表分数,它们的总和等于 1。
我的问题是:我如何定义g(x)函数以获得解决方案b1,b2和b3?
为了清晰和测试目的,我还附加了可能的值来解决这个问题:
x = np.arange(300., 701., 5.)
f1=0.3
f2=0.5
f3=0.2
c = 350.
a1=1.82
a2=7.32
a3=1.52
【问题讨论】:
标签: python scipy curve-fitting