CMSC 23710: Scientific Visualization

Piazza sign-up, Q&A

Instructor: Gordon Kindlmann
TA: Kai Li

Tues & Thu
Ryerson 251
Mon 3:30-4:50pm
or 5-6:20pm,

Class Description

Scientific visualization combines computer graphics, numerical methods, and mathematical models of the physical world to create a visual framework for understanding and solving scientific problems. The mathematical and algorithmic foundations of scientific visualization (for example, scalar, vector, and tensor fields) will be explained in the context of real-world data from scientific and biomedical domains. The course is also intended for students outside computer science who are experienced with programming and computing with scientific data. Programming projects will be in C99.
Prerequisites: CSMC 15400 is a prerequisite, because of the programming work in C, and the need to be aware of how things are actually working at the level of the CPU and its interaction with the memory hierarchy. Also, your math background should include basic linear algebra.


Instructor Gordon Kindlmann
Office hours (Ryerson 161-B): Mon 10am-11am, Thur 3pm-4pm
TA Kai Li
Office hours: (CSIL 2) Wed 1-2:30pm

Grading and Assignments

The following items determine the class grade, according to their percentages: All homework and project deadlines are at 10pm (except for hw1 and hw5), so that you can get some sleep at night. See this week-by-week diagram of the expected assignment dates so that you can plan your quarter accordingly. More work will sometimes be requested of students registered in 33710. For the projects, a 23710 student may pair with a 33710 student, but the work required will be that for 33710 students. Thoughtful class participation (such as asking and answering questions) may also influence your final letter grade.

Late Policy

Late work is not graded. However, throughout the quarter, you may get up to four 24-hour extensions (“late-chips”) on any of the assignments (except hw5). Only one extension may be used per assignment. You request late-chips at, but must do so before the original (non-extended) assignment deadline (even if allows you to do do after the deadline). In the case of two students working in a pair for a project, both students use their extension at the same time. Exceptional circumstances may warrant additional consideration, at the instructor's discretion (post a private question in the per-assignment folder on Piazza). It is hard to be generous with a student panicking near the deadline about a situation that could have been anticipated earlier.

Communication and Resources

Academic Honesty

In this course, as in all your courses, you must adhere to the college-wide Academic Integrity & Student Conduct guidelines as set forth at The college’s rules have the final say in all cases. To paraphrase them:

  1. Never copy work from any other source and submit it as your own.
  2. Never allow your work to be copied.
  3. Never submit work identical to another student's.
  4. Document all collaboration.
  5. Cite your sources.
If you break any of these rules, you will face tough consequences. Specifically, any student who is determined to have participated in academic dishonesty will not be allowed to withdraw and will receive a course grade no higher than a C. You will also be reported to your adviser and may face further discipline as a result.

Please note that sharing your work publicly (such as posting it to the web) definitely breaks the second rule. With respect to the third rule, you may discuss the general strategy of how to solve a particular problem with another student (in which case, you must document it per the fourth rule), but you may not share your work directly, and when it comes time to sit down and start typing, you must do the work by yourself (or with your partner for that project). If you ever have any questions or concerns about honesty issues, raise them with your instructor, early.

(Thanks to Adam Shaw for this statement of academic honesty.)