Isolate Coefficients of Multivariate Linear Polynomial
    11 views (last 30 days)
  
       Show older comments
    
Hi, I have a symbolic expression
eqn = r - 2*x +7/4
I would like to isolate the coefficients of the variables (x, r and y (y's coefficient is 0)). How do I do that? I've tried using coeffs but that only lets me specify one variable. It would also be ok if I got two vectors back:
[ -2 , 1 , 7/4]
[x , r , 1]
even if they don't include y. Thanks!
0 Comments
Accepted Answer
  Alexander
    
 on 18 Jun 2012
        If you know that you have only linear terms and only x, r, and y, you could use diff to get the coefficients:
 syms x r y
 eqn = r - 2*x +7/4;
 [diff(eqn, x), diff(eqn, r), diff(eqn, y)]
This gives:
 ans =
 [ -2, 1, 0]
More Answers (1)
  Christopher Creutzig
    
 on 27 Jun 2012
        syms x r
eqn = r - 2*x +7/4
coeffs(eqn, [x, r])
ans =
[ 7/4, 1, -2]
Note that coeffs returns the coefficients in increasing order and leaves out zeroes:
>> coeffs(7*x^2*r^2 + 6*x^2*r + 5*x^2 + 4*x*r^2 + 3*x*r + 2*r^2, [x, r])
ans =
[ 2, 3, 4, 5, 6, 7]
0 Comments
See Also
Categories
				Find more on Number Theory in Help Center and File Exchange
			
	Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!