THE UNIVERSITY of EDINBURGH

DEGREE REGULATIONS & PROGRAMMES OF STUDY 2022/2023

Timetable information in the Course Catalogue may be subject to change.

University Homepage
DRPS Homepage
DRPS Search
DRPS Contact
DRPS : Course Catalogue : School of Engineering : Civil

Undergraduate Course: Numerical Methods and Computing 2 (CIVE08017)

Course Outline
SchoolSchool of Engineering CollegeCollege of Science and Engineering
Credit level (Normal year taken)SCQF Level 8 (Year 2 Undergraduate) AvailabilityAvailable to all students
SCQF Credits10 ECTS Credits5
SummaryThis course introduces python programming, software engineering and design techniques to Engineering students. It also introduces the use of libraries like SciPy, NumPy and Matplotlib for solving equations (using appropriate numerical methods) and the use of JuPyter Lab notebooks to present calculations.
Course description Computer programmes are more often read than written, so it is critical that they are written in a way which makes it easy for the programme to be modified in the future and so that the programmer knows the code works (and fails) as designed.

This course introduces software engineering techniques which enable properly documented, easy to read code to be written. It is based around the Python 3 language (which is freely available) and will also cover the basic elements of Python programming.

This course will make use of a BlinkStick Square, a programmable USB key with eight LEDs. You will use the BlinkStick Python library to control the LEDs.

You will also learn to use the SciPy and NumPy libraries to solve equations and the Matplotlib library to plot graphs and charts.

Finally, the course will introduce you to JuPyter Lab notebooks which can be used to document and layout calculations, present results and code.
Entry Requirements (not applicable to Visiting Students)
Pre-requisites Co-requisites
Prohibited Combinations Students MUST NOT also be taking Programming Skills for Engineers 2 (SCEE08014) AND Computational Methods for Chemical Engineers 2 (CHEE08011) AND Engineering Software 2 (ELEE08017)
Other requirements None
Additional Costs None
Information for Visiting Students
Pre-requisitesNone
High Demand Course? Yes
Course Delivery Information
Not being delivered
Learning Outcomes
On completion of this course, the student will be able to:
  1. Design, program, document and test reusable modules and applications in Python and use data structures such as lists, tuples, and dictionaries in Python programs;
  2. Use loops, decision statements and functions in Python programmes;
  3. Use external libraries to perform engineering calculations and plot graphs;
  4. Use exception handling in Python applications for error handling;
  5. Use JuPyter Lab notebooks to perform, layout and document calculations.
Learning Resources
Mark Summerfield (2010) Programming in Python 3: A Complete Introduction to the Python Language, 2ND edition, Addison-Wesley Professional.
Sadeep Nagar (2018) Introduction to Python for Engineers and Scientists: Open Source Solutions for Numerical Computation, Apress, 978-1-4842-3203-3
Jody Scott Ginther (2010) Start Here: Python 3X Programming, Alien Cat Studios.
Additional Information
Graduate Attributes and Skills Not entered
Additional Class Delivery Information Lecture Hours: 20
KeywordsComputer programming,Python,Software Engineering,Numerical Methods
Contacts
Course organiserProf David Ingram
Tel: (0131 6)51 9022
Email: David.Ingram@ed.ac.uk
Course secretaryMiss Jennifer Yuille
Tel: (0131 6)51 7073
Email: Jennifer.Yuille@ed.ac.uk
Navigation
Help & Information
Home
Introduction
Glossary
Search DPTs and Courses
Regulations
Regulations
Degree Programmes
Introduction
Browse DPTs
Courses
Introduction
Humanities and Social Science
Science and Engineering
Medicine and Veterinary Medicine
Other Information
Combined Course Timetable
Prospectuses
Important Information