在我进入我的问题之前,我已经在 stackoverflow 上搜索了具有相同问题的相关线程:
根据我对这个错误的理解,
raise TypeError(msg)
TypeError: fsolve: 'func' 参数 'fsolve_function' 的输入和输出形状不匹配
问题是输入和输出的形状不一样。
在我下面的代码示例中,我有以下内容:
initialGuess(fsolve在 scipy.optimize 函数中使用的起始估计)。输入initialGuess有 3 个坐标 x、y 和 z 的起始估计值。因此,我希望我的起始输入估计始终具有三个输入。out(非线性联立方程)。在这个例子中,我有 4 个非线性方程。scipy.optimize.fsolve提高上述突出了错误,因为输入和输出都不具有相同的形状。在我的特定情况下,我希望我的输入始终具有三个值(以猜测 x、y 和 z 的初始起点)。在这种情况下,输出有 4 个非线性方程需要使用初始输入估计来求解。fsolve将进行相应的计算。我只是想知道您如何扩展fsolve以使用仅 3 个输入初始估计值的等于或超过 4 个非线性联立方程?代码如下:
from scipy.optimize import fsolve
def fsolve_function(arguments): …Run Code Online (Sandbox Code Playgroud)