This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.


Ground term (constant coefficient) of a polynomial

MuPAD® notebooks are not recommended. Use MATLAB® live scripts instead.

MATLAB live scripts support most MuPAD functionality, though there are some differences. For more information, see Convert MuPAD Notebooks to MATLAB Live Scripts.


ground(f, vars)


ground(p) returns the constant coefficient p(0, 0, …) of the polynomial p.

The first argument can either be a polynomial expression, or a polynomial generated by poly, or an element of some polynomial domain overloading ground.

If the first argument f is not element of a polynomial domain, then ground converts the expression to a polynomial via poly(f). If a list of indeterminates is specified, then the polynomial poly(f, vars) is considered.

The constant coefficient is returned as an arithmetical expression.

The result of ground is not fully evaluated. Evaluation can be enforced by the function eval. Cf. Example 2.

ground returns FAIL if f cannot be converted to a polynomial in the specified indeterminates. Cf. Example 3.


Example 1

We demonstrate how the indeterminates influence the result:

f := 2*x^2 + 3*y + 1:
ground(f), ground(f, [x]), ground(f, [y]),
ground(poly(f)), ground(poly(f, [x])), ground(poly(f, [y]))

The result is the evaluation at the origin:

subs(f, x = 0, y = 0), subs(f, x = 0), subs(f, y = 0)

Note the difference between ground and tcoeff:

g := 2*x^2 + 3*y:
ground(g), ground(g, [x]);
tcoeff(g), tcoeff(g, [x]);

delete f, g:

Example 2

The result of ground is not fully evaluated:

p := poly(27*x^2 + a, [x]): a := 5:
ground(p), eval(ground(p))

delete p, a:

Example 3

The following expression is syntactically not a polynomial expression, and ground returns FAIL:

f := (x^2 - 1)/(x - 1): ground(f)

After cancellation via normal, ground can compute the constant coefficient:


delete f:



A polynomial of type DOM_POLY


A polynomial expression


A list of indeterminates of the polynomial: typically, identifiers or indexed identifiers

Return Values

Element of the coefficient ring of p, an arithmetical expression, or FAIL.

Overloaded By

f, p

Was this topic helpful?