Manual
Fundamentally, one function is provided:
sauterschwab_parameterized(integrand, strategy)The first argument integrand is the parameterized integrand $k'(\chi_\tau(u,v), \chi_t(u',v'))$. That is, it takes as argument two tuples:
integrand((u,v), (u',v'))The second argument strategy specifies the reparametrization and is one of (the by this package provided) structs:
For triangles
CommonFaceCommonEdgeCommonVertexPositiveDistance
For quadrilaterals
CommonFaceQuadCommonEdgeQuadCommonVertexQuad
Each such struct takes one argument specifying the quadrature rule, e.g.,
strategy = CommonEdge(qrule)where qrule is a vector of (point, weight) tuples for a quadrature on the domain $[0,1]$.
We recommend the FastGaussQuadrature.jl package. For a Gauss-Legendre quadrature a method is provided that maps to the $[0,1]$ domain:
order = 10
qrule = SauterSchwabQuadrature._legendre(order, 0, 1)