<< Chapter < Page | Chapter >> Page > |
MATLAB has a great on-line help system accessible using the help command. Typing
help<function>
will return text information about the chosen function. For example to get information about the built-infunction sum type:
help sum
To list the contents of a toolbox type help<toolbox>, e.g. to show all the functions of the signal processing toolbox enter
help signal processing
If you don't know the name of the function
but a suitable keyword use the
lookfor
followed by a keyword string, e.g.
lookfor 'discrete fourier'
To explore the extensive help system use the
"Help menu" or try the commands
helpdesk
or
demo
.
MATLAB uses matrices as the basic variable type. Scalars and vectors are special cases of matrices having size 1x1,1xN or Nx1. In MATLAB, there are a few conventions for entering data:
It is easy to create basic variables.
x = 1
(scalar)
y = [2 4 6 8 10]
(row vector)
z = [2; 4; 6; 8; 10]
(column vector)
A = [4 3 2 1 0; 1 3 5 7 9]
(2 x 5 matrix)
Regularly spaced values of a vector can be entered using the following compact notation
start:skip:end
A more compact way of entering variables than in Example 1 is shown here:
y= 2 : 2 : 10
A=[4:-1:0;1:2:9]
If the skip is omitted it will be set to 1, i.e., the following are equivalent
start:1:end
and
start:end
To create a string use the single quotation
mark " ' ", e.g. by entering
x = 'This is a string'
.
Indexing variables is straightforward. Given
a matrix M the element in the i'th row, j'th column is given by
M(i,j)
. For a vector v the i'th element is given by
v(i)
. Note that
the lowest allowed index in MATLAB is 1. This is in contrast withmany other programming languages (e.g. JAVA and C), as well as the
common notation used in signal processing, where indexing starts at0. The colon operator is also of great help when accessing specific
parts of matrices and vectors, as shown below.
This example shows the use of the colon operator for indexing matrices and vectors.
A(1,:)
returns the first row of the matrix A.
A(:,3)
returns the third column of the matrix A.
A(2,1:5)
returns the first five elements of the second row.
x(1:2:10)
returns the first five odd-indexed elements of the vector x.
MATLAB has built-in functions for a number of arithmetic operations and functions. Most of them arestraightforward to use. The Table below lists the some commonly used functions. Let x and y be scalars, M and N matrices.
MATLAB | |
---|---|
$xy$ |
x*y |
$x^{y}$ |
x^y |
$e^{x}$ |
exp(x) |
log( $x$ ) |
log10(x) |
ln( $x$ ) |
log(x) |
log2( $x$ ) |
log2(x) |
$MN$ |
M*N |
$M^{-1}$ |
inv(M) |
$M^{T}$ |
M' |
det( $M$ ) |
det(M) |
Elementwise operations, part I
Let
$A=\begin{pmatrix}1 & 1\\ 1 & 1\\ \end{pmatrix}$ .
Then
A^2
will return
$\mathrm{AA}=\begin{pmatrix}2 & 2\\ 2 & 2\\ \end{pmatrix}$ ,
while
A.^2
will return
$\begin{pmatrix}1^{2} & 1^{2}\\ 1^{2} & 1^{2}\\ \end{pmatrix}=\begin{pmatrix}1 & 1\\ 1 & 1\\ \end{pmatrix}$ .
Elementwise operations, part II
Given a vector x, and a vector y having elements
$y(n)=\frac{1}{\sin x(n)}$ .
This can be easily be done in MATLAB by typing
y=1./sin(x)
Note that using
/
in place of
./
would result in the (common) error
Matrix dimensions must agree
.
MATLAB has excellent support for complex
numbers with several built-in functions available. The imaginaryunit is denoted by
i
or (as preferred in electrical engineering)
j
.
To create complex variables
${z}_{1}=7+i$ and
${z}_{2}=2e^{(i\pi )}$ simply enter
z1 = 7 + j
and
z2 = 2*exp(j*pi)
The Table below gives an overview of the basic functions for manipulating complex numbers, where $z$ is a complex number.
MATLAB | |
---|---|
Re( $z$ ) |
real(z) |
Im( $z$ ) |
imag(z) |
$\left|z\right|$ |
abs(z) |
Angle( $z$ ) |
angle(z) |
$z^{*}$ |
conj(z) |
"..."
at the end of
the line to indicate that it continues on the next line.Splitting
$y=a+b+c$ over multiple lines.
y = a...
+ b...+ c;
Notification Switch
Would you like to follow the 'Engineering computation for power engineers' conversation and receive update notifications?