MAS115 Mathematical Investigation Skills

Both semesters, 2017/18 20 Credits
Lecturer: Dr Sam Marsh Home page Timetable Reading List
Aims Outcomes Teaching Methods Assessment

Mathematical Investigation Skills introduces topics which will be useful throughout students' time as undergraduates and beyond. These skills fall into two categories: computer literacy and presentation skills. Various computer packages are introduced in other modules; these share some programming capabilities, and one aim of this module is to develop programming techniques, particularly in Python and R, which will help students to investigate mathematical problems. Students will also meet the typesetting system LaTeX, preparing reports and presentations into mathematical topics. Students will learn how to put together mathematical websites by learning the basics of HTML. Project work forms a large part of the module, with students working in groups on investigative mathematics.

There are no prerequisites for this module.

The following modules have this module as a prerequisite:

MAS212Scientific Computing and Simulation

Outline syllabus

Semester 1


  • Computer languages in general; Python in particular.
  • Variable types: integers, floats, strings, booleans and lists.
  • Conditional statements.
  • For and while loops.
  • Functions; examples from mathematics.
  • Additional modules: Numpy, Scipy.


  • The importance of presentation; writing well; laying out mathematics;
  • The basics and philosophy of LaTeX; displaying mathematics and including graphics in LaTeX; referencing.
  • Using punctuation correctly and effectively;
  • Using LaTeX to create presentations;
  • The basics of HTML and CSS; adding graphics; embedding content; controlling layout;
  • Creating mathematical webpages;
  • Using spreadsheets in mathematics;
  • Working effectively in groups; constructive criticism.

Semester 2

R Programming

  • Vectors, matrices, dataframes and lists;
  • Pseudo-code to help break down complex programming tasks;
  • For loops and conditional statements;
  • Repeat and while loops;
  • Writing functions;
  • Graphics - plotting using R, adding labels and legends;


  • To introduce computer programming within the context of mathematics and statistics;
  • To allow students to investigate mathematical phenomena experimentally, and learn how to report conclusions in a coherent way;
  • To introduce students to LaTeX, the standard mathematical typesetting system;
  • To introduce students to HTML and, in particular, to the creation of mathematical webpages;
  • To develop students' confidence in writing and typesetting mathematics;
  • To develop students' confidence in studying questions in mathematics independently;
  • To give students more opportunity to give mathematical presentations.

Learning outcomes

  • To be able to write simple programs;
  • To understand some of the terminology used in computing;
  • To understand basic control structures for programs;
  • To be able to write programs to make mathematical investigations;
  • To be able to use LaTeX with confidence;
  • To be able to create HTML websites with confidence;
  • To be able to typeset a report on their work.

Teaching methods

Lectures, computer labs, investigative problems.

22 lectures, no tutorials, 34 practicals


  • Semester 1, mid-semester mini-project (10%)
  • Semester 1 programming test (10%)
  • Semester 2, mid-semester mini-project (10%)
  • Semester 2 programming test (10%)
  • 3 group projects (50% total)
  • Weekly homeworks (10%)

Reading list

Type Author(s) Title Library Blackwells Amazon
B Allen B. Downey Think Python Blackwells Amazon
B Magnus Lie Hetland Beginning Python ELECTRONIC RESOURCE Blackwells Amazon
C Nicholas J. Higham Handbook of Writing for the Mathematical Sciences 808.06651 (H) Blackwells Amazon

(A = essential, B = recommended, C = background.)

Most books on reading lists should also be available from the Blackwells shop at Jessop West.

Timetable (semester 1)

Tue 09:00 - 09:50 lecture   Diamond Building LT7
Tue 11:00 - 11:50 tutorial (group 1) Hicks Room G39a
Tue 11:00 - 11:50 tutorial (group 2) Hicks Room G25
Tue 16:00 - 16:50 tutorial (group 3) Hicks Room G39a
Wed 12:00 - 12:50 tutorial (group 4) FC-B56 - Firth Court
Wed 12:00 - 12:50 tutorial (group 5) Hicks Room G25
Thu 10:00 - 10:50 lecture   Hicks Lecture Theatre 1
Thu 15:00 - 15:50 lab session (group a) FC-B56 - Firth Court
Fri 14:00 - 14:50 lab session (group b) Hicks Room G25
Fri 14:00 - 14:50 lab session (group c) FC-B56 - Firth Court
Fri 15:00 - 15:50 lab session (group d) Hicks Room G25
Fri 15:00 - 15:50 lab session (group e) Information Commons, Computer Room 3.02