  Multigrid methods are popular for solving linear systems derived from
discretizing PDEs. Local Fourier Analysis (LFA) is a technique for
investigating and tuning multigrid methods. P-multigrid is popular for
high-order or spectral finite element methods, especially on unstructured
meshes. In this paper, we introduce LFAToolkit.jl, a new Julia package for LFA
of high-order finite element methods. LFAToolkit.jl analyzes preconditioning
techniques for arbitrary systems of second order PDEs and supports mixed finite
element methods. Specifically, we develop LFA of p-multigrid with arbitrary
second-order PDEs using high-order finite element discretizations and examine
the performance of Jacobi and Chebyshev smoothing for two-grid schemes with
aggressive p-coarsening. A natural extension of this LFA framework is the
analysis of h-multigrid for finite element discretizations or finite difference
discretizations that can be represented in the language of finite elements.
With this extension, we can replicate previous work on the LFA of h-multigrid
for arbitrary order discretizations using a convenient and extensible
abstraction. Examples in one, two, and three dimensions are presented to
validate our LFA of p-multigrid for the Laplacian and linear elasticity.
