COMS W3101-2

Programming Languages: MATLAB

Call Number: 79542  

Points: 1

Day/Time:  Tu 10:30am-12:30pm 

Location:  227 Seeley W. Mudd Building

Notes:  START DATE: 3/2/10

             END DATE: 4/13/10

                 NO CLASS ON 3/16/10

 

Instructor: Michele Merler

Office:  624 CEPSR

Email:  mmerler@cs.columbia.edu

Office Hours: Thursday 12pm-2pm

 

TA : Daniel Miau

Office: Mudd 122A (TA room)

Email: dm2701@columbia.edu

Office Hours: Mon 10am-12pm

 

TA : Rohit Sethi

Office: Mudd 122A (TA room)

Email: rs2990@columbia.edu

Office Hours: Wed 3.30pm-5.30pm

Course Description

MATLAB® is a high-level language and interactive environment that allows to perform computationally intensive tasks to solve problems in Science and Engineering such as:

· Perform Matrix and Vector Operations

· Compute Complex Mathematical Functions

· Plotting and Visualization

· Perform Simulation and Prototyping

· The goal of this class is to provide an introduction to the MATLAB environment and language, in order to be able to perform the mentioned operations and easily learn how to deal with more complex ones

USEFUL LINKS

 

MATLAB Documentation from Mathworks

MATLAB File Exchange biggest MATLAB code sharing site 

Google Search MATLAB Educational websites

Blogs

Loren on the Art of MATLAB

Mike on the MATLAB Desktop

NEWS

 

12/03/09  Website is up

 

03/02/10 Homework 1 is out

 

03/09/10 HW1 solutions and Homework 2 are out

 

03/23/10 Homework 3 is out

 

03/24/10 HW2 solution is out

 

03/30/10 HW4 is out, HW3 and Quiz solutions are out

 

04/06/10 HW5 is out and HW4 solutions are out

 

04/13/10 HW solution is out, end of class!

Requirements

· CUNIX account, and access to courseworks for grades

· Access to MATLAB 7 or higher, there are computer labs on campus where you can use your cunix account to access MATLAB, or you can purchase a student copy from mathworks

· No book

· One class of programming experience (if you do not have programming experience, please check the correspondent 1000 level course)

· Basics of calculus and linear algebra

Syllabus (tentative)

 

Lecture 1March 2

· Introduction

· Data Structures (Variables, Vectors, Matrices)

· Types (int, double, single)

· Operators

· Basic Plotting

· Scripts

 

Lecture 2March 9

· Plotting (continued)

· Control flow (if_else, for, while, loops)

 

Lecture 3March 23

· I/O (from files, images, loading/saving variables)

· User input

· Advanced data structures (cell, struct)

· Debugging

· Functions

 

Lecture 4March 30

· Figures

· Images

· Videos

 

Lecture 5April 6            Exercises  groceries.txt

· Math and Linear algebra

· Solving equations, basic statistics

 

Lecture 6April 13

· Final Useful things

· Object Oriented Programming    Example

· GUI

· Simulink  & other Toolboxes

Homeworks

 

Instructions

· Due at beginning of class, no exceptions

· Put your code (.m files) and additional files in a single folder, name it youruni_hw_X and zip it

· Upload the folder to CourseWorks

· Bring a printout of your code to class

 

Files

· Homework 1                                                      solution

· Homework 2     surface.mat                               solution 

· Homework 3     Temperature.txt   grades.txt     solution

· Homework 4     flag.jpg                                     solution

· Homework 5                                                      solution

Quiz

· Quiz       solution