# `polylib`::`sortMonomials`

Sorting monomials with respect to a term ordering

MuPAD® notebooks will be removed in a future release. 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.

## Syntax

```polylib::sortMonomials(`f`)
polylib::sortMonomials(`f`, `vars`)
polylib::sortMonomials(`f`, `ord`)
polylib::sortMonomials(`f`, `vars`, `ord`)
```

## Description

`polylib::sortMonomials(f, ord)` returns a list of all monomials constituting the polynomial `f`, sorted in descending order with respect to `ord`.

A monomial ordering may be: one of the identifiers `LexOrder`, `DegreeOrder`, `DegInvLexOrder`; or an object of type `Dom::MonomOrdering` or convertible to that type; or any object returning a number when called as `ord(m1,m2)` for two degree vectors `m1` and `m2`. A degree vector is a list of integers, as returned by `degreevec`.

If no order is given, the lexikographical order is used.

If no list of variables is given, all indeterminates of `f` are used.

Given two degree vectors, `m1` is considered to be greater than `m2` if and only if `ord(m1,m2)` is positive.

## Examples

### Example 1

The monomials of the polynomial below are compared using a monomial ordering from `Dom::MonomOrdering` .

`polylib::sortMonomials(poly(x^2+x*y^3+2, [x,y]), DegRevLex(2))`
` `

## Parameters

 `f` Polynomial or polynomial expression `vars` Nonempty list of identifiers `ord` Monomial ordering

## Return Values

List of polynomials or expressions of the same type as `f`.

`f`