相关疑难解决方法(0)

在numpy中解决大量小方程组

我有大量的小型线性方程组,我想使用 numpy 有效地解决它们。基本上,给定A[:,:,:]b[:,:],我希望找到x[:,:]给定的A[i,:,:].dot(x[i,:]) = b[i,:]。所以如果我不关心速度,我可以解决这个问题

for i in range(n):
    x[i,:] = np.linalg.solve(A[i,:,:],b[i,:])
Run Code Online (Sandbox Code Playgroud)

但是由于这涉及 python 中的显式循环,并且由于A通常具有类似 的形状(1000000,3,3),因此这种解决方案将非常缓慢。如果 numpy 不能做到这一点,我可以在 fortran 中执行此循环(即使用 f2py),但如果可能,我更愿意留在 python 中。

python numpy linear-algebra

6
推荐指数
2
解决办法
2600
查看次数

标签 统计

linear-algebra ×1

numpy ×1

python ×1