2024-09-26 22:54:10 发布
网友
以下是源代码:
def lambdatest(): F=lambda y: y-np.array([[1,2],[3,4]]) y0=np.array([[3,4],[8,7]]) Y=scipy.optimize.fsolve(F,y0) return Y
我得到的错误是:
我环顾了一下,但似乎搞不懂。在
F(^{}的func参数)必须返回标量或一维数组。fsolve不处理高维数组。在
F
func
fsolve
您可以使用^{}方法将二维数组展平为一维数组,然后将fsolve返回的解决方案重塑为二维数组:
def lambdatest(): F = lambda y: y - np.array([[1,2],[3,4]]).ravel() y0 = np.array([[3,4],[8,7]]) Y = scipy.optimize.fsolve(F, y0.ravel()).reshape(y0.shape) return Y
结果如下:
F
(^{func
参数)必须返回标量或一维数组。fsolve
不处理高维数组。在您可以使用^{} 方法将二维数组展平为一维数组,然后将
fsolve
返回的解决方案重塑为二维数组:结果如下:
^{pr2}$相关问题 更多 >
编程相关推荐