EEEN30150 Modelling and Simulation

In practical engineering it is very common for a professional design and/or analysis procedure to lead to a system of equations which must be solved. These equations may be linear or nonlinear. There may be a single equation or a system of several equations. The equations may be algebraic, transcendental or differential. In the latter case they may be ordinary or partial differential equations and may be subject to a variety of initial or boundary-value conditions. In short, appropriate modelling translates the problem of determining performance of an engineering system into the problem of solving equations. Very few of these equations permit simple, analytic solutions so that in practice one must resort to numerical methods to solve them and indeed this is what scientists and engineers have been forced to do for centuries at least. Efficient numerical algorithms for solving standard forms of equations were in many cases developed and employed long before the advent of the modern computer. The purpose of this module is to consider some of the better and most popular, but simpler algorithms for solving the kind of equations which most commonly present themselves in the practical application of mathematics. Illustrative examples are drawn from across the range of engineering disciplines. It is appropriate that any course on numerical methods should involve hands-on dealing with the problem of solving actual equations (i.e. equations which arise from actual physical and/or engineering problems). Accordingly the delivery and assessment of this module will require implementation of the various algorithms by the student for the purpose of solving real problems drawn from all branches of engineering. The adopted numerical platform will be m-files within MATLAB. As well as being widely-used, this platform permits focus upon algorithms, as distinct from code, and easy comparison of the student-written algorithmic performance with performance of professionally developed algorithms. Assignments will take the form of laboratories and minor projects. Students will select from a list drawn from a wide range of engineering and science problems and solve using the techniques presented in lectures and practiced in laboratories.

Outline: Solving nonlinear equations: Bisection, Regula Falsi, Newton-Raphson. Optimisation: Fermat condition, Newton’s method, Lagrange and KKT multipliers, curve fitting. Solving systems of linear equations: Gaussian elimination with pivoting, Gauss-Seidel. Solving ordinary differential equations, initial value problems: Euler, Runge-Kutta, Adams-Bashforth-Moulton. Numerical Quadrature: Newton-Cotes, Gauss Quadrature. Solving ordinary differential equations, boundary value problems: finite differences.

Learning Outcomes Rationale:

LO1: Many engineering, scientific, economic, etc problems give rise to the mathematical problem of solving a nonlinear equation or a system thereof. Few nonlinear equations permit analytic solution and one must perforce resort to numerical methods.

LO2: Likewise many engineering, scientific, economic, etc problems approximately give rise to the mathematical problem of solving a system of linear equations. Whereas such systems may be solved analytically the task exceeds human computation capability if the number of equations is large, as it commonly is in practice. In these circumstances we resort to numerical methods and seek great efficiency.

LO3: Very many engineering, scientific, economic, etc problems give rise to the mathematical problem of solving a system of first order ordinary differential equations subject to given initial conditions. The great majority of these equations cannot be solved analytically and numerical methods must be employed. Whereas tables of data or graphs can of course be used to present the results, 3D graphics and animation make for a far more accessible and engaging presentation. Whereas MATLAB cannot claim to be a state of the art it can produce somewhat acceptable 3D graphics and animation.

LO4: Boundary value problems describe some aspects of the physical world. In practice professional finite-element modelling packages are commonly employed, but a familiarity with the difficulties of numerical solution is valuable.

LO5: With the advance in available computing power it is now appropriate to present simulation results for physical systems in the form of 3D animations if possible, as this is how such systems manifest in reality.

LO6: Problems tend to be large and intimidating initially. It is critical to understand the methodology of breaking large problems down into collections of smaller, more manageable problems. Taking the view that one learns by doing the module offers opportunities to become familiar with this methodology by presenting problems where its application is required for their solution. As well as writing reports for the team minor project, team members give a multimedia presentation of their work, affording them an opportunity to practice creating and giving such presentations.

LO7: Assessment of MATLAB code created presses for the development of good coding practice again affording the opportunity to develop such good practice by doing.

Module Plan:

Section 1: Nonlinear equations

Week 1:
Lectures: 2 lectures on solving single and systems of nonlinear equations, covering bisection, Regula Falsi and Newton-Raphson algorithms.
Laboratories: offerings 1, 2 of Introduction to MATLAB, loops, function m-files, 3D graphics. 2 contemporaneous offerings of courtesy Introduction to MATLAB, general commands for MATLAB novices.

Week 2a:
Lectures: 1 lecture on solving single and systems of nonlinear equations, covering bisection, Regula Falsi and Newton-Raphson algorithms.
Laboratories: offering 3 of Introduction to MATLAB, loops, function m-files, 3D graphics. 1 contemporaneous offering of courtesy Introduction to MATLAB, general commands for MATLAB novices.

Week 2b:
Lectures: 1 lecture on examples of solving nonlinear equations and sample reporting for module assignments.
Laboratories: offering 4 of Introduction to MATLAB, loops, function m-files, 3D graphics. 1 contemporaneous offering of courtesy Introduction to MATLAB, general commands for MATLAB novices.

Section 2: Optimisation

Week 3:
Lectures: 2 lectures on optimisation with or without constraints, covering Fermat’s necessary condition, Newton’s method, Lagrange multipliers and KKT multipliers, curve fitting.
Laboratories: offerings 1, 2 of MS1: solving nonlinear equations.

Week 4a:
Lectures: 1 lecture on optimisation with or without constraints, covering Fermat’s necessary condition, Newton’s method, Lagrange multipliers and KKT multipliers, curve fitting.
Laboratories: offering 3 of MS1: solving nonlinear equations.

