我正在使用scipy.optimize.newton_krylov解决以下问题。但是,它相当慢(这完成了数千个点)。即使我最初的猜测非常接近解决方案,也很慢。这使我想知道是否有更好的方法可以做到这一点。
找到3D点(x,y,z)= pvec满足三个方程el1,el2和el3的最快方法是什么(例如,最小化向量[el1,el2,el3]的范数。]
'''
sr1=np.sqrt(np.sum( (pvec - p2)**2 ))
sr2=np.sqrt(np.sum( (pvec - p1)**2 ))
el1=(sr1 + sr2)/(2.0*scalar1) - 1.0
el2=np.sum( (pvec/scalar2)**2 ) - 1.0
el3=np.dot(v1,(pvec - p1) )/(sr1*scalar3) + \
np.dot(v2,(pvec - p2) )/(sr2*scalar3) - 1.0
'''
我会尝试here中提到的不同方法>
以我的经验,默认方法“ hybr”非常有效。