Skip to main content

Extract matrix from a system of linear equations



I have a big system of linear equations $f_i(x_1,...x_n)$ with $n$ variables and $n$ equations. I want to extract the matrix $M$ where $\vec{f}(\vec{x})=M\vec{x}$. For example if I have


$$ f_1(x) = x + 2y \\ f_2(x) = 3x-y $$ then I want to get the matrix



{{1,2}, {3,-1}}.

Is there a way to do this in Mathematica?



Answer



l = {x + 2 y, 3 x - y};

Normal@CoefficientArrays[l, {x, y}][[2]]


{{1, 2}, {3, -1}}



Comments