Info

This question is closed. Reopen it to edit or answer.

How to make this code as a function?

1 view (last 30 days)
R7 DR
R7 DR on 25 Mar 2015
Closed: MATLAB Answer Bot on 20 Aug 2021
Hi
I want to make the following code as a function. I want to call this code as function in another code to get the 'T' values.
[T_20]=xlsread('20.xlsx','sheet2','C2:C2243')
[alpha_20]=xlsread('20.xlsx','sheet2','F2:F12243')
for i=1:8
x(1)=0.1
x(2)=0.2
x(i+1)=x(i)+0.1
for j=2:2242
if x(i)>alpha_20(j)
X2_20(i)=alpha_20(j+1)
X1_20(i)=alpha_20(j)
Y2_20(i)=T_20(j+1)
Y1_20(i)=T_20(j)
end
end
T (i)=(((Y2_20(i)-Y1_20(i))/(X2_20(i)-X1_20(i)))*(x(i)-X1_20(i)))+Y1_20(i)
end
Thanks

Answers (1)

Star Strider
Star Strider on 25 Mar 2015
See the documentation for Function Basics to get you started.
You already know you want it to return ‘T’, so you need to define what (if any) inputs you want for your function
  8 Comments
R7 DR
R7 DR on 27 Mar 2015
Thanks. Its working. I did a mistake by calling the 'T' and 'D' separately in the main code.
I came up with one more doubt. I need to plot the graph between the 'T_a' (loaded from excel) and 'D'(calculated in the loop) for each file in a single figure. As we are not storing the data loaded from excel files, how to make the graph?
we must store the 'T_a' values to plot the graph (or) we have some other alternative approach?
Thanks
Star Strider
Star Strider on 27 Mar 2015
You can always return the ‘T_a’ values just by adding it to the returned values:
function [T,D,T_a] = ExcelRead(prefix)
and as before:
[T{k1},D{k1},T_a{k1}] = ExcelRead(prefix);

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!