Select specific coefficient from symbolic polynomial

12 Ansichten (letzte 30 Tage)
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?

Akzeptierte Antwort

Mischa Kim
Mischa Kim am 1 Jul. 2015
Bearbeitet: Mischa Kim am 1 Jul. 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.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by