How to execute matrix variable values as iterations?
2 views (last 30 days)
Show older comments
In the GUI like in the first picture, there are 6 values
Enter the values. Press the 'loopExecute' button to execute the repeat statement as shown in the third picture.
The iteration statement is executed in a double manner and is operated by the assigned values as shown in the second picture.
But it doesn't work. The operating principle I want is as follows.
For example, if 'Seed' has a step of 0.5 from 2 to 7, the values of 2, 2.5, 3, 3.5... 6.5, and 7 are assigned to 'Channel_Seed.txt', and the exe file reads the values in order to perform the program.
I need your help.
4 Comments
Voss
on 1 Jun 2022
Edited: Voss
on 1 Jun 2022
function pushbutton_loopExecute_Callback(hObject, eventdata, handles)
global StartSeed;
global StopSeed;
global StepSeed;
global StartEbN0;
global StopEbN0;
global StepEbN0;
for Channel_Seed = [StartSeed:StepSeed:StopSeed]
for Channel_EbN0 = [StartEbN0:StepEbN0:StopEbN0]
writematrix(Channel_Seed);
type 'Channel_Seed.txt';
writematrix(Channel_EbN0)
type 'Channel_EbN0,txt';
system('"Decoding.exe" arg0 arg1');
systme('"DeModulation.exe" arg0 arg1');
end
end
Voss
on 1 Jun 2022
Edited: Voss
on 1 Jun 2022
@건희 이: I think @Jan was asking you to explain what you mean when you say, "it doesn't work", i.e., How is the behavior you see different than what you hope to see? You've given a description of how it should work, so now we know that much, but what do you actually observe when you run the code?
By the way, if the exe expects a file called ch.txt, then you better create that file in your loop (instead of creating Channel_Seed.txt):
writematrix(Channel_Seed,'ch.txt');
(and probably you'd want to put that file in the same directory where the exe is, not in MATLAB's working directory.)
Answers (0)
See Also
Categories
Find more on Environment and Settings 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!