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

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

**Help sessions:** Tuesdays 7:15–8:15pm, Thursdays 6–7pm, Sundays 6–7pm in Tomson 188

Do the following before the first class:

- 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.

Wednesday

February 7

February 7

Introduction; Mathematica basics

Do the following before next class:

- 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 homework problems and submit your notebook to the Intro Mathematica assignment on Moodle.

Friday

February 9

February 9

Computing \(\pi\)

Do the following before next class:

- 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 assignment 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.

Monday

February 12

February 12

Madhava series for \(\pi\)

**MSCS Colloquium:** Are you CURIous about Summer Research? Monday, Feb. 12, 3:30–4:30pm in RNS 310

Do the following before next class:

- 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\).

Wednesday

February 14

February 14

Inverse tangent formulas for \(\pi\)

Do the following before next class:

- 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.

Friday

February 16

February 16

Formulas for \(\pi\) by Ramanujan and others

**MSCS Presentation:** Paul Tveite '07, "Working at Google" — Friday, Feb. 16, 3:00–4:00pm in RNS 310

Do the following before next class:

- 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\).

Monday

February 19

February 19

Probabilistic approaches for \(\pi\)

Do the following before next class:

- Finish your \(\pi\) Project. Your first draft is due Wednesday (Moodle link). Remember that after the initial grading, you will have a chance to revise and resubmit for a higher grade.
- Optionally, read how Google computed 100 trillion digits of \(\pi\).
- Optionally, work on the Dart Board \(\pi\) practice problems. These are due on Friday.
- 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. Come to class ready to say what
*recursive*means (in the context of a*recursive sequence*or a*recursively-defined function*).

Do the following before next class:

- Finish the Dart Board \(\pi\) practice problems from Monday and upload your solution to the Dart Board Pi 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.

Friday

February 23

February 23

Fibonacci implementations

Do the following before next class:

- 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.
- Optionally, begin revising your \(\pi\) Project. Talk with the professor if you have questions about how to do this. Revisions are due next Friday, March 1. You may submit your revisions to the same project link on Moodle.

Monday

February 26

February 26

Fibonacci identities

Do the following before next class:

- Complete the Fibonacci Identities practice problems and upload your solutions to the Fibonacci Identities assignment on Moodle.
- Finish reading Section 2.3 (pages 65–68) in Computational Mathematics, Chapter 2.
- Optionally, work on revising your \(\pi\) Project. Talk with the professor if you have questions about how to do this. Revisions are due Friday, March 1. You may submit your revisions to the same project link on Moodle.

Wednesday

February 28

February 28

Fibonacci polynomial identities

Do the following before next class:

- To be announced...

Friday

March 1

March 1

Generalized Fibonacci numbers

\(\pi\) Project

revisions due

revisions due

Do the following before next class:

- To be announced...

Monday

March 4

March 4

Generalized Fibonacci numbers

Do the following before next class:

- To be announced...

Wednesday

March 6

March 6

Iterated Functions

Do the following before next class:

- To be announced...

Friday

March 8

March 8

Heights of Collatz sequences

Generalized Fibonacci

Project due

Project due

Do the following before next class:

- To be announced...

Monday

March 11

March 11

Collatz Stopping Times

Do the following before next class:

- To be announced...

Wednesday

March 13

March 13

Collatz sequences

Do the following before next class:

- To be announced...

Friday

March 15

March 15

The logistic map

Do the following before next class:

- To be announced...

Monday

March 18

March 18

The logistic map

Do the following before next class:

- To be announced...

Wednesday

March 20

March 20

Logistic map bifurcation diagrams

Generalized Fibonacci

revisions due

revisions due

Do the following before next class:

- To be announced...

Friday

March 22

March 22

The Feigenbaum Constant

Have a great spring break! No class March 25–April 1.

Wednesday

April 3

April 3

Introduction to Python

Do the following before next class:

- To be announced...

Friday

April 5

April 5

Prime Numbers

Do the following before next class:

- To be announced...

Monday

April 8

April 8

Prime numbers: Sieve of Eratosthenes

Do the following before next class:

- To be announced...

Wednesday

April 10

April 10

Properties of prime numbers

Do the following before next class:

- To be announced...

Friday

April 12

April 12

Counting primes

Do the following before next class:

- To be announced...

Monday

April 15

April 15

Counting Primes and the Riemann Zeta Function

Do the following before next class:

- To be announced...

Wednesday

April 17

April 17

Counting Primes and the Riemann Zeta Function

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

Do the following before next class:

- To be announced...

Friday

April 19

April 19

Detecting large primes

Do the following before next class:

- To be announced...

Monday

April 22

April 22

Pseudorandom numbers

Do the following before next class:

- To be announced...

Wednesday

April 24

April 24

Probabilistic simulation

Do the following before next class:

- To be announced...

Friday

April 26

April 26

Random walks

Do the following before next class:

- To be announced...

Monday

April 29

April 29

Random walks

Do the following before next class:

- To be announced...

Wednesday

May 1

May 1

2D Random walks

Do the following before next class:

- To be announced...

Friday

May 3

May 3

2D Random walks

Do the following before next class:

- To be announced...

Monday

May 6

May 6

3D Random walks

Do the following before next class:

- To be announced...

Wednesday

May 8

May 8

Final projects

Do the following before next class:

- To be announced...

Friday

May 10

May 10

Final projects

Do the following before next class:

- To be announced...

Monday

May 13

May 13

Final projects

We've made it to the end of the semester! A few last things to do:

- To be announced...

Thursday

May 16

May 16

Final Presentations 1:00–3:00pm