Student Records
Programme & Unit Catalogues

## PH20018: Programming skills

Owning Department/School: Department of Physics
Credits: 6      [equivalent to 12 CATS credits]
Notional Study Hours: 120
Level: Intermediate (FHEQ level 5)
Period:
Semester 2
Assessment Summary: CW 40%, EX 60%
Assessment Detail:
• Coursework (CW 40%)
• Examination (EX 60%)
Supplementary Assessment:
Like-for-like reassessment (where allowed by programme regulations)
Requisites: Before taking this module you must take PH10007 OR take MA10230
Description: Aims:
The aims of this unit are to introduce and develop structured programming skills in a high-level language as a tool for the numerical solution of physical problems. A further aim is to develop the student's awareness of the sources of error in numerical calculations and the means of reducing them.

Learning Outcomes:
After taking this unit the student should be able to:
* carry out the structured design of a computer program using flowcharts or pseudocode;
* give examples of the introduction of rounding errors due to numerical techniques and methods of minimising such problems;
* write computer programs in a high level structured language including arithmetic expressions, loops, branching instructions and arrays;
* describe methods for testing and debugging programs and apply these techniques to the student's own computer programs;
* outline the advantages of using subprograms and write computer programs in a high level structured language using external subprograms;
* use numerical techniques to solve physical problems.

Skills:
Written Communication T/F A, Numeracy T/F A, Information Technology T/F A, Problem Solving T/F A.

Content:
Introduction to numerical analysis: Use of computers in numerical analysis.
Basic vocabulary of computers: Compilation, linking. Variable types. Generic control structures; loops and conditionals. Input and output. Arrays. Floating point round-off and truncation errors. Maximum integer size.
Syntax of the C language: Intrinsic functions of C. Operators and precedences.
Introduction to UNIX: Drives, files and directories in UNIX systems. Essential UNIX commands and editing.
Applications: Root finding. Function evaluation via series expansion and look-up tables. Matrix diagonalisation, normal mode problems.
Structured programming: Subprograms, modules, libraries, pointers, structures in C, inheritances, complex numbers.
Applications: Transfer matrix and/or shooting methods.
Before taking this module you must take PH10007 AND take PH10008
Programme availability:

#### PH20018 is Compulsory on the following programmes:

Department of Physics
• USXX-AFB03 : BSc(Hons) Mathematics and Physics (Year 2)
• USXX-AAB04 : BSc(Hons) Mathematics and Physics with Study year abroad (Year 2)
• USXX-AKB04 : BSc(Hons) Mathematics and Physics with Year long work placement (Year 2)
• USXX-AFM01 : MSci(Hons) Mathematics and Physics (Year 2)
• USXX-AAM01 : MSci(Hons) Mathematics and Physics with Study year abroad (Year 2)
• USXX-AKM01 : MSci(Hons) Mathematics and Physics with Year long work placement (Year 2)

#### PH20018 is Optional on the following programmes:

Programmes in Natural Sciences
• UXXX-AFB01 : BSc(Hons) Natural Sciences (Biology with Physics stream) (Year 3)
• UXXX-AAB02 : BSc(Hons) Natural Sciences (Biology with Physics stream) with Study year abroad (Year 4)
• UXXX-AKB02 : BSc(Hons) Natural Sciences (Biology with Physics stream) with Year long work placement (Year 4)
• UXXX-AFB01 : BSc(Hons) Natural Sciences (Chemistry with Physics stream) (Year 3)
• UXXX-AAB02 : BSc(Hons) Natural Sciences (Chemistry with Physics stream) with Study year abroad (Year 4)
• UXXX-AKB02 : BSc(Hons) Natural Sciences (Chemistry with Physics stream) with Year long work placement (Year 4)
• UXXX-AFB01 : BSc(Hons) Natural Sciences (Physics with Biology stream) (Year 3)
• UXXX-AAB02 : BSc(Hons) Natural Sciences (Physics with Biology stream) with Study year abroad (Year 4)
• UXXX-AKB02 : BSc(Hons) Natural Sciences (Physics with Biology stream) with Year long work placement (Year 4)
• UXXX-AFB01 : BSc(Hons) Natural Sciences (Physics with Chemistry stream) (Year 3)
• UXXX-AAB02 : BSc(Hons) Natural Sciences (Physics with Chemistry stream) with Study year abroad (Year 4)
• UXXX-AKB02 : BSc(Hons) Natural Sciences (Physics with Chemistry stream) with Year long work placement (Year 4)
• UXXX-AFM01 : MSci(Hons) Natural Sciences (Biology with Physics stream) (Year 3)
• UXXX-AAM02 : MSci(Hons) Natural Sciences (Biology with Physics stream) with Study year abroad (Year 4)
• UXXX-AKM02 : MSci(Hons) Natural Sciences (Biology with Physics stream) with Professional Placement (Year 4)
• UXXX-AFM01 : MSci(Hons) Natural Sciences (Chemistry with Physics stream) (Year 3)
• UXXX-AAM02 : MSci(Hons) Natural Sciences (Chemistry with Physics stream) with Study year abroad (Year 4)
• UXXX-AKM02 : MSci(Hons) Natural Sciences (Chemistry with Physics stream) with Professional Placement (Year 4)
• UXXX-AFM01 : MSci(Hons) Natural Sciences (Physics with Biology stream) (Year 3)
• UXXX-AAM02 : MSci(Hons) Natural Sciences (Physics with Biology stream) with Study year abroad (Year 4)
• UXXX-AKM02 : MSci(Hons) Natural Sciences (Physics with Biology stream) with Professional Placement (Year 4)
• UXXX-AFM01 : MSci(Hons) Natural Sciences (Physics with Chemistry stream) (Year 3)
• UXXX-AAM02 : MSci(Hons) Natural Sciences (Physics with Chemistry stream) with Study year abroad (Year 4)
• UXXX-AKM02 : MSci(Hons) Natural Sciences (Physics with Chemistry stream) with Professional Placement (Year 4)

 Notes: This unit catalogue is applicable for the 2018/19 academic year only. Students continuing their studies into 2019/20 and beyond should not assume that this unit will be available in future years in the format displayed here for 2018/19. Programmes and units are subject to change in accordance with normal University procedures. Availability of units will be subject to constraints such as staff availability, minimum and maximum group sizes, and timetabling factors as well as a student's ability to meet any pre-requisite rules. Undergraduates: Find out more about these and other important University terms and conditions here. Postgraduates: Find out more about these and other important University terms and conditions here.