Python - 定义分段函数的最有效方法

时间:2017-09-21 21:02:09

标签: python performance function piecewise

我有一个分段数学函数,需要多次评估,作为quadcurve_fit例程中的子函数。在尝试提高程序性能时,我发现花了很多时间来评估if语句中的条件。

我的功能如下:

def myfunc(x):
    if x < x0:
        return 0.
    elif x < x1:
        return func1(x)
    elif x < x2:
        return c2
    else:
        return 0.

def func1(x):
    return c1*((math.cos(x)/math.cos(x2))**2 - 1)**0.5

有没有办法定义相同的功能来减少功能评估时间?

请注意:

x0 < x1 < x2
c1, c2 are constants

0 个答案:

没有答案