The Essentials of Finite Element Modeling and Adaptive Refinement