1

您好 StackExchange 的人们,

我正在将库 mpmath 用于一个项目,我需要一些有关数组的帮助,即通过函数传递它们。

我用 mpf 元素创建数组没有问题。这段代码摘录让我可以做到这一点:

(...)

ds = 0.001

str_ds = str(ds); ds = mpf(str_ds)

s1 = arange(pi/mpf('2.0'), (3.0/2.0) * pi + ds/mpf('2.0'), ds)  
s2 = arange(pi/mpf('2.0'),-(1.0/2.0) * pi - ds/mpf('2.0'),-ds)

s1 = array(s1)
s2 = array(s2)

def r1(s):
    return array([xc + r * cos(s), r * sin(s)])

def r2(s):
    return array([xc + L + r * cos(s), r * sin(s)])

但是,如果我在下一行调用:

r1 = r1(s1)

r2 = r2(s2)

它给了我一个错误。有没有办法通过函数传递带有 mpf 元素的数组?

编辑:我尝试在每个 r1 和 r2 函数中使用矢量化,如下所示:

cos = vectorize(cos)
sin = vectorize(sin)

但它一直不起作用。

4

0 回答 0