Select specific coefficient from symbolic polynomial

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?

 Risposta accettata

Mischa Kim
Mischa Kim il 1 Lug 2015
Modificato: Mischa Kim il 1 Lug 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.

Più risposte (0)

Categorie

Scopri di più su Mathematics in Centro assistenza e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by