### 4.10 Polylib

This directory contains polylib.h and polylib.cpp. These files contain foundational routines
used for computing various operations related to Jacobi polynomials. The following
abbreviations are used throughout the file:

- z – Set of collocation/quadrature points
- w – Set of quadrature weights
- D – Derivative matrix
- h – Lagrange Interpolant
- I – Interpolation matrix
- g – Gauss
- k – Kronrod
- gr – Gauss-Radau
- gl – Gauss-Lobatto
- j – Jacobi
- m – point at minus 1 in Radau rules
- p – point at plus 1 in Radau rules

Points and Weights:
The following routines are used to compute points and weights:

- zwgj – Compute Gauss-Jacobi points and weights
- zwgrjm – Compute Gauss-Radau-Jacobi points and weights (z = -1)
- zwgrjp – Compute Gauss-Radau-Jacobi points and weights (z = 1)
- zwglj – Compute Gauss-Lobatto-Jacobi points and weights
- zwgk – Compute Gauss-Kronrod-Jacobi points and weights
- zwrk – Compute Radau-Kronrod points and weights
- zwlk – Compute Lobatto-Kronrod points and weights
- JacZeros – Compute Gauss-Jacobi points and weights

Derivative Matrices:
The following routines are used to compute derivative matrices:

- Dgj – Compute Gauss-Jacobi derivative matrix
- Dgrjm – Compute Gauss-Radau-Jacobi derivative matrix (z = -1)
- Dgrjp – Compute Gauss-Radau-Jacobi derivative matrix (z = 1)
- Dglj – Compute Gauss-Lobatto-Jacobi derivative matrix

Lagrange Interpolants:
The following routines are used to compute Lagrange interpolation matrices:

- hgj – Compute Gauss-Jacobi Lagrange interpolants
- hgrjm – Compute Gauss-Radau-Jacobi Lagrange interpolants (z = -1)
- hgrjp – Compute Gauss-Radau-Jacobi Lagrange interpolants (z = 1)
- hglj – Compute Gauss-Lobatto-Jacobi Lagrange interpolants

Interpolation Operators:
The following routines are used to compute various interpolation operators:

- Imgj – Compute interpolation operator gj->m
- Imgrjm – Compute interpolation operator grj->m (z = -1)
- Imgrjp – Compute interpolation operator grj->m (z = 1)
- Imglj – Compute interpolation operator glj->m

Polynomial Evaluation:
The following routines are used to evaluate Jacobi polynomials.

- jacobfd – Returns value and derivative of Jacobi polynomial at point z
- jacobd – Returns derivative of Jacobi polynomial at point z (valid at z = -1,1)