This code presents in the knowledge of the author new generalized cubature rules for different systems of functions on the unit square.
The following types of Quadrature and cubature rules can be calculated and are saved in this code:
- Generalized Gaussian Quadrature Rules for the system
$1, \ln(x), x, x \ln(x), x^2, x^2 \ln(x), \dots$ - Cubature Rules calculated by the Gaussian Product Rule of two arbitrary quadratures
- Symmetric Cubature Rules for complete systems of polynomials
- Asymmetric Cubature Rules for complete systems of polynomials
- Generalized Cubature Rules for Rectangular Systems of polynomials with logarithmic singularity
- Generalized Cubature Rules for Quadratic Systems of polynomials with logarithmic singularity
Gaussian quadrature is a numerical integration technique integrating polynomials up to order
The Generalized Gaussian Quadrature Rules of degree n for the system
x, w = generalizedquadrature(n::Int)
The term cubature is used for quadrature rules in two dimensions. An one dimensional quadrature rule can be expanded in two dimensions by integrating each direction by itself. If this technique is used
A set of monomials up to order 5 contains the functions
- A complete system of polynomials up to order
$p$ contains all polynomials$f(x,y) = x^i y^j$ , where$i+j \leq 5$ - An incomplete system of polynomials up to order
$p$ contains all polynomials$f(x, y) = x^i y^j$ , where $ i, j \leq 5$
A Gaussian product rule of two one dimensional quadrature rules of order
Cubature rules calculated by the Gaussian product rule of two arbitrary quadratures can be obtained by
nodes, weights = tensorrule(x::Vector,w::Vector,x1::Vector,w1::Vector, 2)
The variables
The symmetric cubature rules for complete systems of polynomials of degree
nodes, weights = symmetriccubature(p::Int)
The asymmetric cubature rules for complete systems of polynomials of degree
nodes, weights = asymmetriccubature(p::Int)
Rectangular systems are complete systems of polynomials with a logarithmic singularity in x-direction fp to degree
nodes, weights = generalizedcubature(degree::Int; type = :logrect)
A quadratic system is a system with the same amount of terms in x and y-direction. Since every second term in x direction contains the logarithmic singularity, we integrate polynomials with twice the order in y than in x direction. A generalized Cubature rule of degree 3 of a quadratic system integrates all linear combinations of the functions
nodes, weights = generalizedcubature(degree::Int; type = :logquad)