Functions
We are now going to create a few functions.
To make the first example easy I supply the text for you to copy and paste below. Select
File -> New -> M File to create a blank page and paste in this text:
function cost_to_destination = mypetrolcost(distance_to_destination)% this is the function equivalent of the % calculation we explored in matlab_03%cost_per_litre = 1.1;miles_per_litre = 5;cost_to_destination = distance_to_destination / miles_per_litre * cost_per_litre;endSave the file and give it *exactly the same name as the function*! This file must be called mypetrolcost.m or there will be loads of problems later.
Your function can now be executed from the command line like this:
>> mypetrolcost(100)ans = 22Notice that by creating and saving a function we have extended the language of Matlab - we have used Matlab to write a new capability for Matlab.
Here is another example we have seen from an earlier exercise.
To make this easy I also supply the text for you to copy and paste below. Select
File -> New -> M File to create a blank page and paste in this text:
function r = mygraph(x)y_1 = x.*x; % this gives us x squaredy_2 = x.*x.*x; % this gives us x cubedplot(x,y_1,'r'); % plot the x squared graphhold on; % hold the plot for a second lineplot(x,y_2,'g'); % plot x cubed%% some extra things added to the graphxlabel('x values');ylabel('y values');title('my first graph')legend({'x^2' 'x^3'});grid on;endSave the file and give it *exactly the same name as the function*! This file must be called mygraph.m
Your function can now be executed from the command line like this:
>> mygraph(100:1:200)