This is a past course that has already concluded. If you are looking for a current course, please click here.

Welcome to Modern Computational Math! For grades, log into Moodle. If you need help, contact Prof. Wright.

**Prof. Wright's office hours:** Mon. 1–2pm in RMS 405, Tues. 1–2pm on Zoom, Wed. 2–3pm in RMS 405, Thurs. 10–11am in RMS 405, Fri. 1–2pm in RMS 405, and other times by appointment

**Help sessions:** Tuesdays, Thursdays, and Sundays 7:30–8:30 in Tomson 212

- Complete the Introductory Survey.
- Install Mathematica on your computer. If you've already installed Mathematica, open it up and check that your license key is still active. You might be prompted to upgrade to the most recent version. For assistance, see this IT Help Desk page.

February 6

- Complete the Introductory Survey, if you haven't done so already.
- Read the Syllabus. Pay special attention to the grading information.
- Watch the video Hands-On Start to Mathematica by Wolfram.
- Read pages 1–10 of Computational Mathematics. Come to class prepared to summarize Archimedes's method for computing \(\pi\).
- Complete the Intro Mathematica practice problems and submit your notebook to the Intro Mathematica assignment on Moodle.

February 8

- Read the following pages about the Wolfram Language: Fractions & Decimals, Variables & Functions, Lists, Iterators, and Assignments.
- Modify the code from class to complete the Archimedes's Method practice problems, and upload your solutions to the Archimedes's Method practice problems on Moodle.
- Read through page 22 in Computational Mathematics. Come to class prepared to explain what the text means by
*accuracy*,*efficiency*, and*representation*. - If you're curious why the sum of reciprocals of squares converges to \(\pi^2/6\) (on the Intro Mathematica practice problem), then watch this video.

February 10

- Read the following pages about the Wolfram Language: Functions and Programs, Operations on Lists, and Assigning Names to Things
- Complete the Madhava series practice problem and upload your solutions to the Madahava Series assignment on Moodle.
- Read Section 1.4 (pages 26–29) in Computational Mathematics. Come to class ready to discuss how sums arising from arctangent formulas can be used to compute digits of \(\pi\).

February 13

**MSCS Colloquium:** Summer Research in MSCS; Monday, Feb. 13, 3:30pm in RNS 310

- Complete the Inverse Tangent Formulas practice problems and upload your solutions to the Inverse Tangent Formulas assignment on Moodle.
- Read Section 1.5 (pages 30–33) in Computational Mathematics. Do Exercise 1.25 (not to turn in). How are the methods in this section different from what we have seen so far?
- Take a look at the \(\pi\) Project, due next Wednesday. You don't need to write any code for this yet, but start thinking about the methodology you will use for this project.

February 15

- Complete the Iterative Methods for \(\pi\) practice problems and upload your solutions to the Iterative Methods assignment on Moodle.
- Begin work on the \(\pi\) Project (due next Wednesday).
- Read Section 1.6 (pages 33–37) in Computational Mathematics, Chapter 1. Come to class prepared to discuss the "dart board" method for computing \(\pi\).

February 17

**MSCS Research Seminar:** Prof. Paula Mercurio, *Network Embeddings for Potential Energy Landscapes*, Feb. 17, 3:30pm in RNS 204; video

- Complete the Dart Board \(\pi\) practice problems and upload your solution to the Dart Board Pi assignment on Moodle.
- Read the following pages about the Wolfram language: Ways to Apply Functions, Pure Anonymous Functions, and Tests and Conditionals
- Read Section 2.1 (pages 45–47) in Computational Mathematics, Chapter 2.
- Work on the \(\pi\) Project (due Wednesday).

February 20

**MSCS Colloquium:** Prof. Steve McKelvey, "Applied Mathematics and Bad Intuition: Two Examples," Monday, Feb. 20, 3:30pm in RNS 310; video

- Finish the \(\pi\) Project. Upload your notebook to the Pi Project assignment on Moodle.
- Watch The magic of Fibonacci numbers, a 6-minute TED talk by Arthur Benjamin.
- Read Section 2.2 (pages 47–56) in Computational Mathematics, Chapter 2.

