Contents

Course Details

Course Code ENGG1811
Course Title Computing for Engineers
Convenor Chun Tung Chou
Lecturers Chun Tung Chou (Stream A); Ashesh Mahidadia (Stream B)
Admin Mei Cheng Whale
Classes Lectures (Stream A): Wed 13-15 (Science Th); Fri 13 (CLB 7)

Lectures (Stream B) : Tue 14-16 (CLB 2); Thu 17 (OMB 230)

Timetable for all classes
Consultations To be announced in Timetable for all classes
Units of Credit 6
Course Website http://cse.unsw.edu.au/~en1811/18s2/
Handbook Entry http://www.handbook.unsw.edu.au/undergraduate/courses/current/ENGG1811.html

Course Summary

Computing is an integral part of modern engineering. Computing is used in the design, automation, experimentation,monitoring, diagnosis, data collection, data analysis, visualisation and many other aspects of engineering. A very important skill for engineers is to be able to use computers to help them to solve problems efficiently. The aim of this course is to give an introduction to computing for engineers with an emphasis on computational problem solving. In order to realise this aim, the students will learn to use the Python programming language and some its many packages to solve problems. Since the course is designed primarily for engineers, the computing examples are often presented together with an engineering context to help the students to appreciate the applications of computing in engineering. This course also includes a minor component in Matlab and spreadsheet.

Assumed Knowledge

This course assumes that the students have taken HSC level Maths. No prior knowledge on computing is required.

Student Learning Outcomes

After completing this course, students should be able to:

  1. Design algorithms to solve computation problems
  2. Implement algorithms using the Python programming language
  3. Able to write Python programs to automate many different tasks
  4. Have some knowledge on using numerical computation packages of Matlab and Excel

The assessment are designed to assess your skills in solving problems and implementing your solution in a programming language.

This course contributes to the development of the following graduate capabilities:

Graduate Capability Acquired in
Scholars capable of independent and collaborative enquiry, rigorous in their analysis, critique and reflection, and able to innovate by applying their knowledge and skills to the solution of novel as well as routine problems Lectures,labs and assignments
Entrepreneurial leaders capable of initiating and embracing innovation and change, as well as engaging and enabling others to contribute to change Assignments
Professionals capable of ethical, self- directed practice and independent lifelong learning Labs and assignments
Global citizens who are culturally adept and capable of respecting diversity and acting in a socially just and responsible way -

Teaching Strategies

  • Lectures: introduce concepts and principles, demonstrate with example code, students working to solve problems
  • Lab Work: provides an opportunity for students to solve some well-defined problem in order to practice problem solving and programming skills
  • Assignments: provide opportunities for students to work on an extended programming work

Teaching Rationale

Problem solving and programming are practical skills that can be acquired through practice. The aim of the lecture is to introduce problem solving strategies and programming concepts. Examples will be used in the lecture to illustrate the concepts discussed. Students are encouraged to bring their laptop to the lectures so that they can work on the problem together.

Laboratory exercises are provided so that students can apply what they have learn in the lectures to solve problems. Surveys consistently rate lab classes as the most valuable learning experience in the course. This is because problem solving and programming skills can only be acquired by the students actually attempting, and perhaps sometimes agonising over, the problems.

Students are supported in various ways. Labs are supported by tutors and assistant tutors. Help sessions supported in tutors are run at various times in the week for students to drop in to ask questions. Additional help sessions will be run for assignments.

Student Conduct

The Student Code of Conduct ( Information , Policy ) sets out what the University expects from students as members of the UNSW community. As well as the learning, teaching and research environment, the University aims to provide an environment that enables students to achieve their full potential and to provide an experience consistent with the University's values and guiding principles. A condition of enrolment is that students inform themselves of the University's rules and policies affecting them, and conduct themselves accordingly.

In particular, students have the responsibility to observe standards of equity and respect in dealing with every member of the University community. This applies to all activities on UNSW premises and all external activities related to study and research. This includes behaviour in person as well as behaviour on social media, for example Facebook groups set up for the purpose of discussing UNSW courses or course work. Behaviour that is considered in breach of the Student Code Policy as discriminatory, sexually inappropriate, bullying, harassing, invading another's privacy or causing any person to fear for their personal safety is serious misconduct and can lead to severe penalties, including suspension or exclusion from UNSW.

If you have any concerns, you may raise them with your lecturer, or approach the School Ethics Officer , Grievance Officer , or one of the student representatives.

