在python中求向量函数的根

2024-09-28 23:18:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经将一些代码从matlab移植到python。在

部分代码找到向量化函数的根,调用该函数的代价很高。在

在matlab中,使用JacobPattern选项可以有效地实现这一点。通过使用此选项,解算器知道返回向量的第n个元素只依赖于参数向量的第n个元素。在

    options = optimset('Algorithm','trust-region-reflective','JacobPattern',speye(lengthOfArgument));
    roots = fsolve(@VectorisedFunction, initialGuesses, options);

matlab中的矢量化将速度提高了大约100倍,我希望python也能实现类似的效果。我一直在看scipy.optimization,但找不到与jacopattern等价的。在

所以我问:在python中找到向量化函数的根的最佳方法是什么?在


Tags: 函数代码元素参数选项向量algorithmregion
1条回答
网友
1楼 · 发布于 2024-09-28 23:18:18

我不确定您所说的那个昂贵的函数到底做了什么,但是numpy将函数广播到数组中的每个元素(向量化是免费的)。在

因此,如果昂贵的函数正在处理稀疏数组中的0元素,则可以直接从该函数返回。在

相关问题 更多 >