February 22

- Read Section 2.3, up to the "Further Generalizations" heading on page 64, in Computational Mathematics. Focus on the process of discovering Cassini's identity and the methods presented for verifying the identity for lots of indexes \(n\)
- Complete the Computing Fibonacci practice problems and upload your solutions to the Computing Fibonacci assignment on Moodle.

February 24

- Complete the Fibonacci Identities practice problems and upload your solutions to the Fibonacci Identities assignment on Moodle.
- Finish reading Section 2.3 (pages 64–68) in Computational Mathematics, Chapter 2.

February 27

**MSCS Colloquium:** Prof. Mckenzie West (U. Wisconsin Eau Claire) — *cancelled, to be rescheduled*

- Read Section 2.4 (pages 68–76) of Computational Mathematics.
- Complete the Polynomial Identities practice problem and upload your solution to the Polynomial Identities assignment on Moodle. Come to class ready to discuss your observation about Fibonacci Polynomial identities.
- Optionally, begin revising your solution to the \(\pi\) Project. Revisions are due Monday, March 6.

March 1

**MSCS Colloquium:** T.J. Reinartz, "From Objects to N-grams: Programming the Journey with Data and Data Structures," Wednesday, March 1, 3:30pm in RNS 310

- Read Section 2.5 through page 80 in Computational Mathematics.
- Complete the Lucas Identities practice problems and upload your solution to the Lucas Identities assignment on Moodle.
- Optionally, work on revising your solution to the \(\pi\) Project. Revisions are due Monday, March 6.
- Take a look at the Generalized Fibonacci Project. Optionally, start experimenting with generalized Fibonacci sequences.

March 3

**MSCS Research Seminar:** Prof. Kendra Killpatrick (Pepperdine University), "Fibonacci Numbers, Catalan Numbers, and the Super FiboCatalan Numbers," Friday, March 3, 3:30pm in RNS 204; video

**OleHacks Guest Speakers:** Dr. Dustin Dannenhauer, March 3, 7:30pm on Zoom and Dr. Leilani Gilpin, March 4, 1pm on Zoom

- Finish reading Section 2.5 in Computational Mathematics.
- Complete the Pell Identities practice problems and upload your solution to the Pell Identities assignment on Moodle.
- Optionally, finish revising your \(\pi\) Project and resubmit your project to the Pi Project assignment on Moodle.
- Begin the Generalized Fibonacci Project. Experiment with generalized Fibonacci sequences.

**MSCS Colloquium:** Prof. Layla Oesper (Carleton College), "Combining CS and Biology: Algorithms for comparing and summarizing tumor trees," Monday, March 6, 3:30pm in RNS 310

- Read pages 85–90 in Computational Mathematics, Chapter 3.
- Complete the Collatz Practice Problems and upload your solutions to the Collatz Practice assignment on Moodle.
- Work on the Generalized Fibonacci Project. Experiment with generalized Fibonacci sequences.

March 8

- Read pages 90–96 in Computational Mathematics, Chapter 3.
- Finish on the Generalized Fibonacci Project. Upload your project to the Generalized Fibonacci Project assignment on Moodle.

March 10

**MSCS Research Seminar:** Prof. Kristopher Hollingsworth (MN State University, Mankato), "Discrete Frames for High-Dimensional Data" Friday, March 10, 3:30pm in RNS 204; video

**BRIDGES Part 3: Pathways** Friday, March 10, 5–7pm in Buntrock Sun Ballroom

- Watch The Simplest Math Problem No One Can Solve - Collatz Conjecture by Veritasium. Come prepared to discuss something interesting from this video at the beginning of class on Monday.
- Read the rest of Section 3.1 in Computational Mathematics, Chapter 3.
- Complete the Collatz Stopping Times practice problems and upload your solutions to the Collatz Stopping Times assignment on Moodle.

March 13

**MSCS Colloquium:** Prof. Michael Orrison (Harvey Mudd College), "Voting and Linear Algebra: Connections and Questions," Monday, March 13, 3:30pm in RNS 310; video

