COURSE OUTLINE    

KMU 255 - COMPUTER PROGRAMMING WITH MATLAB® 

FALL SEMESTER

 

INSTRUCTOR:

Dr. Selis ÖNEL | selis@hacettepe.edu.tr

 

JAVA SPECIALIST:  Erhan Şenlik| erhansnk@hacettepe.edu.tr

TEACHING ASSISTANT:

 Gonca Sağlam| gonca.s@hacettepe.edu.tr

 
COURSE GOALS: - Teach fundamentals of computer programming
- Enhance students' programming skills using the MATLAB environment to implement algorithms
- Teach the use of MATLAB as a tool (using built-in functions) for solving problems in science and engineering
 

COURSE MAIN TEXTBOOK:

Any programming book can be used to learn basic programming fundamentals. Matlab website and help documents are especially useful to learn the toolboxes and functions. The books written by C. Moler and  Attaway and are very useful textbooks for this course.  Yet, students have the option to choose any of the supplementary textbooks for the course. 

 

SUPPLEMENTARY TEXTBOOKS:

  • Kenneth C. Louden and Kenneth A. Lambert, Programming Languages: Principles and Practices, 3rd Edition. Course Technology, Cengage Learning, 2012, ISBN-13 978-1-111-52941-3

  • Daniel Kaplan, Introduction to Scientific Computation and Programming, 1st Edition, Cengage Learning, 2004, ISBN-10: 0534389139 ISBN-13: 9780534389130

  • Attaway, MATLAB: A Practical Introduction to Programming and Problem Solving, Elsevier Science, 2009

  • C. Moler, Numerical Computing with MATLAB®, Electronic edition: The MathWorks, Inc., Natick, MA, 2004, http://www.mathworks.com/moler. Print edition: SIAM, Philadelphia, 2004.http://ec-securehost.com/SIAM/ot87.html

  • If you have access to a computer at home, you are recommended to obtain a copy of MATLAB (student edition will be enough) for Windows:

  • MATLAB & Simulink Student Version Release 14, ISBN 0-9755787-2-3

  • MATLAB Student Version Release 13, ISBN 0-9672195-9-0

 

SCHEDULE:

Joint classes for KMU 255 sections 21 and 22
Tuesday.....................3 PM - 4.45 PM (Class D7)
Thursday....................1 PM - 3 PM (Computer Lab)

KMU 255 Office hours
Tuesday.....................2 PM - 2.45 PM

 
CONTENT:

Fundamental methodology and techniques for computer programming of numerical engineering problems.

Data acquisition tools for running and reading data from experiments and computational tools fro programming, data anlaysis, equation solving and plotting.

Fundamental principles of digital computing and the implications for algorithm accuracy and stability, error propagation and stability analysis.

 

OBJECTIVES:

Teach fundamentals of computer programming with application to:

- Java

- Matlab

Enhance students’ programming skills to create flowcharts and implement algorithms

Teach the use of MATLAB as a tool (using built-in functions) for solving problems in science and engineering

Increase the numerical problem solving and computational skills of engineering students

 

COURSE FORMAT:

The course will consist of classroom instruction including lectures using classical lecture style, power point slides, and simultaneous computer Java and Matlab applications via projection. Computer lab and additional tutorial hours will be held by the Java specialist and course assistant.

 

DATE OF MIDTERM:

1st Midterm: November 17

2nd Midterm: December 15

 

GRADING:

Quizes & Homeworks..............................................20-30%
Midterm I ............................................................15-20%
Midterm II............................................................15-20%
Final Exam ...........................................................40%
Total...................................................................100%

 

 

Course Outline (click here for detailed version)

Subject#

Topics

1

Pdf Slides

Course objectives, MATLAB® environment & programming

2

Pdf Slides

Introduction to Mathematical Modeling, Basis for Computing, Programming and Mathematical Modeling and Numerical Analysis

3

Pdf Slides

Introduction to Computer Programming with MATLAB®

MATLAB® Fundamentals

Creating and executing simple programs in MATLAB®

The difference between constants, variables and expressions

Performing simple manipulations of 1-dimensional arrays (vectors)

Creating flowcharts, working with algorithms, conditionals and loops

4

5

 

Midterm Exam

6

Pdf Slides

Working with algorithms, conditionals and "for" and "while" loops

7

Pdf Slides

Computer Numbers, Significant figures, Error analysis, Absolute error, Relative error, Chopping off versus Rounding off
8

9

Pdf Slides

Symbolic calculations with MATLAB®, Polynomials, Curvefitting using polynomials, Interpolation

10

  Midterm Exam
11

Pdf Slides

Using iterative techniques to solve systems of equations, Convergence, Babylonian method, Fixed point iteration
12

Pdf Slides

Using iterative techniques to solve systems of equations, Jacobi iteration, Parachutist Problem

13

Pdf Slides

Using substitutive iteration technique and graphical methods to solve systems of nonlinear equations (linearization of nonlinear equations into matrix form), Plotting and interpreting 2.5-D and 3-D graphs

14

  Final Exam