Resolver un sistema de polinomios no lineal, basado en problemas
Cuando x
es una matriz de 2 por 2, la ecuación
es un sistema de ecuaciones polinomiales. Aquí, significa utilizando multiplicación de matrices. Puede formular y resolver este sistema fácilmente utilizando el enfoque basado en problemas.
En primer lugar, defina la variable x
como una variable de matriz de 2 por 2.
x = optimvar('x',2,2);
Defina la ecuación que desea resolver en términos de x
.
eqn = x^3 == [1 2;3 4];
Cree un problema de ecuación con esta ecuación.
prob = eqnproblem('Equations',eqn);
Resuelva el problema comenzando por el punto [1 1;1 1]
.
x0.x = ones(2); sol = solve(prob,x0)
Solving problem using fsolve. Equation solved. fsolve completed because the vector of function values is near zero as measured by the value of the function tolerance, and the problem appears regular as measured by the gradient. <stopping criteria details>
sol = struct with fields:
x: [2×2 double]
Estudie la solución.
disp(sol.x)
-0.1291 0.8602 1.2903 1.1612
Muestre el cubo de la solución.
sol.x^3
ans = 2×2
1.0000 2.0000
3.0000 4.0000