- Read the Section 3.2 (pages 99–106) in Computational Mathematics, Chapter 3.
- Read Mathematician Proves Huge Result on 'Dangerous' Problem in Quanta magazine.
- Complete the Collatz Variant practice problems and upload your solutions to the Collatz Variant assignment on Moodle.

March 15

- Read Section 3.3, at least through page 116, in Computational Mathematics
- Complete the Logistic Map practice problems and upload your solutions to the Collatz Variant assignment on Moodle.
- Optionally, work on revising your Generalized Fibonacci Project. You may resubmit your project to the Generalized Fibonacci Project assignment on Moodle.

- Read Section 3.3, at least through page 121, in Computational Mathematics.
- Complete the Bifurcations practice problems and upload your solutions to the Bifurcations assignment on Moodle.
- Take a look at the Iterated Functions Project, which is due on Friday, April 7.

March 20

**MSCS Colloquium:** Claire Kelling (Carleton College) Monday, March 20, 3:30pm in RNS 310

- Read the rest of Section 3.3 in Computational Mathematics.
- Watch This equation will change how you see the world (the logistic map) by Veritasium. Come to the next class prepared to discuss something you learned from the video.
- Complete the Chaos and Stability practice problems and upload your solutions to the Chaos and Stability assignment on Moodle.
- Optionally, finish revising your Generalized Fibonacci Project. You may resubmit your project to the Generalized Fibonacci Project assignment on Moodle.

April 3

- Read the following pages from the
*Python Land*tutorial: Variables, Functions, Booleans, Loops, and Strings. - Complete any four of the six exercises in the Intro to Python notebook. For help, talk with the professor or with classmates, or visit the help session on Tuesday evening. By midnight Wednesday, submit your Colab notebook to the Intro Python assignment on Moodle.
- Work on the Iterated Functions Project, due Friday.

April 5

- Read pages 137–141 in Computational Mathematics, Chapter 4. Take note of how the
*Sieve of Eratosthenes*is able to efficiently find all the prime numbers up to some maximum value. - Finish your Iterated Functions Project and upload your Mathematica notebook to the Iterated Functions Project on Moodle.

April 7

- Read Section 4.1 in Computational Mathematics, Chapter 4.
- Try to complete your implementation of the Sieve of Eratosthenes. (There are no practice problems for Monday.)
- Take a look at the Primes Project, due April 17.

April 10

- Complete the Prime Gaps practice problems and submit your Colab notebook to the Prime Gaps assignment on Moodle.
- Read Why prime numbers still fascinate mathematicians, 2300 years later.
- Read Section 4.2 in Computational Mathematics, Chapter 4.
- Begin the Primes Project, due April 17.

April 12

- Read pages 146–149 in Computational Mathematics, Chapter 4.
- Complete the Counting Primes practice problems and submit your Colab notebook to the Counting Primes assignment on Moodle.
- Work on the Primes Project, due April 17.

April 14

- Finish reading Section 4.3 (pages 149–151) in Computational Mathematics, Chapter 4.
- Watch The Riemann Hypothesis, Explained by Quanta Magazine (16 min). Bring your answers to the following two questions to class on Monday:
- What did Riemann hypothesize in his 1859 paper?
- According to the video, how do the zeta zeros relate to the prime numbers?

- Finish the Primes Project and submit your Colab notebook to the Primes Project on Moodle.

- Read The Riemann Hypothesis, explained.
- Optionally, to better understand complex functions and the Riemann zeta function, watch Visualizing the Riemann zeta function and analytic continuation by 3Blue1Brown.
- Optionally, revise your Iterated Functions Project or work on a Challenge Problem.

April 19

*Note: no help session on Thursday, April 20.*

- Read Section 4.5 (pages 160–166) in Computational Mathematics, Chapter 4. If you want to see how large primes are used in cryptography, read Section 4.6.
- Complete the Large Primes practice problems and submit your Colab notebook to the Large Primes assignment on Moodle.
- Optionally, revise your Iterated Functions Project or work on a Challenge Problem.

