System of non-linear equations

Napisałem do tej pory, ale nie mogłem kontynuować. Jak mogę zdefiniować x0, x1 i x2? Jak mogę rozwiązać ten problem?

def nonlin(a,b,c):
    return [3*x0-cos(x1*x2)+ a, x0*x0-81*(x1+0.1)**2+ sin(x2)+b, exp(-x0*x1)+20*x2+c]
1
rainonsome 19 styczeń 2020, 14:57

1 odpowiedź

Najlepsza odpowiedź

Możesz spróbować rozwiązać to za pomocą {{ X0}}:

from scipy.optimize import fsolve
from numpy import cos, sin, exp

# Define the non-linear equations
def equations(X, a,b,c):
    x0, x1, x2 = X
    return [3*x0-cos(x1*x2)+ a, x0*x0-81*(x1+0.1)**2+ sin(x2)+b, exp(-x0*x1)+20*x2+c]

a = 1.0
b = 0.5
c = 2.5

# Using (0.0, 0.0, 0.0) as an initial vector
x0, x1, x2 = fsolve(equations, x0=(0.,0.,0.), args=(a,b,c)) 
print(x0, x1, x2)

Wyjście :

-6.826133854836766e-06 -0.03657006638562982 -0.17499998751839313
1
s.ouchene 19 styczeń 2020, 18:14