introduction to matlab
Download
Skip this Video
Download Presentation
Introduction to MATLAB

Loading in 2 Seconds...

play fullscreen
1 / 45

Introduction to MATLAB - PowerPoint PPT Presentation


  • 84 Views
  • Uploaded on

Introduction to MATLAB. Zongqiang Liao Research Computing Group UNC-Chapel Hill. Purpose. This course is an introductory level course for beginners . The purpose of this course is to introduce you to some of the basic commands and features of MATLAB. Course agenda. Introduction

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Introduction to MATLAB' - chogan


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
introduction to matlab

Introduction to MATLAB

Zongqiang Liao

Research Computing Group

UNC-Chapel Hill

purpose
Purpose
  • This course is an introductory level course for beginners.
  • The purpose of this course is to introduce you to some of the basiccommands and features of MATLAB.
course agenda
Course agenda
  • Introduction
  • Getting started
  • Mathematical functions
  • Matrix generation
  • Reading and writing data files
  • Basic plotting
  • Basic programming
introduction
Introduction
  • The name MATLAB stands for MATrix LABoratory
    • It is good at dealing with matrices
    • Vendor’s website: http//:www.mathworks.com
  • Advantages of MATLAB
    • Easiness of use
    • Powerful build-in routines and toolboxes
    • Good visualization of results
    • Popularity in both academia and industry
  • Disadvantage of MATLAB
    • Can be slow
getting started
Getting started
  • MATLAB desktop
    • The Command Window
    • The Command History
    • The Workspace
    • The Current Directory
    • The Help Browser
    • The Start Button
getting started1
Getting started
  • Using MATLAB as a calculator

>> pi

ans =

3.1416

More examples:

>> sin(pi/4)

>> 2^(log(4))

>> sqrt(9)

getting started2
Getting started
  • Assign values to output variables

>> x=5

x=

5

>> y = \'Bob\'

y =

Bob

getting started3
Getting started
  • Suppressing output
    • You can suppress the numerical output by putting a semicolon (;) at the end of the line

>> t=pi/3

>> u=sin(t)/cos(t);

>> v= u- tan(t);

  • Case sensitive
    • Example: “time” and “Time” are different variables

>> time=61;

>> Time=61;

getting started4
Getting started
  • Managing the workspace
    • The results of one problem may have an effect on the next one
    • Issue a clear command at the start of each new independent calculation

>> clear t

or

>> clear all

getting started5
Getting started
  • Miscellaneous commands
    • To clear the Command Window

>> clc

    • To abort a MATLAB computation

ctrl-C

    • To continue a line

    • To recall previous commands
getting started6
Getting started
  • Getting help
    • Use help to request info on a specific function

>> help sqrt

    • Use doc function to open the on-line version of the help menu

>> doc plot

    • Use lookfor to find function by keywords

>> lookfor regression

mathematical functions
Mathematical functions
  • Lists of build-in mathematical functions
    • Elementary functions

>> help elfun

    • Special functions

>> help specfun

    • Such as

sin(x), cos(x), tan(x), ex, ln(x)

mathematical functions1
Mathematical functions
  • Example 1

Calculate z=e-asin(x)+10 for a=5, x=2, y=8

>> a=5; x=2; y=8;

>> z=exp(-a)*sin(x)+10*sqrt(y)

z=

28.2904

  • Example 2

log(142), log10(142)

matrix generation
Matrix generation
  • The name MATLAB is taken from ”MATrix LABoratory.” It is good at dealing with matrices.
  • Actually all variables in MATLAB are matrices.
    • Scalars are 1-by-1 matrices
    • vectors are N-by-1 (or 1-by-N) matrices.
    • You can see this by executing

>> size(x)

matrix generation1
Matrix generation
  • Entering a matrix
    • Begin with a square bracket, [
    • Separate elements in a row with spaces or commas (,)
    • Use a semicolon (;) to separate rows
    • End the matrix with another square bracket, ]
matrix generation2
Matrix generation
  • Entering a matrix: A typical example

>> A=[1 2 3; 4 5 6; 7 8 9]

