COMP/MATH
260 Computational Models and Methods Syllabus Spring 2006
There are three texts for the Computational Models
and Methods course: (1) The modeling textbook is A First Course in Mathematical Modeling,
3rd Ed., by Frank Giordano, et al., published by
Thompson-Brooks/Cole in 2003. We will
primarily use this for the modeling portion of this course. (2) The book on the philosophy of science is A Philosopher Looks at Science, by John
G. Kemeny, custom-published (re-published) in 2004,
based upon the original 1959 text. (3)
The Mathematica textbook is Getting
Started with Mathematica, 2nd Ed., by
C-K. Cheung, et al., published by Wiley in 2005. For
the most part, excellent on-line help is available also. The methods and some
models will also be presented in the instructor’s course
notes (available online, in our course folder on the Q-Drive, to be treated as
a reference), part of which should be printed from time to time and kept in a
3-ring loose-leaf lab book (along with your own class notes, assignment
notes, and laboratory notes). Handouts
will be provided also.
This course is still relatively new throughout the
country. The needs and interests of the
students’ influence the models used in this course. It is expected, but not guaranteed, that the
following organization will be
followed (from Giordano’s twelve chapters) although not all chapters will be
covered to the same degree.
1. Modeling Change
2. The Modeling Process
3. Model Fitting
4. Experimental Modeling
Exam
1
5. Simulation Modeling
6. Discrete Probabilistic Modeling
7. Linear (Discrete) Optimization and Search
Modeling
8. Dimensional Analysis
Exam 2
9. Graphs of Functions as Models and
Visualization
10. Modeling
with a Differential Equation
11. Modeling
with Systems of Differential Equations
12. Nonlinear
(Continuous) Optimization Modeling
Exam 3
Final Exam
Corresponding material from the Kemeny
text will be covered in conjunction with the twelve chapters in Giordano. Kemeny’s text has
16 chapters organized into three parts.
One: What Science Presupposes. Two: Science. Three: Problems
Raised by Science.
It is also expected, but not guaranteed, that most
of the following topics will be
covered, although not all will be covered to the same degree:
Foundations of Modeling
·
The Study of Science
·
The Scientific Process
·
Scientific Research
·
Philosophy of Science
·
Science and Ethical Values
·
Computational Science
·
The Problem Solving Paradigm of Computational Science
·
Simplified Example of Problem Solving Paradigm
·
Problem Solving Revisited - What Can Go Wrong
·
Model Space: Classes of Mathematical Models
·
Analytic vs. Numerical Solution Methods
·
Physical Units, Constants, and Conversion Factors
·
SI Units
·
SI Prefixes and Usage
·
Dimensional Analysis
·
Sources of Error
·
Absolute, Relative and Percent Error
·
Approximation Error
·
Significant Digits in Measurement and Computation
Tools and Techniques for
Modeling
·
Hardware and Software Tools for Computational Science
·
Mathematica®
·
Capabilities of the Mathematica System
·
Interpreted vs. Compiled Programming Languages
·
Using the Mathematica Interpreter
·
Some Useful Mathematica Kernel Functions
·
Numerical Computation with Mathematica
Discrete Modeling and
Computational Considerations
·
Sequences and Series
·
Difference Equations and Operators
·
Solving Models of Difference Equations
·
Basic Recurrence Relations
·
Real vs. Floating-Point Number Systems
·
Floating-Point and Integer Arithmetic
·
Underflow, Overflow, Overflow and Roundoff Errors
·
Integer and Floating-Point Computation
·
Sensitivity of Floating-Point Operations
·
Conditioning of a Problem
·
Rules for Reducing Numerical Errors
·
Types of Scientific Models
·
Methods for Problem Analysis and Solution
·
Performing a Case Study in Problem Solving
·
Interval Arithmetic
Developing Functional
Approximations and Models
·
Functions and Mathematical Models
·
Defining and Using Functions in Mathematica
·
The Taylor Series and the Remainder Term
·
Approximating Functions and Data
·
The Lagrange Polynomial and the Error Term
·
Multivariate Functions, Vectors, and Partial Derivatives
·
Least-Squares Approximation
·
Least-Squares Polynomials
·
Linear Combinations of Basis Functions
·
Nonlinear Models That Can Be Linearized
·
Characteristics of Models
·
Least-Squares Approximation with Mathematica
·
Interpolation vs. Least-Squares in Mathematica
·
Observation and Scientific Laws
·
The Experimental Method and Scientific Discovery
·
Multivariable Scientific Relationships
·
Sensitivity of Models
Linear System and
Differential Equation Modeling
·
Scalars, Vectors, and Matrices
·
Vector and Matrix Computations
·
Solving Linear and Matrix Systems
·
Matrix Eigenvalues and Eigenvectors
·
Vector and Matrix Norms
·
Ill-Conditioned Matrices
·
Vector and Matrix Operations in Mathematica
·
Analytic Solution of Difference Equations
·
Scientific Visualization
·
Visualization with Mathematica
·
Animation in Mathematica: A Case Study
·
Difference Equations vs. Differential Equations
·
ODE Implementation in Mathematica
·
Partial and Integral Equation Models
Stochastic Modeling
·
Random and Pseudo-Random Numbers
·
Pseudo-Random Numbers and Simulation
·
Implementing Pseudo-Random Numbers in C++
·
Generating Uniform Pseudo-Random Numbers
·
Using Uniform PRNs in Mathematica
·
Other Statistical Distributions
·
Using Selected Distributions in Mathematica
·
Using Uniform Pseudo-Random Numbers in C++
·
Stochastic Simulation with Mathematica
Optimization Modeling
·
Zeros and Roots of Nonlinear Equations
·
Bisection Method
·
·
Writing a Bisection Function in Mathematica
·
Equation Solving and Root-Finding in Mathematica
·
·
Mathematica I/O: Example with an Input File
·
Optimization: Minimization or Maximization (Unconstrained and
Constrained)
·
Unconstrained Optimization Methods
·
Unconstrained Optimization in Mathematica
·
Optimality Conditions for Unconstrained Minimization Problems
·
Constrained Optimization with Mathematica: Linear Programming
·
Sequential Unconstrained Minimization Techniques
COMPUTATION AND PROGRAMMING
(PREREQUISITES):
Mathematica 5 will be used for this
course to do most of the computations and the necessary programming. It is currently installed on all of the KUSS laboratory
computers as well as many others.
Currently
INSTRUCTOR:
James
L. Noyes. Office: Room 329H Science.
Hours: Regular hours are posted
on the instructor’s office door and are also available from a file in our class
folder.
Telephone: 327-7858 (Office - try
this number first), 969-8414 (Home – please try to call between
E-Mail: jnoyes@wittenberg.edu (normally checked
3-4 times daily on weekdays).
For more information, see
the instructor’s home page on the Web.
COURSE GOALS:
·
To Understand the Meaning, Purpose, and Value of Computational Science
·
To Understand How to Use Scientific Models
·
To Learn How Models are Derived and Underlying Assumptions
·
To Understand the Methods Used to Solve Models
·
To Understand the Limitations of Both Models and Methods
·
To Learn How to Effectively Use the Computer and Software to Solve
Models
·
To Understand the Importance of Appropriate Visualization Methods
·
To Employ Mathematica in Solving Problems and Validating Solutions
CLASS MEETINGS:
Classes will meet in KUSS 261 MWF
GRADING:
The grade for this course will be based upon lab
exercises, assignments, projects, three equally spaced tests, and a
comprehensive final exam. Some of these
points may also be obtained from unannounced quizzes (which cannot be made up).
Class attendance and participation is very important and will have a positive
effect on your grade.
The points below are approximate, but they should be
close to the following:
Laboratory Exercises, Assignments/Projects: 500 points possible
Three Exams (at 100 points each): 300 points
possible
Final Exam: 200
points possible
====================================================
Total: 1000 points possible
The final grade for this course will be based upon
the individual class average relative to the rest of the class. If the score distribution starts in the 90%‑100%
range, then a ten‑point spread will probably be used (e.g., 90% and above
would be A-, A, or A+, 80% up to 90% is B-, B, B+, etc.).
LABORATORIES:
Unless otherwise stated or other arrangements have
been previously made, all laboratory exercises must be done at
the assigned time and the results turned in at the end of the period. Normally, collaboration with other
students in our class is permitted.
If you receive assistance from a classmate, be sure that you then
understand how to do it yourself and can explain ALL of it.
NON-LAB
ASSIGNMENTS (INCLUDING PROJECTS):
Assignments will be accepted in class. They may also be turned in to the
instructor’s office by
TESTS (EXAMS,
QUIZZES, AND THE FINAL EXAM):
Exams and quizzes are typically (although not
always) based upon what has been covered by lecture notes, previous labs,
assignments, handouts, and text material.
Exams and quizzes CANNOT be
taken later without a legitimately excused absence, which must be given
in ADVANCE (e.g., death in the
family, personal illness, class field trip, necessary Witt-sponsored
activity). This excuse is to be e-mailed
to the instructor (jnoyes@wittenberg.edu) as far in advance
as possible.
THE HONOR CODE AND ACADEMIC
DISHONESTY:
Academic
dishonesty of any kind on homework or exams is not acceptable. This includes, but is not limited to,
plagiarism or unauthorized collaboration with another individual on homework or
tests.
Unless otherwise specified, ALL HOMEWORK assignments
are to be done UNAIDED. If you have a question on any
of the problem material or the code needed, you should contact the CS
instructor ONLY. You may always feel free
to answer questions by another student about the syntax or semantics of the
programming language (e.g., Mathematica).
However, you should NOT ask nor answer questions related to the
specifics of an assignment nor look at (nor copy) each other’s mathematics,
computer code, or write-up unless the instructor indicates in the assignment
that it is permitted. If you use code
from a publicly available source, such as another text or public Web site, you
must cite the source in your comments.
No collaboration is allowed unless
specifically stated on the assignment sheet. The following pledge must be both stated
and signed by the student on each assignment, or the assignment will not be
considered to have been turned in and it will not be graded:
I affirm that my work upholds the highest standards
of honesty and academic integrity at
Suspected
cases of academic dishonesty will be reported to the Honor Council. See your Student
Handbook for more details regarding the Honor Code and academic dishonesty.
OVERALL:
You are responsible for: (a) attending ALL classes
and labs, (b) reading the indicated written material, (c) participating and
ASKING QUESTIONS in class, (d) starting assignments early and doing them
carefully, (e) reviewing the on-line course notes and your own class notes, (f)
thoroughly preparing for tests, (g) performing as much computer
experimentation as necessary, and checking your Witt e-mail daily.