Aims:
This module aims to ensure that all students embarking on this MSc degree in Scientific Computing will have a common set of basic computational and mathematic skills that will enable full participation in the taught modules that follow this Foundations module. This module will be assessed as P/F. Students must pass this Foundations module to proceed with the rest of the course.

Learning Outcomes:
By the end of the module the student should be able to
 competently manipulate files, directories and utilities under the linux operating system
 demonstrate a familiarity with the emacs editor
 write simple code in a scientific programming language
 demonstrate a familiarity with compiling code
 create and manipulate simple makefiles
 demonstrate a familiarity with basic linear algebra
 demonstrate a familiarity with the solving of basic differential equations
 use MATLAB software for simply symbolic algebra applications
 demonstrate a familiarity with basic statistics Use R (or S) for standard applications in statistics

Syllabus:
 Refresher Mathematics: basic linear algebra, basic ordinary differential equations, basic partial differential equations, use of MATLAB software
 Refresher Statistics: concepts of probability, probability models, estimation and hypothesis testsing, use of R (or S) software
 Introduction to Linux: basic concepts, operations on files and directories, linux utilities, shell scripting, the emacs editor, utility packages (e.g. for plotting)
 Refresher Programming: introduction to writing simple code in either Fortran90 or C
 Compiling: introduction to compiling, the gnu Portland and Intel compilers, introduction to Makefiles