>> A=

1 2 3

4 5 6

7 8 9

matrix generation3
Matrix generation
  • Matrix indexing
    • View a particular element in a matrix
    • For example, A(1,3) is an element of first row and third column

>>A(1,3)

>>ans =

3

matrix generation4
Matrix generation
  • Colon operator in a matrix
    • Colon operator is very useful in the usage of MATLAB
    • For example, A(m:n,k:l) specifies portions of a matrix A: rows m to n and column k to l.
    • Examples:

A(2:3, 2:3)

A(2, :)

A(2:end, :)

matrix generation5
Matrix generation
  • Transposing a matrix

The transposing operation is a single quote (’)

>>A’

  • Concatenating matrices

Matrices can be made up of sub-matrices

>>B= [A 10*A; -A [1 0 0; 0 1 0; 0 0 1]]

matrix generation6
Matrix generation
  • Generating vectors: colon operator
    • Suppose we want to enter a vector x consisting of points (0, 0.1, 0.2, 0.3,…,5)

>>x=0:0.1:5;

    • All the elements in between 0 and 5 increase by one-tenth
matrix generation7
Matrix generation
  • Elementary matrix generators
    • eye(m,n)
    • eye(n)
    • zeros(m,n)
    • ones(m,n)
    • diag(A)
    • rand(m,n)
    • randn(m,n)
    • logspace(a,b,n)
  • For a complete list of elementary matrices

>>help elmat

>>doc elmat

reading and writing data files
Reading and writing data files
  • Save command
    • Example 1, save all variables in the workspace into a binary file:

>> x = [1 3 -4];

>> y = [2 -1 7];

>> z = [3 2 3];

>> save Filename.mat

    • Save only certain variables by specifying the variable names after the file name

>> save Filename.mat x y

slide23

Save command

Example 2, save variables into ASCII data file

>> save Filename.dat x y –ascii

or

>> save Filename.txt x y –ascii

Reading and writing data files

slide24

Reading and writing data files

  • load command
    • The data can be read back with the load command

>> load Filename.mat

    • Load only some of the variables into memory

>> load Filename.mat x

    • Load the ASCII data file back into memory

>> load Filename.dat -ascii

slide25

Reading and writing data files

  • The textread function
    • The load command assumes all of data is of a single type
    • The textread function is more flexible, it is designed to read ASCII files where each column can be of a different type
    • The command is:

>> [A,B,C,...] = textread(filename, format, n);

slide26

Reading and writing data files

  • The textread function
    • For example, if a text file “mydata.dat” contains the following lines:

tommy 32 male 78.8

sandy 3 female 88.2

alex 27 male 44.4

saul 11 male 99.6

    • The command is:

>> [name,age,gender,score] = textread(‘mydata.dat’, ‘%s %d %s %f’, 4);

slide27

The xlsread function

The xlsread function is to get data and text from a spreadsheet in an Excel workbook.

The basic command is:

>> d=xlsread(‘datafile.xls’)

Reading and writing data files

basic plotting
Basic plotting
  • A simple line plot
    • To plot the function y=sin(x) on the interval

[0, 2 ]

>>x=0:pi/100:2*pi;

>>y=sin(x);

>>plot(x,y)

>>xlabel (‘x=0:2\pi’);

>>ylabel (‘Sine of x’);

>>title (‘Plot of the Sine function’);

basic plotting1
Basic plotting
  • Plotting elementary functions
basic plotting2
Basic plotting
  • Multiple data sets in one plot
    • Several graphs may be drawn on the same figure
    • For example, plot three related function of x: y1=2cos(x), y2=cos(x), and y3=0.5cos(x), on the interval [0, 2 ]
basic plotting3
Basic plotting
  • Multiple data sets in one plot

>> x = 0:pi/100:2*pi;

>> y1 = 2*cos(x);

>> y2 = cos(x);

>> y3 = 0.5*cos(x);

>> plot(x,y1,‘--’,x,y2,‘-’,x,y3,‘:’)

>> xlabel(‘0 \leq x \leq 2\pi’)

>> ylabel(‘Cosine functions’)

