Skip to main content

Unit information: Introductory Scientific Computing in 2022/23

Please note: you are viewing unit and programme information for a past academic year. Please see the current academic year for up to date information.

Unit name Introductory Scientific Computing
Unit code SCIF10001
Credit points 20
Level of study C/4
Teaching block(s) Teaching Block 4 (weeks 1-24)
Unit director Dr. Tunnicliffe
Open unit status Not open
Units you must take before you take this one (pre-requisite units)

None

Units you must take alongside this one (co-requisite units)

None

Units you may not take alongside this one

None

School/department Science Faculty Office
Faculty Faculty of Science

Unit Information

This unit is designed for students in the first year of the new “X with Scientific Computing” and “Data Science” degrees in the Faculty of Science. The Python computer language will be used to cover the basics of computer programming for scientists. Methods of scientific programming and important background concepts of computer science will also be explored, to give students the knowledge necessary to participate in higher level computing courses. These programming skills will then be applied to enhance scientific data collection and analysis.

Teaching will be delivered, as much as possible, through hands-on programming workshops, supported by tutorials and seminars. Much of the material lends itself to flipped/modular/bite-sized teaching allowing the students to accumulate credits throughout the teaching period. The topics covered are as follows:

Introduction to scientific programming using Python, a modern computer language

Modern code development environments, version control and debugging

Data visualisation and graphics programming

Concepts in computer science: programming models, algorithms and data structures

It is anticipated that approximately two-thirds of the time will be devoted to the first two items on modern programming methods.

Your learning on this unit

After completing this unit, students should be able to:

  • Write and test basic scientific programs using Python.
  • Use a modern development environment to develop and debug code.
  • Explain the difference between different programming models, and choose the most appropriate for a given problem.
  • Choose appropriate algorithms and data structures for specific applications.
  • Apply computing to investigate scientific problems and experimental data.

How you will learn

The unit is taught through a flipped approach, using asynchronous online material to introduce the more mathematical or theoretical concepts, with structured asynchronous self-paced activities to allow students to develop understanding and put into practice what they have learnt, supported by synchronous online, and subsequently, if possible, face-to-face group workshops and office hours, as well as tutorials and seminars. We will make use of online forum and collaboration tools such as wikis to foster a collaborative and creative mindset. Feedback will be provided for both coursework and formal assessments.

How you will be assessed

Formative assessment will be through a set of on-line tutorials and exercises. Summative assessment will be through ten online tests (30%, ILO's 1, 3, 4 and 5) and a set of four programming exercises (70%, ILOs' 1, 2, 4 and 5).

Resources

If this unit has a Resource List, you will normally find a link to it in the Blackboard area for the unit. Sometimes there will be a separate link for each weekly topic.

If you are unable to access a list through Blackboard, you can also find it via the Resource Lists homepage. Search for the list by the unit name or code (e.g. SCIF10001).

How much time the unit requires
Each credit equates to 10 hours of total student input. For example a 20 credit unit will take you 200 hours of study to complete. Your total learning time is made up of contact time, directed learning tasks, independent learning and assessment activity.

See the Faculty workload statement relating to this unit for more information.

Assessment
The Board of Examiners will consider all cases where students have failed or not completed the assessments required for credit. The Board considers each student's outcomes across all the units which contribute to each year's programme of study. If you have self-certificated your absence from an assessment, you will normally be required to complete it the next time it runs (this is usually in the next assessment period).
The Board of Examiners will take into account any extenuating circumstances and operates within the Regulations and Code of Practice for Taught Programmes.

Feedback