0
大きな系の方程式を解いていますが、ジャコビア行列にアクセスできます。追加の引数をscipy.optimize.rootのjacobianに渡す
私はscipy.optimize.root(他の提案に開放されています)を使用することに決めました。追加の呼び出し可能コードとしてjacobianを渡すことができます。唯一の問題は、私のジャコビアンには例えば、この例ではYの
は、Zは、解決する必要があり、kは固定value
でfun(x,value)==0
のルートを見つけるために使用定数
import scipy.optimize
def fun(x, k):
[y, z]= x
return [k*y**2 + z**2 - 25, k*z*y ]
def jacobian(x, k):
[y, z] = x
j = [[2*k*y, 2*z],
[ k*z, k*y]]
return j
solution = scipy.optimize.root(fun, [x1, x2], jaco=(jacobian, value_for_k))
あなたは 'functools.partial'を使ってkを注入できます。 https://docs.python.org/3/library/functools.html#functools.partial – cel