Syllabus for Winter 2022 CIS 410/510
Objectives
The high-level objectives of the course are (1) to develop understanding of scientific visualization, including understanding of scientific data, scalar visualization techniques, and vector visualization techniques and (2) to develop skills in translating this understanding to functioning software.
Expectations
This is a projects-driven class. The projects will help you learn the theory behind scientific visualization, but they will also help you become better programmers, and provide you with experiences, anecdotes, and images that will impress potential employers.
The grading is designed to make sure you are keeping up with the assignments. Staying on top of the projects will be critical to succeeding in this class.
The projects in this class will be hard work for those who have not done significant programming previously. It is difficult to quote exactly how much time, since there is variation in background and programming skill. I expect those who have less developed programming skills will find this class to be a considerable effort, but also that they will have significant improvement by the end of the course.
The only prerequisite for the class is CIS 330, but this will be waived for anyone who has good knowledge of C++. The first eight projects will be in C++, and you will start from a common code base that is implemented in C++. For the advanced project, you may use any language you wish. Computer graphics is not a prerequisite for the course and we will cover whatever graphics we need to know as we go.
Grading
In 410, there are 100 points possible. In 510, there are 160 points possible. I do not plan to curve the grades, and plan to set A- at 90% of the points possible, B- at 80% of the points possible, etc.
- 410 point breakdown:
- 8 introductory projects: 45 points (total)
- Quizzes: 20 points total. Number of quizzes is to be determined.
- Final project: 35 points
- Not attending presentation of final projects: -4 points
- 510 point breakdown:
- 8 introductory projects from 410: 45 points (total)
- 2 additional introductory projects for 510 only: 10 points (total)
- Quizzes: 30 points total. Number of quizzes is to be determined. (Same quizzes as 410, but their value will be 50% more)
- Each 510 student will survey two visualization papers and make a 5 minute presentation on each. Ideally, one paper will be on a visualization application (i.e., how people use visualization) and will include a "movie" that shows the visualizations. The other paper will be on visualization research. Worth 10 points.
- Final project - student defined: 35 points
- Final project - ray caster: 30 points
- Not attending presentation of final projects: -6 points
Grading rubric:
- A – Excellent. Solid grasp of concepts, approaches, and/or programming skills required in
this course.
- B – Very good. Generally good grasp of concepts, approaches, and/or programming skills required in this course.
- C – Pass. Sufficient grasp of concepts, approaches, and/or programming skills required in this course.
- D – No Pass (Earns UO credit). Demonstrated some grasp of concepts, approaches, and/or programming skills required for this course.
- F – No Pass (No credit). Little or no demonstrated grasp of concepts, approaches, and/or programming skills required for this course.
Academic Misconduct
- The programming projects are individual efforts
- You may discuss the projects with your classmates.
- Do not let someone look at your code on your screen.
- Absolutely, positively do not email code.
- Do not search the internet for previous implementations.
- The penalty for academic misconduct is an F in the course.
- If I detect collusion, all individuals involved will receive
an F in the course immediately
- I choose to not enumerate cases that involve collusion. Having a conversation without showing code is as far as you should go. Whiteboard conversations are fine. If you feel you are in a gray area, then you should email me.
- Please note that if you are the one providing too much help, then you will also get an F
Late Policy
You have 2 "late passes."
Late passes allow you to turn in any of the eight introductory projects (not the final project) two days after the due date for full credit.
You may also use two late passes on one assignment and get a four day extension.
For example, you submit a project that was due on a Wednesday on Friday (i.e., two days later) and get full credit if you use one late pass.
If you run out of late passes, then you may continue to earn half credit on any project up until we take the Final. Once we get to the Final (Monday March 14th, 2022 at 8am), I will no longer accept homeworks. (NOTE: I may decide to extend this a few days.)
Note that projects will initially be marked as late and scored half credit.
At the end of the term, you will tell me which projects you want to apply
your late passes to, and the scores for those projects will be increased.
There is no need to indicate your desire to use a late pass as you submit;
I find it often changes as the term goes on.
If you miss a quiz, then you will receive a zero for that quiz. Exceptions for full credit will be granted in appropriate situations. These situations include medical emergencies, etc, and do not include oversleeping, forgetting the day of the quiz, etc. If you need to miss a quiz, it is expected you communicate with me well ahead of time.
If you submit a project and I grade it, then you may not submit revised versions and ask it to be re-graded. Therefore you should only submit your project when you are confident.
University COVID Policies
Academic Disruption
In the event of a campus emergency that disrupts academic activities, course requirements, deadlines, and grading percentages are subject to change. Information about changes in this course will be communicated as soon as possible by email, and on Canvas. If we are not able to meet face-to-face, students should immediately log onto Canvas and read any announcements and/or access alternative assignments. Students are also expected to continue coursework as outlined in this syllabus or other instructions on Canvas.
In the event that the instructor of this course has to quarantine, this course may be taught online during that time.
COVID Containment Plan for Classes
As the University of Oregon returns to in-person instruction, the key to keeping our community healthy and safe involves prevention, containment, and support. Here is information critical to how the UO is responding to COVID-19.
- Prevention: To prevent or reduce the spread of COVID-19 in classrooms and on campus, all students and employees must:
- Containment: If a student in class tests positive for COVID-19, all relevant classes will be notified via an email by the Corona Corps Care Team with instructions for students and staff based on their vaccination status. Specifically:
- Vaccinated and Asymptomatic students: Quarantine not required, but daily self-monitoring before coming on campus is advised; sign up for testing through MAP 3-5 days after exposure if advised you are a contact.”
- Unvaccinated or partially vaccinated students: 14-day quarantine advised – do not come to class – and sign up for testing 3-5 days after notification through MAP, if asymptomatic, or through University Health Services (541-346-2770) or your primary care provider, if symptomatic.
- Symptomatic students: stay home (do not come to class/campus), complete the online case and contact form, and contact University Health Services (541-346-2770) or your primary care provide to arrange for immediate COVID-19 testing.
Students identified as close contacts of a positive case will be contacted by the Corona Corps Care Team (541-346-2292).
- Support: The following resources are available to you as a student.
Good Classroom Citizenship
- Wear your mask and make sure it fits you well
- Stay home if you’re sick
- Get to know your neighbors in class, and let them know if you test positive
- Get tested regularly
- Watch for signs and symptoms with the daily symptom self-check
- Wash your hands frequently or use hand sanitizer
Complete the UO COVID-19 case and contact reporting form if you test positive or are a close contact of someone who tests positive.