回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>因此,我有以下代码:</p>
<pre><code>from sympy import Symbol, solve, nsolve
x1 = Symbol('x1')
x2 = Symbol('x2')
w1 = Symbol('w1')
w2 = Symbol('w2')
eq1 = w1 + w2
eq2 = (w1 * x1) + (w2 * x2)
eq3 = (w1 * x1**2) + (w2 * x2**2)
eq4 = (w1 * x1**3) + (w2 * x2**3)
print(nsolve((eq1, eq2, eq3, eq4), (x1, x2, w1, w2), (2, 0, 2/3, 0)))
</code></pre>
<p>关于这个问题:</p>
<p><a href="https://i.stack.imgur.com/Y2x0R.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Y2x0R.png" alt="enter image description here"/></a></p>
<p>我的回答是:</p>
<pre><code> x = findroot(f, x0, J=J, **kwargs)
File "C:\Users\Sabri\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0\LocalCache\local-packages\Python38\site-packages\mpmath\calculus\optimization.py", line 969, in findroot
for x, error in iterations:
File "C:\Users\Sabri\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0\LocalCache\local-packages\Python38\site-packages\mpmath\calculus\optimization.py", line 660, in __iter__
s = self.ctx.lu_solve(Jx, fxn)
File "C:\Users\Sabri\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0\LocalCache\local-packages\Python38\site-packages\mpmath\matrices\linalg.py", line 226, in lu_solve
A, p = ctx.LU_decomp(A)
File "C:\Users\Sabri\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0\LocalCache\local-packages\Python38\site-packages\mpmath\matrices\linalg.py", line 142, in LU_decomp
ctx.swap_row(A, j, p[j])
File "C:\Users\Sabri\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0\LocalCache\local-packages\Python38\site-packages\mpmath\matrices\matrices.py", line 876, in swap_row
A[i,k], A[j,k] = A[j,k], A[i,k]
File "C:\Users\Sabri\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0\LocalCache\local-packages\Python38\site-packages\mpmath\matrices\matrices.py", line 490, in __getitem__
if key[0] >= self.__rows or key[1] >= self.__cols:
TypeError: '>=' not supported between instances of 'NoneType' and 'int'
</code></pre>
<p>以下是此处的文档:</p>
<p><a href="https://docs.sympy.org/latest/modules/solvers/solvers.html" rel="nofollow noreferrer">https://docs.sympy.org/latest/modules/solvers/solvers.html</a></p>
<p>目前还不清楚是什么导致了这个问题,除了其中一个变量可能是“无”。在谷歌上,许多类似错误的问题都被明确地显示出来,但这里的情况并非如此。有什么建议吗</p>
<p>编辑:我得到这个答案:</p>
<p><a href="https://i.stack.imgur.com/0en5Z.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/0en5Z.png" alt="enter image description here"/></a></p>
<p>使用此代码:</p>
<pre><code>from scipy.optimize import fsolve
def func(p):
x1, x2, w1, w2 = p
return (w1 + w2, (w1 * x1) + (w2 * x2), (w1 * x1**2) + (w2 * x2**2), (w1 * x1**3) + (w2 * x2**3))
x1, x2, w1, w2 = fsolve(func, (2, 0, 2/3, 0))
print(x1, x2, w1, w2)
</code></pre>
<p>所以代码应该返回一个结果,但我不确定为什么它对Sympy不起作用。谢谢</p>