- Read Section 5.2, at least pages 177–182, in Computational Mathematics, Chapter 5.
- Complete the Pseudorandom Numbers practice problems and submit your Colab notebook to the Pseudorandom Numbers assignment on Moodle.
- Optionally, work on a challenge problem.

April 24

MSCS Colloquium and Kleber-Gery lecture for April 24 have been postponed.

- Read as much as you want from Section 5.3 in Computational Mathematics, Chapter 5. Please accept apologies that this section is rather unpolished.
- Complete the Simulation practice problems and submit your Colab notebook to the Simulation assignment on Moodle.
- Optionally, work on revising your Primes Project. Revisions are due next Monday, May 1.

April 26

- Read Section 5.3 through page 200 in Computational Mathematics, Chapter 5.
- Complete the 1D Random Walks practice problems and submit your Colab notebook to the 1D Random Walks assignment on Moodle.
- Take a look at the Final Project Info. Start thinking about which topics interest you and who you would like to work with.
- Optionally, revise your Primes Project. To submit a revised project, update your Moodle submission to indicate revisions, even if the notebook link is unchanged.

April 28

**MSCS Research Seminar:** Prof. Joseph Johnson *Sneetch Theory: Coupled Oscillators and How Dislike of the Other Can Generate Cliques*, April 28, 3:30pm in RNS 204

- Watch the 1D Random Walk Proof to learn
*why*a simple symmetric 1-D random walk must return to the origin. - Read pages 200–204 in Computational Mathematics, Chapter 5.
- Read through this NumPy quickstart guide. We will use NumPy arrays to store 2D and higher-dimensional random walks.
- Take a look at the Final Project Info. Start thinking about which topics interest you and who you would like to work with.
- Optionally, revise your Primes Project. To submit a revised project, update your Moodle submission to indicate revisions, even if the notebook link is unchanged.
- Optionally, work on a challenge problem.

**MSCS Colloquium:** Mckenzie West, *Still working when the warehouse burns down: the mathematics of storing data*, Monday, May 1, 3:30pm in RNS 310; video

- Read pages 203–205 in Computational Mathematics, Chapter 5.
- Complete the 2D Random Walks practice problems and submit your Colab notebook to the 2D Random Walks assignment on Moodle.
- Read the Final Project Info and Complete the Final Project Planning Survey regarding your topic and group preferences for the final project.
- Work on the Random Walk Project.

May 3

**Math Bio Symposium:** Thursday, May 4; Poster Session 4–5pm in Regents 4th floor northwest lounge; evening lecture by Dr. Allison Shaw, *How Perspective Shapes Theory in Biology*, 7:30–8:30 in RNS 290

- Read pages 203–207 in Computational Mathematics, Chapter 5.
- Finish the Random Walk Project and submit your Colab notebook to the Random Walk Project on Moodle.

- Finish reading Section 5.4 in Computational Mathematics, Chapter 5.
- Optionally, work on a challenge problem.

May 8

**MSCS Colloquium:** Computer Science student projects, Monday, May 8, 3:30pm in RNS 310

- Work on your final project. Identify what mathematical questions you would like to investigate. Start planning and writing code.
- Optionally, revise your random walk project or do a challenge problem.

May 10

- Work on your final project.
- Optionally, revise your random walk project or do a challenge problem.

May 12

- Work on your final project.
- Optionally, revise your random walk project or do a challenge problem.

- Finish your final project. Organize your computations and results into a single notebook that demonstrates what you have accomplished in this project. Prepare your presentation— a 10–15 minute overview of what you investigated and discovered.
- Submit your final project files/links to the Final Project assignment on Moodle.
- Complete the Final Project: Self and Peer Evaluation. This is a short,
*required*form regarding your own contributions and your group members' contributions to the project. *Recommended:*schedule a practice presentation with the professor (see Google calendar appointment link in your email).

May 19

**B**: Final Presentations 9:00–11:00am

May 22

**A**: Final Presentations 9:00–11:00am