Introduction To Programming in Matlab: - M-File Scripts - M-File Functions
Introduction To Programming in Matlab: - M-File Scripts - M-File Functions
Chapter 4
Introduction to programming in
MATLAB
4.1 Introduction
So far in these lab sessions, all the commands were executed in the Command Window.
The problem is that the commands entered in the Command Window cannot be saved
and executed again for several times. Therefore, a different way of executing repeatedly
commands with MATLAB is:
If needed, corrections or changes can be made to the commands in the file. The files that
are used for this purpose are called script files or scripts for short.
This section covers the following topics:
• M-File Scripts
• M-File Functions
1
Lecture 6
4.2.1 Examples
Here are two simple scripts.
Example 1
3x + 3y + 4z
2x + 3y + 3z
Find the solution x to the system of equations.
Solution:
A = [1 2 3; 3 3 4; 2 3 3];
b = [1; 1; 2];
x = A\b
>> example1
x =
-0.5000
1.5000
-0.5000
When execution completes, the variables (A, b, and x) remain in the workspace. To see a
listing of them, enter whos at the command prompt.
Note: The MATLAB editor is both a text editor specialized for creating M-files and a
graphical MATLAB debugger. The MATLAB editor has numerous menus for tasks such as
saving, viewing, and debugging. Because it performs some simple checks and also uses color
to differentiate between various elements of codes, this text editor is recommended as the
tool of choice for writing and editing M-files.
There is another way to open the editor:
2
Lecture 6
>> edit
or
>> edit filename.m
to open filename.m.
Example 2
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’) axis([0 2*pi -3
3])
• Run the file by typing example2 in the Command Window.
3
Lecture 6
f = prod(1:n); (4)
The first line of a function M-file starts with the keyword function. It gives the
function name and order of arguments. In the case of function factorial, there
are up to one output argument and one input argument. Table 4.1 summarizes
the M-file function.
As an example, for n = 5, the result is,
>> f =
factorial(5
)f =
120
Table 4.1: Anatomy of a M-File function
Both functions and scripts can have all of these parts, except for the function
definition line which applies to function only.
4
Lecture 6
5
Lecture 6
Function file can have none, one, or several output arguments. Table 4.3
illustrates some possible combinations of input and output arguments.
We have already seen the two first cases. Here, we will focus our attention on the
third one. In this case, the variable is defined in the script file. When the file is
executed, the user is prompted to assign a value to the variable in the command
prompt. This is done by using the input command. Here is an example.
The following shows the command prompt when this script file (saved as
example3) is executed.
>> example3
>> Enter the points scored in the first game 15
>> Enter the points scored in the second game 23
>> Enter the points scored in the third game 10
average =
16
The input command can also be used to assign string to a variable. For more
information, see MATLAB documentation.
A typical example of M-file function programming can be found in a recent
paper which related to the solution of the ordinary differential equation (ODE)
[12].
Table 4.4: di
. Simple to use.
. Provide limited control over the appearance of output