3

以下に非線形方程式の例を示します。

x+2y=0
x^2+y^2=1

方程式に 2 つの根があることは明らかです。

方程式の根

ただし、GEKKO を使用してルートを 1 つしか取得できないため、初期値を変更するx,yと別のルートを取得できます。

from gekko import GEKKO
m = GEKKO()

# first solution
x,y = [m.Var(1) for i in range(2)]
m.Equations([x+2*y==0,x**2+y**2==1])
m.solve(disp=False)
print(x.value,y.value)

# second solution
x.value=-1
y.value=-1
m.solve(disp=False)
print(x.value,y.value)
Solutions:
[0.894427191] [-0.4472135955]
[-0.894427191] [0.4472135955]

すべてのルートを同時に取得するにはどうすればよいですか?

4

1 に答える 1