Program Cover Document -MAT 341: Computational Mathematics

 

I. Basic Course Information

 

MAT 341: Computational Mathematics is an upper-level course. It has two 80-minute meeting periods each week. The prerequisites are MAT 200 (Proof Writing through Discrete Mathematics), MAT 205 (Linear Algebra: Theory and Applications) and CSC 220 (Computer Science I: Computational Problem Solving) or CSC 250 (Accelerated Computer Science I, II). It is an option for all majors in the Department of Mathematics and Statistics and is one of two ways students in the Applied Mathematics specialization can fulfill their second computer programming requirement.

Computing is an essential part of modern mathematics. The partnership of applied mathematics, mathematics, and computational mathematics brings the tools of modeling, simulation, and data analysis to bear on real-world problems, producing solutions with the power to predict and explain complex phenomena. Computational methods are used in a wide variety of areas in mathematics, computer science, business, engineering, the natural sciences, and the social sciences. As a result, Computational Mathematics combines the beauty and logic of mathematics with the application of computing to solve mathematically modeled problems.

This course will help students develop the computational skills required to solve real-world problems. Significant work on topics drawn from core courses in mathematics that students have taken will be covered, but from a computer solution point of view. Students completing the course will be well prepared for the following opportunities:

 

 

The goal of computational mathematics, put simply, is to find or develop algorithms that solve mathematical problems computationally (i.e. using computers). There are multiple programming languages, including but not limited to C++, Java, Python, Mathematica, Matlab, Maple, SAS, R and Excel/VBA, that facilitate solving computational mathematics problems. The choice of the best, or most appropriate, software platform in which to do programming should be completely determined by the applications being studied and the intended student audience. The primary focus of MAT 341 is on the mathematical algorithms and their implementation, and not on learning additional computer languages.

 

For Undergraduate Bulletin: Computational Mathematics combines the beauty and logic of mathematics with computing. In Computational Mathematics, students will learn how to develop and implement mathematical algorithms that can be utilized to solve real-world problems in many disciplines. Much of the course content will draw on topics from earlier mathematics courses, but these topics will be covered from a computer solution point of view.

II. Learning Goals

 

The primary learning goals of this course are for students to a) learn how to make a computer either solve a mathematical problem; b) gain insights through simulation into how one might solve a problem; c) use computation to gather data to help formulate and refine a mathematical conjecture; and d) understand how the computational complexity of an algorithm affects the usefulness of a particular computational approach. This course will build on mathematical topics students have been taught in core courses within their major from a theoretic approach and reexamine these same topics from a computational/algorithmic point of view. Specific objectives for the course are:

 

  1. Students should gain an appreciation for the role of computers in mathematics, science, engineering and economics as a complement to analytical and experimental approaches.
  2. Students should develop a knowledge of numerical approximation techniques, know how, why, and when these techniques can be expected to work, and have ability to program numerical algorithms
  3. Students should have learned what computational mathematics is about: designing algorithms to solve scientific problems that cannot be solved exactly; investigating the robustness and the accuracy of the algorithms and/or how fast the results from the algorithms produce solutions. These items includes a basic understanding of computer arithmetic and round-off errors, how to avoid loss of significance in numerical computations, and computational complexity.
  4. Students should be able to use and evaluate alternative approaches and algorithms for the solution to a computational problem, including the use of recursive algorithms, iterative algorithms, and where appropriate, closed form solutions.
  5. Students should appreciate and demonstrate skills in oral, written and graphical communication, and know the importance of each.

 

The specific content goals of the course will be determined by the instructor, but it is expected that many of the following topics will be covered in the course:

 

 

III. Student Assessment

 

To assess student understanding of the mathematical and computing topics covered in the course, feedback will be given to students through any of the following mechanisms: commented and/or graded homework, projects, computer programs, examinations, and in-class work.

 

IV. Learning Activities

 

In-class learning activities include lectures on mathematical and computer science concepts, discussion, group work, and instruction on programming language syntax and programming techniques. The course will primarily be project based and assignments will be made on each topic covered in the course that involve theory based work, paper and pencil computational work and significant computer programming. Specific activities and work will include the following: 1) Assignments based on each major topic, including written work, programming and in some cases oral presentation; 2) Written and/or oral examinations; 3) As a final assessment tool, either an individual or small group project to be completed, or a formal final cumulative examination will be administered.

 

IV. Special Note

 

This course may be counted as a replacement for a second correlate computing requirement for Applied Mathematics Majors and it may also count as a 300 level Mathematics Option for all majors offered by the Department of Mathematics and Statistics. Since it is a 300 level mathematics option, it is expected that students taking this course are able to do sophisticated mathematical proofs and arguments as well as solve computational and applied mathematics problems at a high and detailed  level.