# R8POLY Polynomials with R8 Coefficients

R8POLY is a C++ library which contains a number of utilities for polynomials with R8 coefficients, that is, using double precision or 64 bit real arithmetic.

### Languages:

R8POLY is available in a C++ version and a C version and a FORTRAN90 version and a MATLAB version and a Python version.

### Related Data and Programs:

LEGENDRE_PRODUCT_POLYNOMIAL, a C++ library which defines Legendre product polynomials, creating a multivariate polynomial as the product of univariate Legendre polynomials.

MONOMIAL, a C++ library which enumerates, lists, ranks, unranks and randomizes multivariate monomials in a space of M dimensions, with total degree less than N, equal to N, or lying within a given range.

POLYNOMIAL, a C++ library which adds, multiplies, differentiates, evaluates and prints multivariate polynomials in a space of M dimensions.

### List of Routines:

• I4_MAX returns the maximum of two I4's.
• I4_MIN returns the smaller of two I4's.
• R8_SIGN returns the sign of an R8.
• R82POLY2_PRINT prints a second order polynomial in two variables.
• R82POLY2_TYPE analyzes a second order polynomial in two variables.
• R82POLY2_TYPE_PRINT prints the meaning of the output from R82POLY2_TYPE.
• R8MAT_DET_3D computes the determinant of a 3 by 3 R8MAT.
• R8MAT_INVERSE_3D inverts a 3 by 3 R8MAT using Cramer's rule.
• R8MAT_PRINT prints an R8MAT.
• R8MAT_PRINT_SOME prints some of an R8MAT.
• R8POLY_DEGREE returns the degree of a polynomial.
• R8POLY_DERIV returns the derivative of a polynomial.
• R8POLY_LAGRANGE_0 evaluates the Lagrange factor at a point.
• R8POLY_LAGRANGE_1 evaluates the first derivative of the Lagrange factor.
• R8POLY_LAGRANGE_2 evaluates the second derivative of the Lagrange factor.
• R8POLY_LAGRANGE_COEF returns the coefficients of a Lagrange polynomial.
• R8POLY_LAGRANGE_FACTOR evaluates the polynomial Lagrange factor at a point.
• R8POLY_LAGRANGE_VAL evaluates the IPOL-th Lagrange polynomial.
• R8POLY_ORDER returns the order of a polynomial.
• R8POLY_PRINT prints out a polynomial.
• R8POLY_SHIFT adjusts the coefficients of a polynomial for a new argument.
• R8POLY_VALUE evaluates a polynomial using a naive method.
• R8POLY_VALUE_HORNER evaluates a polynomial using Horner's method.
• R8POLY_VALUES_HORNER evaluates a polynomial using Horner's method.
• R8POLY_VALUE_2D evaluates a polynomial in 2 variables, X and Y.
• R8POLY2_EX finds the extremal point of a parabola determined by three points.
• R8POLY2_EX2 finds the extremal point of a parabola determined by three points.
• R8POLY2_RROOT returns the real parts of the roots of a quadratic polynomial.
• R8POLY2_VAL evaluates a parabola defined by three data values.
• R8POLY2_VAL2 evaluates a parabolic function through 3 points in a table.
• R8R8_PRINT prints an R8R8.
• R8VEC_COPY_NEW copies an R8VEC.
• R8VEC_EVEN_NEW returns an R8VEC of values evenly spaced between ALO and AHI.
• R8VEC_EVEN_SELECT returns the I-th of N evenly spaced values in [ XLO, XHI ].
• R8VEC_INDICATOR1_NEW sets an R8VEC to the indicator vector {1,2,3,...}.
• R8VEC_IS_DISTINCT is true if the entries in an R8VEC are distinct.
• R8VEC_LINSPACE_NEW creates a vector of linearly spaced values.
• R8VEC_PRINT prints an R8VEC.
• R8VEC_TRANSPOSE_PRINT prints an R8VEC "transposed".
• R8VEC_ZEROS_NEW creates and zeroes an R8VEC.
• ROOTS_TO_R8POLY converts polynomial roots to polynomial coefficients.
• S_LEN_TRIM returns the length of a string to the last nonblank.
• TIMESTAMP prints the current YMDHMS date as a time stamp.

You can go up one level to the C++ source codes.

Last revised on 09 August 2018.