Matthew L. Wright
Assistant Professor, St. Olaf College

Modern Computational Math

Math 242 ⋅ Spring 2020

Online office hours: Email Prof. Wright to schedule an appointment.

Top
Today
Bottom
Friday
February 7
Introduction; Mathematica basics
Do the following before next class:
Monday
February 10
Do the following before next class:
  • Start the \(\pi\) Project (due Friday). Implement at least one of the methods for approximating digits of \(\pi\). Look over the sample project report.
  • For an explanation of why the sum of reciprocals of squares converges to \(\pi^2/6\), watch this video. For an explanation of why the product formula from last time converges to \(\pi\), watch this video.
Wednesday
February 12
Do the following before next class:
  • Finish the \(\pi\) Project. Prepare a Mathematica notebook that contains your code and discussion. Pay attention to the grading rubric in the assignment file and refer to the sample project report. Submit your notebook to the Pi Project on Moodle.
  • Investigate \( F_n^2 - F_{n+1}F_{n-1} \), where \( F_n \) is the \(n\)th Fibonacci number. Evaluate this quantity for lots of values of \(n\). What pattern do you observe?
Friday
February 14
Fibonacci identities No class—Prof. Wright is ill
Do the following before next class:
  • Investigate \( F_n^2 - F_{n+1}F_{n-1} \), where \( F_n \) is the \(n\)th Fibonacci number. Evaluate this quantity for lots of values of \(n\). What pattern do you observe?
Monday
February 17
Do the following before next class:
  • Catalan's identity says \(F_n^2 - F_{n+r}F_{n-r} = (-1)^{n-r}F_r^2 \). Verify this for at least three values of \(r > 2 \). For each value of \( r \), check at least 100 values of \( n \).
  • Vajda's identity says \(F_{n+i}F_{n+j} - F_nF_{n+i+j} = (-1)^n F_i F_j \). Verify this for at least six pairs \(i,j\). For each pair \(i,j\), check at least 100 values of \(n\).
  • Submit a Mathematica notebook containing your verifications of Catalan's and Vajda's identities to the Fibonacci Assignment on Moodle. Please put your name at the top of your notebook. (Note that this is an Assignment, not a Project.)
Do the following before next class:
  • Take a look at this paper, which proves various identities involving the Pell numbers. Read through the Introduction, which gives some background about the Pell numbers. Note that Proposition 1 corresponds to our observations in class. Look at the other propositions and theorems that the authors prove.
  • Begin the Pell Project, which is due Monday.
Friday
February 21
Iterated functions: Collatz conjecture
Do the following before next class:
  • Finish the Pell Project, which is due Monday.
  • Continue your investigation of sequences that arise when iterating the Collatz function or some other function. Make at least three observations and formulate at least three questions about iterated functions. Submit your observations and questions to Collatz observations and questions on Moodle.
Monday
February 24
Iterated functions: logistic map and chaos
Do the following before next class:
Wednesday
February 26
Iterated functions and fractals
Do the following before next class:
Friday
February 28
Do the following before next class:
Monday
March 2
Do the following before next class:
  • Finish modifying the function limitSeq to solve the problem encountered in class.
  • Work on the Mean-Median Project, which is due Friday.
Wednesday
March 4
Do the following before next class:
Friday
March 6
Do the following before next class:
  • Finish implementing the Sieve of Eratosthenes.
  • Read "The Sequence of Prime Numbers" (JSTOR link) and answer these questions on Moodle.
Monday
March 9
Do the following before next class:
  • Finish implementing the Sieve of Sundaram.
  • Begin the Primes Project, due Friday.
Wednesday
March 11
Do the following before next class:
  • Finish the Primes Project and submit your notebook to Moodle.
  • Watch this video introduction to RSA encryption.
  • Finish implementing modPow2 from class. Test your implementation for various inputs \(b\), \(e\), and \(m\). It should be much faster than modPow!
Friday
March 13
Mathematics of RSA cryptography
Do the following before next class:
Monday
March 16
Encrypting text with RSA cryptography
Do the following before next class:
Wednesday
March 18
Do the following before next class:
Friday
March 20
Prime patterns and the Riemann zeta function
Do the following. Due to the disruption of recent days, deadlines have been extended until the end of the month, though it's best to finish current work while it's still fresh in your mind. If you have questions or need more time, email Prof. Wright.

Stay well and enjoy spring break! No class March 23 – April 3.

 Optional reading related to this course, all available online via the St. Olaf Library:

 Consider doing an extra-credit project: choose one of the four topics and investigate computationally.

 Optional Python resources:

Getting started after break:
  • Watch the Welcome Back Video.
  • If you haven't finished the RSA Project or the assignments from before spring break, please complete these.
  • A video lesson for Monday, April 6 is posted below. Please watch this, and then join one of the class sessions on Zoom on Monday. (Check your email for the Zoom link.)
Monday
April 6
Do the following before next class:
  • Complete any four exercises in the Intro to Python notebook. Submit your work by copying the sharable link to your notebook and pasting it in the text field of the Intro Python assignment on Moodle.
  • View the Python resorces linked above in the spring break box or on the Links tab of this site.
  • Check back for a video lesson in advance of Wednesday's class.
Wednesday
April 8
Do the following before next class:
  • Finish implementing the Yahtzee simulation in Python. You don't have to submit it for a grade, but we will use it for further investigation in Friday's class.
  • Check back for a video lesson in advance of Friday's class.
Friday
April 10
Yahtzee investigation and plotting with Matplotlib
Do the following before next class:
Monday
April 13
Trouble simulation
Do the following before next class:
Wednesday
April 15
One-Dimensional Random Walks
Do the following before next class:
Friday
April 17
2-D and 3-D Random walks
Do the following before next class:
Monday
April 20
Percolation
Do the following before next class:
Wednesday
April 22
Percolation
Do the following before next class:
Friday
April 24
to be determined
Do the following before next class:
Monday
April 27
Markov chains
Do the following before next class:
Wednesday
April 29
Markov chain inverse problem
Do the following before next class:
Friday
May 1
Markov Chain Monte Carlo (MCMC)
Do the following before next class:
Monday
May 4
MCMC function minimization: simulated annealing
Do the following before next class:
Wednesday
May 6
Combinatorial optimization via simulated annealing
Do the following before next class:
Friday
May 8
Traveling salesperson problem
Do the following before next class:
Monday
May 11
Traveling salesperson problem
Do the following before next class:
Wednesday
May 13
Final projects
Do the following before the final exam period.
Tuesday
May 19
2–4pm: Final presentations for Math 242 B
Wednesday
May 20
2–4pm: Final presentations for Math 242 A