Introduction to Engineering Computation and Software Development

Summer School, 2019

Staff

- Paul Denny
- Jim Greenslade (director, coordinator)

Calendar notes

Introduction to problem solving in engineering through the use of the software package MATLAB, and the programming language C.

Restriction: ENGSCI 233, 331

## Intended learning outcomes |
## Related graduate attributes |
## Related assessments |
---|---|---|

Introduction to high-level scripting: Ability to write and execute a simple, commented script program that takes user input and displays output. Define the role of variables in the context of script programs. Perform simple element-wise operations on 1 and 2D arrays. |
ENGA01: engineering knowledge (2) ENGK02: mathematical modelling (4) UOA_1: Disciplinary Knowledge and Practice (2) UOA_3: Solution Seeking (2) |
No related assessments |

Problem solving, functions and debugging: Application of a problem solving methodology to develop an algorithm, translate into pseudocode and then write and execute as a script, calling user written functions as appropriate. Application of debugging skills to locate and fix software bugs. |
ENGA02: problem analysis (1) ENGK02: mathematical modelling (4) ENGK03: abstraction and formulation (2) ENGK05: engineering design (1) UOA_1: Disciplinary Knowledge and Practice (2) UOA_2: Critical Thinking (1) UOA_3: Solution Seeking (2) |
No related assessments |

Controlling program flow: Application of logical operators (and, or, not, >, <, ==), conditional statements (if, elseif, else) and loops (for, while) within a script to control program flow. |
ENGK03: abstraction and formulation (2) UOA_3: Solution Seeking (2) |
No related assessments |

Graphics and image processing: Application of in-built functions for plotting 1D, 2D and 3D data, manipulating and processing images. |
ENGA01: engineering knowledge (2) ENGK02: mathematical modelling (4) UOA_1: Disciplinary Knowledge and Practice (2) UOA_3: Solution Seeking (2) |
No related assessments |

Reading and writing data: Application of in-built functions for string manipulation to simple problems. Application of in-built functions for ASCII file input/output. For a moderate sized dataset, compute simple summary statistics (min, max, mean, std, sum, etc). |
ENGA01: engineering knowledge (2) ENGK02: mathematical modelling (4) UOA_1: Disciplinary Knowledge and Practice (2) UOA_3: Solution Seeking (2) |
No related assessments |

Solving linear algebra problems and differential equations: Application of in-built functions to: solve linear algebra problems and first order differential equations. Write functions that take other functions as inputs. |
ENGA01: engineering knowledge (2) ENGA02: problem analysis (1) ENGK02: mathematical modelling (4) UOA_1: Disciplinary Knowledge and Practice (2) UOA_2: Critical Thinking (1) UOA_3: Solution Seeking (2) |
No related assessments |

An introduction to compiled languages: Comprehend how a low-level language is compiled to produce an executable. Comprehend why there are different data types, how they are declared and explain how this affects values assigned to them. Write, compile and execute a well commented computer program that performs a simple task. |
ENGA01: engineering knowledge (2) UOA_1: Disciplinary Knowledge and Practice (2) |
No related assessments |

Data structures: Create and manipulate structures and images via library routines in the context of a compiled language. |
ENGK02: mathematical modelling (4) ENGK03: abstraction and formulation (2) UOA_1: Disciplinary Knowledge and Practice (2) UOA_3: Solution Seeking (2) |
No related assessments |

Pointers, memory allocation and strings: Create and manipulate string arrays in compiled languages. Allocate/deallocate memory for arrays. Create, manipulate and destroy pointers for array manipulation. Explain the difference between a variable and a pointer to a variable, and the advantage of pointers when using functions. |
ENGA01: engineering knowledge (2) UOA_1: Disciplinary Knowledge and Practice (2) |
No related assessments |

Recursion: Application of compiled languages to write recursive functions. |
ENGA01: engineering knowledge (2) ENGA02: problem analysis (1) ENGK03: abstraction and formulation (2) UOA_1: Disciplinary Knowledge and Practice (2) UOA_2: Critical Thinking (1) UOA_3: Solution Seeking (2) |
No related assessments |

Define Software Engineering |
ENGA01: engineering knowledge (2) UOA_1: Disciplinary Knowledge and Practice (2) |
No related assessments |

Coursework

Labs (12% of final grade). There are weekly labs (twelve in total). Each lab is worth 1% of your final grade. See your course manual for details of lab material including how to earn your weekly 1%.

• Labs 1-6 cover Matlab programming.

• Labs 7-12 cover C programming.

Projects (24% of final grade). There are two large projects, each worth 12% of your final grade.

• Project 1 (on Matlab programming) is due Tuesday 29th January.

• Project 2 (on C programming) ) is due Monday 18th February

Tests (10% of final grade). T

• 30 minute MATLAB test held during the lab on Friday 25th of January.

• C Programming Exercises (CodeWrite) due Thursday 7th February.

Exam rules

A 10% rule applies when calculating your final grade.

Calculated average from coursework and exam with each being worth 50%. However, neither coursework nor exam may raise the average by more than 10%.

DO YOUR OWN COURSEWORK, otherwise you will not know what you are doing in the exam and you will fail.

Inclusive learning

Students are urged to discuss privately any impairment-related requirements face-to-face and/or in written form with the course convenor/lecturer and/or tutor.

Other assessment rules

No description given

Academic integrity

The University of Auckland will not tolerate cheating, or assisting others to cheat, and views cheating in coursework as a serious academic offence. The work that a student submits for grading must be the student's own work, reflecting his or her learning. Where work from other sources is used, it must be properly acknowledged and referenced. This requirement also applies to sources on the world-wide web. A student's assessed work may be reviewed against electronic source material using computerised detection mechanisms. Upon reasonable request, students may be required to provide an electronic version of their work for computerised review.

All students enrolled at the University of Auckland are required to complete a compulsory Academic Integrity course, usually in their first semester/year of enrolment. The University of Auckland’s full guidelines on procedures and penalties for academic dishonesty are available here.

This site intends to guide you through your chosen specialisation at the Faculty of Engineering. The semester links lets you view detailed course information for your chosen course. Please note that the structure displayed for your specialisation here will reflect what’s available over the upcoming semesters, but detailed information may be from a previous year.

All the information here is accurate at the time of publication, but you are are advised to additionally consult our official document, the University of Auckland Calendar, for accurate academic regulations, requirements, and policies.