  This manuscript is a collection of problems and solutions related to modeling
the cryosphere using the finite element software FEniCS. Included is an
introduction to the finite element method; solutions to a variety of problems
in one, two, and three dimensions; an overview of popular stabilization
techniques for numerically-unstable problems; and an introduction to the
governing equations of ice-sheet dynamics with associated FEniCS
implementations. The software developed for this project, Cryospheric Problem
Solver (CSLVR), is fully open-source and has been designed with the goal of
simplifying many common tasks associated with modeling the cryosphere. CSLVR
possesses the ability to download popular geological and geographical data,
easily convert between geographical projections, develop sophisticated two- or
three-dimensional finite-element meshes, convert data between many popular
formats, and produce production-quality images of data. Scripts are presented
which model the flow of ice using geometry defined by mathematical functions
and observed Antarctic and Greenland ice-sheets data. A new way of solving the
internal energy distribution of ice to match observed intra-ice water contents
within temperate regions is thoroughly explained.
