Jay Pantone

Assistant Professor
Marquette University

jay.pantone@marquette.edu


Math 6000 – Scientific Computing

Spring 2025, Marquette University

Foundational methods and techniques of scientific computing in the mathematical and statistical sciences. This course will cover fundamental computational algorithms aimed toward applications in science and engineering. Students will implement algorithms, and visualize and validate their outcomes. Further, students will be introduced to and implement best programming practices. Prereq: MATH 2450 or equiv. or consent of instructor; MATH 1700 or equiv. introductory statistics course or consent of instructor, and programming competency in a high-level language.

  • Lectures:
    M, W, F 11:00am - 11:50am
    Straz Nursing 403
  • Office Hours:
    Monday, 9:30am - 10:30am
    Friday, 9:30am - 10:30am
    Cudahy Hall 307 and by appointment

Course Information


 
Documents

Textbook

Important Dates
Monday, Jan 13 Classes begin
Tuesday, Jan 21 Last day to add/drop classes or request CR/NC option
Mon, Mar 3 — Fri, Mar 7 Midterm exam period
Mon, Mar 10 — Fri, Mar 14 Spring break, no classes
Fri, Apr 11 Last day to withdraw from classes
Fri, Apr 18 and Mon, Apr 21 Easter break, no classes
Fri, May 2 Last day of classes
Week of May 5 Final Exam

Daily Calendar
# Date Topics / Notes
Week 1
1 Mon, Jan 13 Syllabus
Topic 0 - Course Information
Topic 1 - Quick(ish) Introduction to Python (started) Before class on Wednesday:
  • Install Python3.13, Git for Windows (if applicable), and VS Code.
  • Install a package with pip.
  • Update pip.
  • Write and run a very basic python program.
  • Try out interactive mode.
2 Wed, Jan 15 Topic 1 - Quick(ish) Introduction to Python (continued)
3 Fri, Jan 17 Topic 1 - Quick(ish) Introduction to Python (continued)
Week 2
Mon, Jan 20 Martin Luther King Jr. Day — no class
4 Wed, Jan 22 Homework 1 Assigned — See D2L

Lecture Notes

Topic 1 - Quick(ish) Introduction to Python (finished)
Topic 1b - Jupyter files versus python files
Topic 2 - Greedy Algorithms (started)
5 Fri, Jan 24 Lecture Notes
Topic 2 - Greedy Algorithms (continued)
Week 3
6 Mon, Jan 27 Lecture Notes
Topic 2 - Greedy Algorithms (continued)
Topic 2b - Python functions and sort keys
7 Wed, Jan 29 Lecture Notes
Topic 2 - Greedy Algorithms (continued)
8 Fri, Jan 31 Homework 1 Due
Lecture Notes
Topic 2 - Greedy Algorithms (continued)
Week 4
9 Mon, Feb 3 Homework 2 Assigned — See D2L
Lecture Notes
Topic 2 - Greedy Algorithms (finished)
10 Wed, Feb 5 Lecture Notes
Topic 3 - The Unix Command Line (started)
11 Fri, Feb 7 Lecture Notes
Topic 3 - The Unix Command Line (finished)
Topic 4 - The Coding Process (started and finished)
Topic 5 - Search Spaces and Brute Force (started)
Week 5
12 Mon, Feb 10 Lecture Notes
Reviewed Homework 1 Solutions
  • Homework Solutions (sent via email)
Topic 5 - Search Spaces and Brute Force (continued)
13 Wed, Feb 12 Lecture Notes
Topic 5 - Search Spaces and Brute Force (finished)
Topic 6 - Divide and Conquer (started)
14 Fri, Feb 14 Topic 6 - Divide and Conquer (continued)
No new lecture notes today, just python code.
Week 6
15 Mon, Feb 17 Homework 2 Due
No in-person lecture or office hours today.
Lecture Notes
Topic 6 - Divide and Conquer (finished)
Pre-recorded lecture
16 Wed, Feb 19 Homework 3 Assigned — See D2L
Lecture Notes
Topic 7 - Backtracking (started)
17 Fri, Feb 21 Lecture Notes
Topic 7 - Backtracking (continued)
Week 7
18 Mon, Feb 24 Lecture Notes
Topic 7 - Backtracking (finished)
Topic 8 - Branch and Bound (started)
19 Wed, Feb 26 Lecture Notes
Topic 8 - Branch and Bound (continued)
20 Fri, Feb 28 Lecture Notes
Topic 8 - Branch and Bound (continued)
  • Homework 4 Preview
  • Homework 4 Preview — code template
  • NOTE: The code uses object-oriented programming (classes), which we haven't covered yet. It's fine if you don't understand that part of it, but you can probably get the gist. The recursive part that actually does the backtracking and branch-and-bound is separate from that.
Week 8
21 Mon, Mar 3 Lecture Notes
Topic 8 - Branch and Bound (finished)
22 Wed, Mar 5 Midterm Exam, in-person portion
Homework 3 Due
23 Fri, Mar 7 No lecture today, extended office hours for take-home portion of midterm (times TBD)
Spring Break
Mon, Mar 10 Spring Break
Wed, Mar 12 Spring Break
Fri, Mar 14 Spring Break
Week 9
24 Mon, Mar 17 Topic 9 - Object-Oriented Programming (started)
25 Wed, Mar 19 Take-home portion of Midterm exam due by 11am
Lecture Notes
Topic 9 - Object-Oriented Programming (finished)
Topic 10 - Introduction to Metaheuristics (started, almost finished)
26 Fri, Mar 21 Homework 4 Assigned
Lecture Notes
Topic 10 - Introduction to Metaheuristics (finished)
Topic 11 - Hill-Climbing (started)
Week 10
27 Mon, Mar 24 Lecture Notes
Topic 11 - Hill-Climbing (continued)
28 Wed, Mar 26
29 Fri, Mar 28
Week 11
30 Mon, Mar 31
31 Wed, Apr 2 Homework 4 Due
32 Fri, Apr 4
Week 12
33 Mon, Apr 7
34 Wed, Apr 9
35 Fri, Apr 11
Week 13
36 Mon, Apr 14
37 Wed, Apr 16
Fri, Apr 18 Easter Break
Week 14
Mon, Apr 21 Easter Break
38 Wed, Apr 23
39 Fri, Apr 25
Week 15
40 Mon, Apr 28
41 Wed, Apr 30
42 Fri, May 2
Final Exam Week