randpoly - random polynomial generator
|
Calling Sequence
|
|
randpoly(vars, opts)
|
|
Parameters
|
|
vars
|
-
|
indeterminate or list or set of indeterminates
|
opts
|
-
|
(optional) equations or names specifying properties
|
|
|
|
|
Description
|
|
•
|
A call to randpoly generates a random polynomial in vars. It is useful for generating test problems for debugging, testing and demonstration purposes. Several options can be specified, determining the form of the polynomial. This allows for quite general expressions with certain properties.
|
•
|
The first argument vars specifies the variables in which the polynomial is to be generated. If vars is a single variable, a univariate polynomial in that variable will be generated. If vars is a list or set of variables, then a multivariate polynomial will be generated.
|
•
|
The possible options (and their default values) are:
|
Option
|
Use
|
Default Value
|
|
|
|
coeffs
|
generate the coefficients
|
rand(-99..99)
|
expons
|
generate the exponents
|
rand(6)
|
terms
|
number of terms generated
|
6
|
degree
|
total degree for a dense polynomial
|
5
|
dense
|
the polynomial is to be dense
|
sparse
|
homogeneous
|
the polynomial is to be homogeneous
|
|
|
|
•
|
The terms option is intended for specifying the number of terms in sparse polynomials, where the numbers of terms is often significantly smaller than the maximum number of possible terms. The terms option will be overridden by the degree option. A call randpoly(x, terms=7) will return a polynomial with six terms, since the default degree is five. If you want a dense polynomial, simply use the dense option.
|
|
|
Examples
|
|
>
|
|
| (1) |
>
|
|
| (2) |
>
|
|
| (3) |
>
|
|
| (4) |
>
|
|
| (5) |
>
|
|
| (6) |
>
|
|
| (7) |
>
|
|
| (8) |
>
|
randpoly([x], coeffs = proc() randpoly(y) end proc);
|
| (9) |
>
|
|
| (10) |
Note: The options coeffs and expons are used to generate the individual terms, which are added to form the polynomial. Thus, the generated polynomial may have coefficients outside the specified range. This is more likely if the requested number of terms is significantly larger than the required degree.
>
|
|
| (11) |
>
|
|
| (12) |
|
|
Download Help Document
Was this information helpful?