Introduction to Scientific Computing
Revised: February 2015
This introduction to the field of scientific computing will focus on using mathematical
and programming as tools in mathematical modeling and problem solving. Motivated by
various types of mathematical models (discrete, continuous, deterministic, stochastic,
etc.), we will investigate software options that are best suited for implementing
our models and simulations. Prerequisite: MATH 255. Three credit hours.
Student Learning Objectives
By the end of the course students should be able to
- Model problems mathematically and use mathematical software to solve or simulate these
- Develop algorithms and implement them in the appropriate software or programming language;
- Draw pertinent examples from mathematical models, particularly from other disciplines
(e.g. ecology, biology, chemistry, finance);
- Present professional documents, presentation materials, algorithms and solutions to
problems in a mathematically sophisticated manner using a scientific documentation
- Know the benefits and drawbacks of each of the computational tools used during the
Though there is no formal text for the breadth of topics discussed in this class,
the following supplementary text has been selected:
MATLAB: A Practical Introduction to Programming and Problem Solving (3rd Edition), 2013, Butterworth-Heinemann/Elsevier.
Grading procedures and factors influencing course grade are left to the discretion
of individual instructors, subject to general university policy.
Attendance policy is left to the discretion of individual instructors, subject to
general university policy.
Using LaTeX. (9 class days) Introduction to LaTeX, Implementing Lists, Tables, and Graphics in LaTeX, Mathematics
in LaTeX, Referencing in LaTeX, Bibliographies, Beamer Presentations, and Posters
Modeling with Difference Equations in Excel (5 class days) Introduction to Difference Equations, Basic Excel, SIR and Predator-Prey Models,
Special Features in Excel, and Stochastic Models.
Modeling with Calculus, Differential Equations, and Probabilistic Models in Mathematica
(7 class days)
Introduction to Mathematica, Calculus in Matheamatica, Modeling with Differential
Equations in Mathematica, and Probabilistic Simulations in Mathematica
Modeling with Matrices and MATLAB (4 class days) Introduction to MATLAB, Age and Stage-Based Models, Markov Chains in MATLAB
Introduction to Programming in MATLAB (10 class days) Algorithm Development, Conditional Statements, Looping, Looping with Arrays, Mathematical
Investigations with Programming, Coding Simulations with MATLAB
Additional Topics and/or Student Presentations (10 days) Additional topics include modeling with dynamic systems tools (e.g. Vensim, Stella,
Berkley Madonna), agent-based modeling (with NetLogo), statistical modeling (with
R and Fathom). If long-term projects are given to the students over the semester,
3 - 6 days may be used for student presentations.