CoefficientArrays[polys, vars] gives the arrays of coefficients of the variables vars in the polynomials polys.
CoefficientArrays gives a list containing SparseArray objects, which can be converted to ordinary arrays using Normal.
If CoefficientArrays[polys, vars] gives , , , ... , then polys can be reconstructed as + . vars + . vars . vars + ... .
Any element of polys of the form lhs == rhs is taken to correspond to the polynomial lhs - rhs.
CoefficientArrays[polys, , , ... ] takes all expressions in polys that match any of the to be variables.
CoefficientArrays[polys] is equivalent to CoefficientArrays[polys, Variables[polys]].
The length of the list CoefficientArrays[polys, vars] is one more than the total degree of polys.
The are sparse arrays with ranks i + 1.
The first element has the same length as the list polys.
If polys is a single polynomial rather than a list, is also not a list.
For linear equations, the solution to Thread[polys==0] is given by LinearSolve[, -].
For nonlinear equations, the are not unique. CoefficientArrays by default assigns non-zero coefficients only to monomials where the variables appear in the same order as vars.
CoefficientArrays[polys, vars, Symmetric->True] makes all the symmetric in all their indices. The resulting arrays will generally be less sparse.
See Section 3.7.12.
See also: CoefficientList, SparseArray, Solve.
New in Version 5.0.