I am learning about finite element methods, and was trying to implement some examples in Julia. So
one of the common steps in FEM is implementing Gauss Quadrature for approximating the integral of each element in the mesh.
QuadGK.jl for computing the integral in 1d. However, the
QuadGK.jl package docs indicate that the package only solves 1-dimensional integrals. However, for solving 2 and 3 dimensional elements, I imagine I need to use a package like
FastGaussQuadrature.jl. The QuadGK function also includes an api or function signature to handle the change of interval, such as
integral, error = quadgk(x -> cos(200x), 0, 1). However, I did not find something similar for
My specific question is, how do I use
FastGaussQuadrature to compute the integral of a 2d (triangle) or 3d (tetrahedral) element. That means, given a set of nodes/points and their coordinates,
[x, y, z], how would I use the package to compute the integral for the loading function
f over a mesh element, or how would I use this package to compute the integral over a mesh element for the stiffness side of the equation.
I believe that FastGaussQuadrature computes the quadrature weights assuming an interval from [-1.0, 1.0]. So if my elements are of a different size in 2 or 3 dimensions, how would I adapt that interval to match the [-1.0, 1.0].