>> legend(‘2*cos(x)’,‘cos(x)’,‘0.5*cos(x)’)

>> title(‘Typical example of multiple plots’)

basic plotting4
Basic plotting
  • Multiple data sets in one plot
basic plotting5
Basic plotting
  • Subplot
    • The graphic window can be split into an m*n array of small windows.
    • The windows are counted 1 to mn row-wise, starting from the top left
    • For example, plot three related function of x: y1=sin(3 x), y2=cos(3 x), y3=sin(6 x), y4=cos(6 x), on the interval [0, 1]
basic plotting6
Basic plotting
  • Subplot

>> x = 0:1/100:1;

>> y1 = sin(3*pi*x);

>> y2 = cos(3*pi*x);

>> y3 = sin(6*pi*x);

>> y4 = cos(6*pi*x);

>> title(‘Typical example of subplots’)

>> subplot(2,2,1), plot(x,y1)

>> xlabel(‘0 \leq x \leq 1’), ylabel(‘sin(3 \pi x)’)

>> subplot(2,2,2), plot(x,y2)

>> xlabel(‘0 \leq x \leq 1’), ylabel(‘cos(3 \pi x)’)

>> subplot(2,2,3), plot(x,y3)

>> xlabel(‘0 \leq x \leq 1’), ylabel(‘sin(6 \pi x)’)

>> subplot(2,2,4), plot(x,y4)

>> xlabel(‘0 \leq x \leq 1’), ylabel(‘cos(6 \pi x)’)

programming in matlab
Programming in MATLAB
  • M-File scripts
    • In order to repeat any calculation and/or make any adjustments, it is create a file with a list of commands.
    • “File New  M-file”
    • For example, put the commands for plotting soil temperature into a file called scriptexample.m
programming in matlab1
Programming in MATLAB
  • M-File scripts
    • Enter the following statements in the file

load \'soilT.dat\';

time=soilT(:,1);

soil_temp_mor=soilT(:,2);

soil_temp_aft=soilT(:,3);

plot(time,soil_temp_mor,\'--\',time,soil_temp_aft,\'-\');

xlabel(\'Time\');

ylabel(\'Soil temperature\');

legend(\'Morning\',\'Afternoon\');

title(\'Soil Temperature\');

    • Save and name the file, scriptexample.m

Note: the first character of the filename must be a letter

programming in matlab2
Programming in MATLAB
  • M-File scripts
    • Run the file
programming in matlab3
Programming in MATLAB
  • M-File scripts
    • MATLAB treats anything that appears after the % on a line as comments and these line will be ignored when the file runs

% -------------------------------------------------------

% scriptexample.m is to display soil temperature in the morning and

% the afternoon.

% -------------------------------------------------------

programming in matlab4
Programming in MATLAB
  • M-File functions
    • Functions are routines that are general and applicable to many problems.
    • To define a MATLAB function:
      • Decide a name for the function, making sure that it does not conflict a name that is already used by MATLAB.
      • Document the function
      • The first command line of the file must have this format:

function[list of outputs]=functionname(list of inputs)

…….

      • Save the function as a M-file
programming in matlab5
Programming in MATLAB
  • M-File functions
    • Consider an example to plot the piecewise defined function:
programming in matlab6
Programming in MATLAB
  • M-File functions
    • It is convenient to have a separate file which can do a specific calculation.

function [F]= eff(x)

% Function to calculate values

% Input x

% Output F

for i=1:length(x)

if x(i)<0.5

F(i)=x(i)^2;

else

F(i)=0.25;

end

end

programming in matlab7
Programming in MATLAB
  • M-File functions
    • To evaluate this function, a main program is needed. This main program provides input arguments

% Main program, use function: eff.m

x=-1:0.01:1;

plot(x,eff(x));

grid

xlabel(\'x\');

ylabel(\'F\');

title(\'The Piecewise Defined Function:\');

programming in matlab8
Programming in MATLAB

M-File functions

Run the main file

questions and comments
Questions and Comments?
  • For assistance with MATLAB, please contact the Research Computing Group:
ad