It is often said that the development of digital computers has transformed the pursuit of science because it has given rise to a third methodology to stand beside the two traditional methodologies of theory and experiment. This course offers you an opportunity to learn some of the basic techniques of this new methodology.
The successful application of computer methods to scientific investigations requires that you have command of a number of distinct but related skills. Working in scientific computing, you will find yourself applying the skills of:
to apply the scientific method to formulating a problem or hypothesis,
to express the problem in the language of mathematics,
to design a logical process for `solving' the mathematical problem
to convert this design to an effective, well-presented computer program,
to portray the output of your work so that you and others can understand it in depth, and
(again), to interpret the outcome in terms of the original scientific problem or hypothesis.
While we do not advocate that you divide rigorously a computational science problem into these various components, you will always find it helpful to break down a hard problem into more manageable chunks. The components listed above will often be a useful way to begin this `chunking' process.
This course will give you an opportunity to develop some of the skills summarized above, and also to develop a systematic approach to computer-based scientific/engineering studies. The specific learning goals are defined by the description of each weekly program, and by the assessment criteria.
This course will not advocate the use of a particular computer language or a package. Rather, you are encouraged to become familiar with the range of tools available to the computational scientist, and to select the one that is appropriate to the task.