#include <stdio.h>
#include <stdbool.h>
#include <float.h>
#include <math.h>
#include "psVector.h"
#include "psScalar.h"
Include dependency graph for psPolynomial.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.
Data Structures | |
| struct | psPolynomial1D |
| One-dimensional polynomial. More... | |
| struct | psPolynomial2D |
| Two-dimensional polynomial. More... | |
| struct | psPolynomial3D |
| Three-dimensional polynomial. More... | |
| struct | psPolynomial4D |
| Four-dimensional polynomial. More... | |
| struct | p_chebyPolys |
Defines | |
| #define | PS_ASSERT_POLY1D(NAME, RVAL) |
| #define | PS_ASSERT_POLY_NON_NULL(NAME, RVAL) |
| #define | PS_ASSERT_POLY_TYPE(NAME, TYPE, RVAL) |
| #define | PS_ASSERT_POLY_VALID_TYPE(TYPE, RVAL) |
| #define | PS_POLY_PRINT_1D(NAME) |
| #define | PS_POLY_PRINT_2D(NAME) |
Enumerations | |
| enum | psPolynomialType { PS_POLYNOMIAL_ORD, PS_POLYNOMIAL_CHEB } |
| Polynomial Type. More... | |
Functions | |
| float | psGaussian (float x, float mean, float sigma, bool normal) |
| Evaluate a non-normalized Gaussian with the given mean and sigma at the given coordianate. | |
| psPolynomial1D * | psPolynomial1DAlloc (psPolynomialType type, unsigned int nX) |
| Allocates a psPolynomial1D structure with n terms. | |
| psPolynomial2D * | psPolynomial2DAlloc (psPolynomialType type, unsigned int nX, unsigned int nY) |
| Allocates a 2-D polynomial structure. | |
| psPolynomial3D * | psPolynomial3DAlloc (psPolynomialType type, unsigned int nX, unsigned int nY, unsigned int nZ) |
| Allocates a 3-D polynomial structure. | |
| psPolynomial4D * | psPolynomial4DAlloc (psPolynomialType type, unsigned int nX, unsigned int nY, unsigned int nZ, unsigned int nT) |
| Allocates a 4-D polynomial structure. | |
| bool | psPolynomial2DRecycle (psPolynomial2D *poly, psPolynomialType type, unsigned int nX, unsigned int nY) |
| psPolynomial2D * | psPolynomial2DCopy (psPolynomial2D *out, psPolynomial2D *poly) |
| psF64 | psPolynomial1DEval (const psPolynomial1D *poly, psF64 x) |
| Evaluates a 1-D polynomial at specific coordinates. | |
| psF64 | psPolynomial2DEval (const psPolynomial2D *poly, psF64 x, psF64 y) |
| Evaluates a 2-D polynomial at specific coordinates. | |
| psF64 | psPolynomial3DEval (const psPolynomial3D *poly, psF64 x, psF64 y, psF64 z) |
| Evaluates a 3-D polynomial at specific coordinates. | |
| psF64 | psPolynomial4DEval (const psPolynomial4D *poly, psF64 x, psF64 y, psF64 z, psF64 t) |
| Evaluates a 4-D polynomial at specific coordinates. | |
| psVector * | psPolynomial1DEvalVector (const psPolynomial1D *poly, const psVector *x) |
| Evaluates a 1-D polynomial at specific sets of coordinates. | |
| psVector * | psPolynomial2DEvalVector (const psPolynomial2D *poly, const psVector *x, const psVector *y) |
| Evaluates a 2-D polynomial at specific sets of coordinates. | |
| psVector * | psPolynomial3DEvalVector (const psPolynomial3D *poly, const psVector *x, const psVector *y, const psVector *z) |
| Evaluates a 3-D polynomial at specific sets of coordinates. | |
| psVector * | psPolynomial4DEvalVector (const psPolynomial4D *poly, const psVector *x, const psVector *y, const psVector *z, const psVector *t) |
| Evaluates a 4-D polynomial at specific sets of coordinates. | |
| bool | psMemCheckPolynomial1D (psPtr ptr) |
| Checks the type of a particular pointer. | |
| bool | psMemCheckPolynomial2D (psPtr ptr) |
| Checks the type of a particular pointer. | |
| bool | psMemCheckPolynomial3D (psPtr ptr) |
| Checks the type of a particular pointer. | |
| bool | psMemCheckPolynomial4D (psPtr ptr) |
| Checks the type of a particular pointer. | |
| psPolynomial1D ** | p_psCreateChebyshevPolys (psS32 numPolys) |
| Creates the specified number of chebyshev polys. | |
1.5.1