相关疑难解决方法(0)

Scipy的优化曲线拟合限制

有什么方法可以为Scipy的优化曲线拟合提供限制吗?

我的例子:

    def optimized_formula(x, m_1, m_2, y_1, y_2, ratio_2):
        return (log(x[0]) * m_1 + m_2)*((1 - x[1]/max_age)*(1-ratio_2)) + ((log(x[1]) * y_1 + y_2)*(x[1]/max_age)*ratio_2)

    popt, pcov = optimize.curve_fit(optimized_formula, usage_and_age, prices)
Run Code Online (Sandbox Code Playgroud)

x [0]是年龄,max_age是常数.考虑到这一点,当x [0]接近最大值时,x [1]/max_age接近1.

是否有可能提供约束/限制,其中x [1]/max_age> 0.3和x [1]/max_age <0.7以及其他约束,例如m_1 <0,m_2> 0,等等.

python curve-fitting scipy

4
推荐指数
2
解决办法
8352
查看次数

Scipy Curve_fit。多个参数的单独界限

我正在使用 Scipy 将我的数据拟合到一个函数中。该函数为我提供了 2 个参数的值,在本例中为ab。我想使用绑定参数来限制这些参数可以采用的值,每个参数都有自己的可接受值范围。

可接受的值:15< a <50 和 0.05< b <0.2

我想知道如何实现它们。官方文档只展示了如何对 1 个参数进行操作。这个问题类似于:Python curve fit library that allowed me to assignment bounds to parameters。这也只处理 1 个参数的边界。

这是我尝试过的:

def Ebfit(x,a,b):
    Eb_mean = a*(0.0256/kt)                         # Eb at bake temperature
    Eb_sigma = b*Eb_mean
    Foursigma =  4*Eb_sigma
    Eb_a = np.linspace(Eb_mean-Foursigma,Eb_mean+Foursigma,N_Device)
    dEb = Eb_a[1] - Eb_a[0]
    pdfEb_a = spys.norm.pdf(Eb_a,Eb_mean,Eb_sigma)

    ## Retention Time

    DMom = np.zeros(len(x),float)
    tau = (1/f0)*np.exp(Eb_a)
    for bb in range(len(x)):
        DMom[bb]= (1 - 2*(sum(pdfEb_a*(1 - …
Run Code Online (Sandbox Code Playgroud)

python boundary curve-fitting scipy python-3.x

3
推荐指数
1
解决办法
4236
查看次数

标签 统计

curve-fitting ×2

python ×2

scipy ×2

boundary ×1

python-3.x ×1