In this thesis, we develop a general framework for local Fourier analysis of multigrid methods that is versatile and well suited for computer implementation. Using this framework we are able to analyze multigrid methods which have not been considered to this point. We analyze a multigrid method for a diffusion problem with jumping coefficients, and we analyze various block smoothers. We show how to create a flexible software for the automation of local Fourier analysis. This flexibility is achieved by choosing approximations to Fourier matrix symbols as primitive components that are then combined into complicated expressions. In this way, many problems can be described and then analyzed by the software.