Plagiarism is defined as using the words or ideas of others and presenting them as your own. UNSW and CSE treat plagiarism as academic misconduct, which means that it carries penalties as severe as being excluded from further study at UNSW. There are several on-line sources to help you understand what plagiarism is and how it is dealt with at UNSW:

Make sure that you read and understand these. Ignorance is not accepted as an excuse for plagiarism. In particular, you are also responsible that your assignment files are not accessible by anyone but you by setting the correct permissions in your CSE directory and code repository, if using. Note also that plagiarism includes paying or asking another person to do a piece of work for you and then submitting it as your own work.

UNSW has an ongoing commitment to fostering a culture of learning informed by academic integrity. All UNSW staff and students have a responsibility to adhere to this principle of academic integrity. Plagiarism undermines academic integrity and is not tolerated at UNSW. Plagiarism at UNSW is defined as using the words or ideas of others and passing them off as your own.

If you haven't done so yet, please take the time to read the full text of

The pages below describe the policies and procedures in more detail:

You should also read the following page which describes your rights and responsibilities in the CSE context:

Assessment

Item Topics Due Marks Notes
Labs All topics Weeks 2-13
in your lab class
10% Labs in Weeks 2-12 are marked out of 3 marks
2 marks from tutor assessment of your lab work
1 mark for an on-line multiple choice question.

Lab 13 marked out of 3 marks.
Count the best of 10 labs.
Mid-term Weeks 1-4 (Lectures)
Weeks 2-5 (Labs)
Week 6 10% Mid-term will be in your lab class in Week 6
Assignment 1
Week 8 10%
Assignment 2
Week 12 10%
Final Exam All topics Exam period 60%

Labs : The lab assessment must be completed within the 2­ hour period in the designated week. To avoid tutor overload, you must be ready to have some part of the work ready for assessment 30 minutes before the end of the class. Any work presented after this time may not be able to be assessed by the tutor. Please note that at the time of marking your lab exercises, your tutor may ask you to solve other similar problems. You need to demonstrate that you are able to solve lab exercises and related problems, in order to receive any marks for your lab work. In other words, using someone else's lab solution is pointless!

Assignments are to be completed in your own time. To maximise the learning benefits from doing assignments, it is essential that you start work on assignments early. Do not leave your assignments until the last minute. If you submit an assignment late, the maximum available mark is reduced by an amount (usually 15%) per day that it is late. Assignments are submitted using a link from the class website. Submissions will not be accepted 5 days after the assignment deadline.

Calculations of final mark :

In normal circumstances you receive the sum of the component marks. 50 is a clear pass. However, if your exam mark is poor (less than one third or 20/60), your final mark is calculated using the formula

Final = 3.75 * Exam * Other /( Exam + Other )

where Exam is the raw exam mark out of 60 and Other is the sum of the other assessments, out of 40. This formula results in a mark that is less than 50.

Course Schedule

Week Lectures Notes
1 Course introduction. Introduction to Python.
Assignment and variables. Operators and Precedence.
Writing the first computer program.
The math library.
Before the lecture: Install Anaconda for Python 3.6 on your laptop.
Bring your laptop to the lectures.

No labs this week.
2 Data types. Control structure. Boolean. Software development.
Labs run from Week 2 to Week 13
3 Functions, lists, for-loop, list comprehension, plotting
-
4 List indexing and slicing. String processing and formatting.
List data processing using for-loops
-
5 While loops. Program testing and debugging.
Assignment 1 available.
6 Function arguments. Numpy (arrays and vectorization)
Mid-session in your lab class.
7 Simulation.
-
8 Algorithms. numerical precision. main()
Assignment 1 due. Assignment 2 available.
9 File input and file output. Numpy (Boolean selection, broadcast) -
10 Matlab
-
11 Spreadsheet
-
12 Introduction to Machine Learning. Revision.
Assignment 2 due.
13 (No lectures) Last Lab

Resources for Students

Lecture notes, sample programs, lab exercises will be available at the course web-site.

This course is customised for engineering students to learn problem solving and programming in an engineering context. It will also introduce some computing science concept. There is no textbook that covers all these topics. However, here is a selection of some general references:

We will provide additional resources on the class web page to cover other many useful topics.

Course Evaluation and Development

This course is evaluated each session using the myExperience system.

In this session, the lecturer will improve the lecture materials and to provide more practice problems for the students to work on.

Resource created Tuesday 17 July 2018, 04:05:28 PM, last modified Saturday 21 July 2018, 03:40:16 PM.


Back to top

ENGG1811 18s2 (Computing for Engineers ) is powered by WebCMS3
CRICOS Provider No. 00098G