Module overview
Aims and Objectives
Learning Outcomes
Transferable and Generic Skills
Having successfully completed this module you will be able to:
- Use a computer to perform computational modelling studies.
- Apply software engineering techniques for science and engineering.
Subject Specific Practical Skills
Having successfully completed this module you will be able to:
- Connect to the Linux server.
- Check error messages generated by the compiler.
- Learn the steps in the C-program development cycle.
- Write, compile and run C-programs.
Subject Specific Intellectual and Research Skills
Having successfully completed this module you will be able to:
- Develop makefiles and test programs.
- Use strategies to effectively address computational bottlenecks with Python and C code.
- Decompose a computational problem into small parts. - analyse the computational bottleneck.
Knowledge and Understanding
Having successfully completed this module, you will be able to demonstrate knowledge and understanding of:
- Symbolic methods and code generation.
- Version control and one version control tool.
- Complied versus interpreted language.
- Remote and local use of Linux computers.
- Shell commands.
- The C-programming language.
- Combining C-code with Python.
Learning Outcomes
Having successfully completed this module you will be able to:
- C1/M1 As part of the individual assignment, the student must use a computer to perform computational modelling studies and demonstrate comprehensive understanding of software engineering techniques for science and engineering. C2/M2 As part of the individual assignment students must use data files and decompose a computational problem into small parts-analyse the computational bottleneck using first principles of numerical methods and programming language. C3/M3 As part of the individual assignment, the student must demonstrate understanding of C-programming language, combining C-code and Python, use numerical and analytical techniques to address complex engineering problems. C4/M4 As part of the individual assignment, write compile and run C-programmes to find solutions for advanced software engineering problems using relevant technical literature. C5/M5 As part of the individual assignment students must discuss modern computational software techniques and apply C-programme language with code of practice to solve complex engineering problems. C6/M6 As part of the individual assignment students must use strategies to effectively address computational bottlenecks with C-programming codes, decompose a computational problem into small parts. - analyse the computational bottleneck for complex problems. C12/M12 As part of the laboratory assignment students must write, compile and run C-programmes for computational modelling problems. C15/M15 As part of the individual assignment students must apply knowledge of software engineering tools and computer programme languages to solve advanced engineering problems with commercial context. C16/M16 As part of the individual assignment the student must demonstrate knowledge and understanding of software engineering techniques for science and engineering.
Syllabus
Learning and Teaching
Teaching and learning methods
| Type | Hours |
|---|---|
| Follow-up work | 48 |
| Wider reading or practice | 20 |
| Practical classes and workshops | 20 |
| Completion of assessment task | 14 |
| Revision | 12 |
| Preparation for scheduled sessions | 12 |
| Lecture | 24 |
| Total study time | 150 |
Resources & Reading list
General Resources
Course Notes.
Internet Resources
Hans Fangohr: “Python for Computational Science and Engineering“.
Assessment
Assessment strategy
Feedback: Feedback throughout lab sessions.Summative
This is how we’ll formally assess what you have learned in this module.
| Method | Percentage contribution |
|---|---|
| Final Assessment | 100% |
Referral
This is how we’ll assess you if you don’t meet the criteria to pass this module.
| Method | Percentage contribution |
|---|---|
| Set Task | 100% |
Repeat
An internal repeat is where you take all of your modules again, including any you passed. An external repeat is where you only re-take the modules you failed.
| Method | Percentage contribution |
|---|---|
| Set Task | 100% |
Repeat Information
Repeat type: Internal & External