Computing for mathematics
Syllabus and timeline
This course will follow 3 mains texts:
- A book covering the use of a programming language called Python:
- A set of short tutorials showing how to use the mathematical typesetting
language LaTeX: vknight.org/tex/
- A document with guidelines for writing mathematics.
My personal notes for things I plan on discussing during class sessions can be
found here: vkcfm.readthedocs.io. Note that
you are not the intended audience for those notes (but you might still find them
Class (virtual via Zoom):
- Tuesday 0900
- Friday 1300 (every other week)
Tutorial (virtual via Zoom):
- Wednesday 0900 -> 0945: Groups N, O, P, Q, R, Cymru
- Wednesday 1100 -> 1145: Groups A, B, C, D
- Wednesday 1200 -> 1245: Groups E, F, G, H
- Wednesday 1500 -> 1545: Groups I, J, K, L, M
Check your timetable to know which group you are in.
Office hours (virtual using Zoom and/or discord): Friday 1400 - 1600 (email me
or get in touch on discord).
- Week starting 12th of October:
- Week starting 19th of October:
- Week starting 26th of October:
- Week starting 2nd of November:
- Week starting 9th of November:
- Week starting 16th of November:
- Week starting 23rd of November:
- Week starting 30th of November: Example and
- Week starting 7th of December: Revision/Slack
- Week starting 14th of December: Coursework Solution
- Week 1:
- Week 2:
- Week 3:
- Week 4:
- Week 5:
- Week 6:
- Week 7:
- Week 8: LaTeX and writing mathematics:
- Week 9: Presenting mathematics (to include watching conference
- Week 10: Group work
- Week 11: Group work
- Week 12: Presentation week
This course will be assessed in two parts:
- An individual coursework. You will be given a number of mathematics problems
to solve using Python. This will be automatically marked and counts for 50% of
the total mark for the course.
- A group coursework. Over the second semester you will work in a group to build
a software tool to solve a type of mathematical problem of your choice. The
work will be assessed through: A 15 minute presentation and a 2 page paper.
This will count for 50% of the total mark for the course.
- My email address is
- I will be sending invitations to a discord server (a messaging application).
You are welcome to get in touch with me at any time although I might not
immediately be available to respond.
Office hours: Friday 1400 - 1600 (email me or get in touch on discord).
Frequently asked questions
During the agreed office hours, send me an email or speak to me on discord.
I will respond and if either of us finds it helpful I will send you a link
to a video call.
1. Right click on the link to the coursework and save the file to your
computer (make a note of where it is on your computer).
2. **Do not double click on the file you have downloaded.** (see
for an explanation).
3. Start a Jupyter notebook server (see
4. Using the Jupyter notebook interface navigate to the notebook file you
saved on your computer in step 1 and click on it.
1. In learning central for computing for mathematics, you will find an
2. Locate the `ipynb` file that corresponds to your coursework on your
3. Upload it to the assignment on learning central.
I do not discourage you from using concepts learnt elsewhere. In most
materials I point at other materials. However if you want to be sure to have
done things correctly for your assessment I recommend using the concepts
taught in in this course.
In this course every participant (including myself) will be having many
interactions with other participants. Some potential examples of this:
- Peer to peer discussions during classes;
- Me explaining a given topic.
I expect every participant (including myself) to act with kindness during
Some examples of how this applies to me:
- When a student is late or absent at a class I will assume they have good
reasons. If this happens regularly
- I will first be concerned for their well-being.
- Ask how I can help them catch up.
- If a student asks for an explanation of a topic that has been covered
multiples times I will assume that some set of circumstances has prevented
them from seeing these explanations and:
- will explain the topic.
- also point them at the explanations in the course materials and/or class
If this is a regular occurrence I might ask if there are any circumstances
that I can help with.
- If I make a mistake in a class explanation and someone helpfully points it
out. I will listen and thank them for pointing it out and either go over
the mistake then and there or go over it again at a future meeting.