Skip to content

ruc-sci-comp/cpp-syllabus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 

Repository files navigation

Scientific Computing with C++ Spring 2025

Course Information

Time: Monday 6:00pm - 8:50pm

Location: Campus Center - North Conference Room

Office Hours: By appointment

Instructor Information

Name: Mauro Sanchirico Email: ms3978@camden.rutgers.edu

Acknowledgements!

This course was largely developed by Prof. Nick Sanchirico, who is owed temendous thanks for providing these materials. This course will still be taught by Professor N. Sanchirico in subsequent semesters!

Course Description

This is a one-semester crash-course on scientific computing and applications with C++. The goal of this course is to give the student an overview of STEM-oriented computing topics, with solutions implemented with C++. Throughout the course students will gain exposure to modern computing technologies and techniques.

Prerequisite Knowledge

While there are no prerequisites for the course, you should be very comfortable with algebra, logic, and problem solving. From a technical perspective, you should feel comfortable working with computing systems, with any background in coding and computing being most helpful.

Grading Policy

The semester will feature the following grades:

  • ~7 quizzes
  • ~5 homework assignments
  • 1 midterm examination
  • 1 final project

Final Grades

Letter grades are assigned as follows:

  • 89.5 - 100.0 = A
  • 84.5 - 89.49 = B+
  • 79.5 - 84.49 = B
  • 74.5 - 79.49 = C+
  • 69.5 - 74.49 = C
  • 59.5 - 69.49 = D
  • 00.0 - 59.49 = F

Course Outline

Our week-to-week is organized as follows, though it is subject to change depending on class pace. Below A# refers to when assignments are given and Q# refers to when quizzes are administered:

  • Class 01: What is Scientific Computing, What is C++, Basic Programming (A1)
  • Class 02: Memory, Control Structures
  • Class 03: Operators, Functions, Basic Simulations (A2, Q1)
  • Class 04: Functions, Vectors, Kinematics (Q2)
  • Class 05: More on Vectors, STL Algorithms, Numerical Error (A3)
  • Class 06: Scope, References, Lambdas
  • Class 07: User-defined Types (A4, Q3)
  • SPRING BREAK
  • Class 08: Random Number Generation, Midterm Examination
  • Class 09: Modeling Environments
  • Class 10: Simulating a Complex System Pt 1 (TBD) (Q4)
  • Class 11: Simulating a Complex System Pt 2 (TBD) (Q5)
  • Class 12: Simulating a Complex System Pt 3 (TBD) (A5, Q6)
  • Class 13: Simulating a Complex System Pt 4 (TBD) (Q7)
  • Class 14: Parallel Computing, N-Body Simulation (Q9)
  • TBD: Final Projects Due

Final Project

Everyone is expected to complete a final project and submit it at the end of the semester. This is an individual/group project. We will cover this in more detail after the first 2 or 3 classes.

Academic Integrity

TLDR: just do your own work. Do not copy code, do not use tools to do your work for you.

ChatGPT & AI Technologies

ChatGPT and other AI technologies are in fact powerful tools, and in modern times these tools are accessible to all. While you are not explicitly prohibited from using these tools to facilitate and enhance your learning experience, you are strictly prohibited from using these tools to perform your work for you. Using these tools to complete assignments and/or assigned tasks is unproductive for your learning, and using these tools to complete assignments and/or tasks indicates to me that you do not actually know the material or want to learn it. As such, using ChatGPT and other AI technologies is considered in violation of the academic integrity policy for this course. If I suspect that such an AI tool was used to complete any graded work for this course, at a minimum a grade of 0 will be given for that work. No exceptions under any circumstances will be made.

University Policy

Principles of academic integrity require that every Rutgers University student:

  • properly acknowledge and cite all use of the ideas, results, or words of others
  • properly acknowledge all contributors to a given piece of work
  • make sure that all work submitted as his or her own in a course or other academic activity is produced without the aid of unsanctioned materials or unsanctioned collaboration
  • obtain all data or results by ethical means and report them accurately without suppressing any results inconsistent with his or her * interpretation or conclusions
  • treat all other students in an ethical manner, respecting their integrity and right to pursue their educational goals without interference. This requires that a student neither facilitate academic dishonesty by others nor obstruct their academic progress
  • uphold the canons of the ethical or professional code of the profession for which he or she is preparing.

Adherence to these principles is necessary in order to insure that:

  • everyone is given proper credit for his or her ideas, words, results, and other scholarly accomplishments
  • all student work is fairly evaluated and no student has an inappropriate advantage over others
  • the academic and ethical development of all students is fostered
  • the reputation of the University for integrity in its teaching, research, and scholarship is maintained and enhanced.

Failure to uphold these principles of academic integrity threatens both the reputation of the University and the value of the degrees awarded to its students. Every member of the University community therefore bears a responsibility for ensuring that the highest standards of academic integrity are upheld.

Infractions are not taken lightly and will fully be pursued. For additional information, visit http://academicintegrity.rutgers.edu/

University Policies on Disabilities

Rutgers University welcomes students with disabilities into all of the University's educational programs. In order to receive consideration for reasonable accommodations, a student with a disability must contact the appropriate disability services office at the campus where you are officially enrolled, participate in an intake interview, and provide documentation:

https://ods.rutgers.edu/students/documentation-guidelines.

If the documentation supports your request for reasonable accommodations, your campus’s disability services office will provide you with a Letter of Accommodations. Please share this letter with your instructors and discuss the accommodations with them as early in your courses as possible. To begin this process, please complete the Registration form at https://webapps.rutgers.edu/student-ods/forms/registration.

About

Course information, including grading policies, course outline, and university policies

Topics

Resources

Code of conduct

Stars

Watchers

Forks

Contributors 2

  •  
  •