EECS 700 - Computer Modeling, Simulation, and Visualization

Fall 2014

Course Description

The goals of this course are to: (1) formulate a mathematical model describing a physical phenomenon; (2) to discretize the model; (3) design and analysis of numerical algorithms for solving equations resulting from discretization; (4) implementation of numerical algorithms; (5) performance of numerical experiments; (6) scientific visualization of the data and computational simulation using OpenGL.

Course Meetings

TR, 11am-12:15pm, 2115 Learned Hall (Section: Simulation Modeling).

Instructor

Dr. Suzanne Shontz
3016 Eaton Hall
Department of Electrical Engineering and Computer Science
Office Phone: (785) 864-8816
Email: shontz@ku.edu
Office Hours: Tuesdays and Thursdays from 1-2pm or send e-mail to schedule an appointment in advance. (Note that I have a second office which is 238 Nichols Hall. At times you will be asked to come to Nichols Hall if you request a meeting with me outside of office hours.)

Teaching Assistant

None.

Required Text

Visualization - OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.3 (8th edition)
Author: Dave Shreiner
Publisher: Addison-Wesley
Year: 2013
ISBN: 978-0321773036
Note: Previous editions of the book will not work for the course.

Optional (Highly Recommended) References

Mathematical Modelling: A Case Studies Approach
Author: Reinhard Illner, C. Sean Bohun, Samantha McCollum, and Thea van Roode
Publisher: American Mathematical Society
Year: 2005
ISBN: 978-0-8218-3650-7

Solving PDEs in C++: Numerical Methods in an Object-Oriented Approach (2nd Edition)
Author: Yair Shapira
Publisher: Society for Industrial and Applied Mathematics
Year: 2012
ISBN: 978-0898716016

Prerequisites

EECS 268 (Programming II; computer programming at this level in any language); MATH 223 (Vector Calculus) or MATH 243 (Honors Vector Calculus); MATH 290 (Linear Algebra) or MATH 291(Elementary Linear Algebra – Honors); senior standing or approval of instructor.

Course Requirements

Lecture attendance is required, although attendance will not be recorded. The course requirements for EECS 700 include class participation, three homework assignments (one each in modeling, simulation, and visualization), two midterm exams, and a final project to be done with a partner. The project will involve an informal midterm report, a final report, and a poster presentation or talk (depending on class size). Graduate student homework and projects will be expected to be done more in-depth than undergraduate student work. Specifics as to the expectations for graduate students will be detailed on each assignment, project, or exam. The homework assignments will require a combination of mathematical modeling (formulated analytically, i.e., by hand), problem solving, algorithmic design, computer programming (using C++, MPI, or OpenGL), and scientific visualization (not all on a single assignment). Prior knowledge of C++, MPI, and OpenGL is not a prerequisite for the course.

Homework assignments will be due about ten days after they are assigned. Due dates for homework assignments will be announced in class. There will be a late penalty of 10% for homework handed in up to 24 hours late. No homework assignments will be accepted more than 24 hours late.

There will be two midterm exams; the dates for the midterm exams are given on the course calendar. Please reserve these dates on your calendar. The midterm exams will be closed-book. A make-up midterm will be given to any student who is absent from the exam for a compelling reason and gets permission from the instructor.

There will be a final project in lieu of a final exam. The final project involves an informal midterm report, a final report, and a poster presentation or a talk (depending on class size). The date for submission of the final report and presentation of the poster is given on the course calendar. A make-up final presentation will be given to any student who is absent from the poster presentation/talk for a compelling reason and gets permission from the instructor.

The exams will cover topics drawn from the lectures and homework, and from the underlying mathematics, algorithms, and visualizations.

Grading

Class participation will count for 10% of the final grade. The homework assignments will count for 25% of the final grade. The two midterm exams will each count for 20% of the final grade, and the final project will count for 25%.

Class Schedule

This calendar shows a week-by-week syllabus. The dates and order of topics are subject to change by the instructor.Any significant changes will be announced in class.

Course Website

http://people.eecs.ku.edu_fall_2014.html

Computing Facilities

Students will have access to the linux machines in the Upper Commons and the computers in 1005B and 1005D in Eaton Hall. These machines will be used for the computational simulation and scientific visualization components of the class and will be used in order to write C++ and OpenGL codes and for developing scientific visualizations. In addition, you will have access to the Advanced Computing Facility at Nichols Hall in order to write MPI code.

Academic Integrity

The University of Kansas has an academic integrity policy that applies to all students. The policy can be found at http://policy.ku.edu/governance/USRR under Article IX. Guidelines for Dealing with Allegations of Scholarly Misconduct.

Guidelines for Dealing with Allegations of Scholarly Misconduct: The guidelines state that “scholarly misconduct includes fabrication, falsification, or plagiarism or other practices that seriously deviate from those commonly accepted in the scholarly community, when such misconduct occurs in the context of scholarly activities as set forth in section 9.1.2.”

Fabrication is making up data or results and recording or reporting them.

Falsification is manipulating materials, equipment, or processes, or changing or omitting information, data or results such that the scholarship is not accurately represented in the record, or misrepresenting facts in grant applications, submissions, or other documents provided to agencies which fund grants or sponsor scholarly activities.

Plagiarism is the appropriation of another person’s ideas, processes, results, or words without giving appropriate credit.

Scholarly misconduct does not include honest error or differences of opinion.

Students are allowed to collaborate on the homework assignments with at most one other student of the class. The collaboration should involve no more than the formulation of ideas as a pair. Each student is expected to write up the homework assignment by himself or herself. Students must not hand in homework that represents somebody else's ideas entirely. Students should do the C++, MPI, or OpenGL coding on assignments by themselves--no program code should be shared. No collaboration of any kind is allowed on the midterm exams.

Students are permitted to consult outside published material for the homework, although the homework will be fully based on lecture notes, course handouts, and the textbooks. If a student consults a source other than the lecture notes and textbook, he or she must cite the source--failure to cite the source will be considered cheating.

Students will collaborate on the final project with a partner. No student will work by himself or herself. (If there are an odd number of students, one group will be composed of three students.)

If you are uncertain as to whether or not a particular behavior is considered cheating, you are highly encouraged to discuss it with the instructor before engaging in such behavior.

The penalty for cheating will be an F for the course, following a hearing with the instructor as spelled out in the university's policy on scholarly misconduct. The case will also be reported to the Vice Chancellor for Research and Graduate Studies who will conduct an investigation into the matter. Based on the outcome of the investigation, the Vice Chancellor’s investigatory committee can impose disciplinary action that is less than, more than, or the same as the above penalty depending on the misconduct.

Suzanne M. Shontz, University of Kansas, shontz@ku.edu

Handed out 8/26/14