Building array with custom function
Show older comments
Hello,
I am facing a problem with building an array using a custom function.
I would like to transfer a task from the main script file to the function file. I have such a piece of script:
StageMain=0;
TStart=10;
TEnd=500;
TStep=0.001;
Tmag=1;
.
.
.
DataInput = ones(length(StageMain),8);
Tarray = ones(1,length(StageMain));
.
.
.
T=TStart;
while T<TEnd
T=T+TStart*StageMain;
StageMain=StageMain+TMag;
DataInput(StageMain,1) = double(T);
Tarray(1, StageMain) = double(T);
end
its job is to build (actually update) two arrays DataInput and Tarray. Now I am trying to put this in function file which also will give me two updated arrays.
function [DataInput, Tarray] = arraybuilder(TStart, TEnd, TStep, TMag, StageMain)
T=TStart;
while T<TEnd
T=T+TStep*StageMain;
StageMain=StageMain+TMag;
DataInput(StageMain,1) = double(T);
Tarray(1, StageMain) = double(T);
end
however, it only builds one vertical array that has double-length and the first part is filled with 0 and the second one with correct answers for DataInput
Thank you for any ideas.
5 Comments
I made the following function:
function [DataInput, Tarray] = arraybuilder(TStart, TEnd, TStep, TMag, StageMain)
T=TStart;
while T<TEnd
T=T+TStep*StageMain;
StageMain=StageMain+TMag;
DataInput(StageMain,1) = double(T);
Tarray(1, StageMain) = double(T);
end
and then called it from the commnad line with:
[X Y] = arraybuilder(10,500,.001,1,0)
and the answer shows that both X and Y are 991 non-zero elements, and X(i) == Y(i) for all i.
Mateusz Brzezinski
on 20 Jul 2020
when I run with
[X Y] = arraybuilder(3.372510000000000e+02,380,.001,1,0)
I get X and Y with 293 non-zero elements, and X(i) == Y(i) for all i.
I'm still not seeing the problem that you described.
Mateusz Brzezinski
on 20 Jul 2020
Roger J
on 20 Jul 2020
Good! We've all been there. Mark the answer accepted, if you can.
Accepted Answer
More Answers (0)
Categories
Find more on Financial Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!