Select specific coefficient from symbolic polynomial

12 vues (au cours des 30 derniers jours)
Farid Salazar Wong
Farid Salazar Wong le 1 Juil 2015
Given a symbolic polynomial in several variables I would like to pick the coefficient for a given monomial.
Ex: P(x,y,z)= 6*x^2*y + z*x- 5*x +7*x*y*z Let say I would like to find the coefficient of x*z in P(x,y,z) that is 1.
Or I could ask the coefficient of y in P(x,y,z) in this case I would obtain 0.
Or coefficient of x in P(x,y,z) I would obtain -5.
Is there a way to solve this?

Réponse acceptée

Mischa Kim
Mischa Kim le 1 Juil 2015
Modifié(e) : Mischa Kim le 1 Juil 2015
Farid, you can back out the subexpressions and the corresponding coefficients of the polynomial using coeffs
syms x y z P(x,y,z)
P(x,y,z) = 6*x^2*y + z*x- 5*x +7*x*y*z;
[c,t] = coeffs(P)
c(x, y, z) =
[ 6, 7, 1, -5]
t(x, y, z) =
[ x^2*y, x*y*z, x*z, x]
With this approach and a bit of logic you can write a function that returns the coefficient as stated in your question.
  1 commentaire
Farid Salazar Wong
Farid Salazar Wong le 1 Juil 2015
Thanks a lot. This helped me write my own function.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by