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 polinómicas. 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.
sol = struct with fields:
x: [2x2 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