MATLAB HINTS - HOMEWORK 1
M. Nelson  Spring 2004

New Matlab Commands

(to get more info, type 'help <cmd>' at the matlab prompt)
arrays
a(i) is the ith element of a vector;
a(i,j) is element (i,j) of a 2-D matrix
Matlab matrices can have more than 2 dimensions.
Matlab indexing is 1-based, not 0-based like some other languages, so
the first element is a(1), not a(0).
axis In HW0 we discovered that
axis([xmin xmax ymin ymax])
sets scaling for the x- and y-axes.

Here we show some addition things the 'axis' command can do:
axis equal  sets the aspect ratio so that equal tick mark
increments on the x-,y- and z-axis are equal in size.
axis square  makes the current axis box square in size.
axis normal  restores the current axis box to full size and
removes any restrictions on the scaling of the units.
This undoes the effects of  axis square and axis equal.
axis off  turns off all axis labeling, tick marks and background.
axis on  turns axis labeling, tick marks and background back on.
`fix`
fix(x) rounds x to the nearest integer towards zero.
for/end
repeat statements a specific number of times
for i = 1:N
a(i) = sqrt(i);
end
if/else/end
The general form of the if statement is

if  expression
statements
elseif  expression
statements
else
statements
end

The statements are executed if the real part of the expression has all non-zero elements. The else and elseif parts are optional. The expressions oftent contain relational operators, such as <, <=, >, >=, ==, and ~=.
`length`
length(x) returns the length of vector x.  It is equivalent to max(size(x)) for non-empty arrays and 0 for empty ones.
max
For vectors, max(x)  is the largest element in x
For matrices, max(x) is a row vector containing the maximum element from each column of x.
min
For vectors, min(x)  is the smallest element in x
For matrices, min(x) is a row vector containing the minimum element from each column of x.
num2str
txt = num2str(x) converts the variable x into a string representation txt
with about 4 digits and an exponent if required.  This is useful for
labeling plots with the title, xlabel, ylabel and text commands.
rand
Uniformly distributed random numbers on the interval (0.0,1.0).
rand is a single random number
rand(m,1)  is an m-by-1 column vector with m random entries
rand(m,n)  is an m-by-n matrix with m x n random entries.

rand('state',0)  resets the generator to its initial state.
relop
relational operators
 < less than <= less than or equal to > greater than >= greater than or equal to == equal to ~= not equal & logical AND | logical OR ~ logical NOT

Example:
if ( (v(i) > thresh) & (t >= tstart) & (t < tstop) )
statements
end
size
[m, n] = size(x)  for vector/matrix x, returns the number of rows m and columns n as separate output variables.
d = size(x) returns the size as a two-element vector d = [m, m]
`text`
text(x, y, 'string') adds the text in the quotes to location (x,y) on the current axes, where (x,y) is in units from the current plot.
`who`
who lists the variables in the current workspace
`whos`
`  `