I need to equalize two coeff matrix
Mostrar comentarios más antiguos
Hi guys, I'm trying to find an answer to this algorithm. That works like the coefficients of s^3+k1*s^2+2*k1*k2*s+6*k1*k3 are equal to the coefficients of s^3+2*s^2+2*s. Then I need to find k1 k2 k3 automatically.
Output like this:
k1 = ...
k2 = ...
k3 = ...
I've tried to make this algorithm bu I could not equalize the coefficient matrices.
Sorry for my English.
2 comentarios
Walter Roberson
el 2 de Dic. de 2019
You mean as in k1=2 k2=1 k3=0?. Do you have the symbolic toolbox?
Burak Bayca
el 2 de Dic. de 2019
Respuestas (1)
Walter Roberson
el 2 de Dic. de 2019
syms s k1 k2 k3
eqn1 = s^3+k1*s^2+2*k1*k2*s+6*k1*k3;
eqn2 = s^3+2*s^2+2*s;
c1 = coeffs(eqn1, s, 'all');
c2 = coeffs(eqn2, s, 'all');
c1 = [zeros(1, length(c1)-length(c2)), c1];
c2 = [zeros(1, length(c2)-length(c1)), c2];
sol = solve(c1 == c2);
k1 = sol.k1; k2 = sol.k2; k3 = sol.k3;
The step involving zeros() is not needed if you are certain that the two equations have the same maximum degree (they do in the particular example you posted.)
1 comentario
Burak Bayca
el 2 de Dic. de 2019
Categorías
Más información sobre Common Operations en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!