Section 3: Systems of linear equations

Week 4b:
Lectures: 1 lecture on Gaussian elimination with pivoting.
Laboratories: offering 4 of MS1: solving nonlinear equations.

Week 5:
Lectures: 2 lectures on Gaussian elimination with pivoting.
Minor Project (first session): offerings 1, 2 of MP1: static equations.

Week 6a:
Lectures: 1 lecture on Gaussian elimination with pivoting.
Minor Project (first session): offering 3 of MP1: static equations.

Week 6b:
Lectures: 1 lecture on iterative methods, Gauss-Seidel.
Minor Project (first session): offering 4 of MP1: static equations.

Section 4: Solving ordinary differential equations, initial value problems

Week 7:
Lectures: 2 lectures on solving ODEs, initial value problems, Euler, Runge-Kutta algorithms.
Minor Project (second session): offerings 1, 2 of MP1: static equations.

Week 8:
Lectures: 2 lectures on solving ODEs, initial value problems, multi-step, Adams-Bashforth-Moulton algorithms.
Minor Project (second session): offerings 3, 4 of MP1: static equations.

Week 9a:
Lectures: 1 lecture on solving ODEs, initial value problems, multi-step, Adams-Bashforth-Moulton algorithms.
Team Minor Project (first session): offering 1 of MP1: dynamic equations.

Week 9b:
Team Minor Project (first session): offering 2 of MP1: dynamic equations.

Section 6: Boundary Value Problems

Week 10a:
Lectures: 1 lecture on solving ordinary differential equations, boundary value problems, finite differences.
Team Minor Project (first session): offering 3 of MP2: dynamic equations.

Week 10b:
Lectures: 1 lecture wrap up and additional commentary upon reporting errors.
Team Minor Project (first session): offerings 4 of MP2: dynamic equations.

Week 11:
Team Minor Project (second session): offerings 1, 2 of MP2: dynamic equations.

Week 12:
Team Minor Project (second session): offerings 3, 4 of MP2: dynamic equations.

Show/hide contentOpenClose All

Curricular information is subject to change

Learning Outcomes:

On successful completion of this module the student will be able to:

1. Approximately numerically solve a given algebraic or transcendental equation or system of such equations, appreciate the level of approximation involved and understand some of the more common problems which can occur and how to remedy them. Leverage this ability to approximately numerically identify the local maxima and minima of functions, both subject to constraints and otherwise.

2. Efficiently numerically solve a system of linear equations and/or invert a matrix, even when the number of variables becomes relatively large. Have an appreciation of ill-conditioning and of sparsity.

3. Efficiently numerically solve a system of first order differential equations subject to given initial conditions. Be able to use this ability to determine the actual performance of a significant class of engineering systems. Again appreciate the approximation involved, the problems which can occur, how to identify them and what to do if they arise. Present results in a manner more engaging than a simple table or graph.

4. Approximately numerically solve boundary value problems. The algorithm presented is widely recognised as being the simplest, but not the best.

5. Produce a 3D graphical representation of an object and animate in MATLAB. Recognise the importance of quality of presentation of data/reports and improve personal effectiveness in this regard.

6. Break down an engineering problem into solvable sub-problems both as an individual and as part of a team. Make an engaging multi-media presentation of results.

7. Develop a MATLAB function m-file to a professional standard.

Student Effort Hours:
Student Effort Type Hours
Lectures

24

Laboratories

12

Specified Learning Activities

48

Autonomous Student Learning

36

Total

120

Approaches to Teaching and Learning:
Project-based continuous assessment. Emphasis on practical application.
Requirements, Exclusions and Recommendations
Learning Recommendations:

Differential and Integral Calculus to advanced level 1 or better.
Differential Equations to advanced level 1 or better.
Mechanics to advanced level 1 or better.
Matrix Theory to advanced level 1 or better.

Module Requisites and Incompatibles
Incompatibles:
BSEN30530 - Numerical Methods for Agricult

Assessment Strategy
Description Timing Open Book Exam Component Scale Must Pass Component % of Final Grade
Project: 2 minor project reports Throughout the Trimester n/a Graded No

76

Lab Report: 1 laboratory report Throughout the Trimester n/a Graded No

24

Carry forward of passed components
No

Resit In Terminal Exam
Autumn No
Feedback Strategy/Strategies

• Feedback individually to students, post-assessment
• Group/class feedback, post-assessment

How will my Feedback be Delivered?

Graded reports available for collection after full collection of reports graded. Associated grading scheme and common errors document available to class through Brightspace.

Timetabling information is displayed only for guidance purposes, relates to the current Academic Year only and is subject to change.

Spring

Lecture Offering 1 Week(s) - 19, 20, 21, 22, 23, 24, 25, 28, 29, 30, 31, 32 Thurs 09:00 - 09:50
Lecture Offering 1 Week(s) - 19, 20, 21, 22, 23, 24, 25, 28, 29, 30, 31, 32 Tues 09:00 - 09:50
Laboratory Offering 1 Week(s) - 19, 21, 23, 25, 29, 31 Tues 11:00 - 12:50
Laboratory Offering 2 Week(s) - 20, 22, 24, 28, 30, 32 Tues 11:00 - 12:50
Laboratory Offering 3 Week(s) - 19, 21, 23, 25, 29, 31 Thurs 11:00 - 12:50
Laboratory Offering 4 Week(s) - 20, 22, 24, 28, 30, 31 Mon 15:00 - 16:50
Spring