## change a script to function

### Rick Verberne (view profile)

on 15 May 2018
Latest activity Answered by Aakash Deep

on 15 May 2018

### Aakash Deep (view profile)

Hi all,
this question is probably trivial to some of you but I'm wondering how to change my script to a function. So far, I've been using it just for myself and had no need for it. However, I've been asked to make it user friendly so colleague's can use it and decided it was a good moment to also learn to work with GUIDE. I've worked out the first part, loading information from excel. Second part will be to manipulate that data. One script I was using is the following and before going further with GUIDE I'd like to figure out how to make this into a function.
if true
Spectra = cell(nbins,2); %Generates an empty Cell for storing the different bin sizes and counts.
for x = 1:nbins %number of different bin sizes to be evaluated
for y = 1:round((length(PGE(:,1))-500)/x) %PGE is the .mat file containing the excel data
Spectra{x,1} = PGE(1:y,1).*x; %Creates x-axis for each each bin size
end
end
for x = 1:nbins
for y = 1:length(Spectra{x,1})
Spectra{x,2}(y,1) = sum(PGE(1+((y-1).*x):x*y,2)); %store Counts
end
end
save Spectra.mat
end
Rick

### Aakash Deep (view profile)

on 15 May 2018

Hey,
In order to create a function in MATLAB, add a couple of lines to your code
function [out_1, out_2, ....., out_n] = function_name(in_1, in_2, ....., in_n)
.
.
end
where,
out_k is your output variables from the function ( k = 1:n )
in_k is your input variables which you will pass into your function ( k = 1:n ), if you don't have any input parameters leave the parenthesis blank.
Note: function_name and filename should always be same, otherwise your code will throw an error.
For more details on functions in MATLAB and examples, please refer the following link, https://www.mathworks.com/help/matlab/ref/function.html
Hope this helps
Thanks,
Aakash Deep