Computational Science: An Introduction for Scientists and Engineers guides students in the biological, physical, social, and engineering sciences in developing core computational science competencies identified by NSF-sponsored high performance computing education programs. These competencies involve three primary themes: developing problem-solving abilities, creating and exploring, through computation, mathematical models and simulations, and using effective scientifc visualization to discover and communicate information about models and data. After an initial description of basic computational thinking concepts and the Python programming environment that will be used, the book cycles between describing a problem from science or engineering, developing a model that assists in solving the problem, and developing the programming tools required for exploring the behavior of the model including scientific visualization techniques.