Nested for loops using vectorization in MATLAB

14 ビュー (過去 30 日間)
Ahmad Lakhani
Ahmad Lakhani 2017 年 9 月 22 日
編集済み: Ahmad Lakhani 2017 年 9 月 22 日
I currently have two national instrument devices hooked up to MATLAB and have this nested for loop:
for i=1: 5
removeChannel(session, 7)
addAnalogInputChannel(session, 'cDAQ1Mod8', ['ai' num2str(i)], 'Voltage');
for j=1: 5
signal = [in(i,:) out(j,:)];
outputSingleScan(session, signal);
measurements(6-j,6-i) = session.inputSingleScan;
end
end
Basically what this does is removes the last channel in the session and adds a new one from the DAQ depending on the iteration. A signal is then sent from the NI USB device and then another measurement is read from the DAQ. How do I use vectorization for this nested for loop?
  3 件のコメント
Ahmad Lakhani
Ahmad Lakhani 2017 年 9 月 22 日
編集済み: Ahmad Lakhani 2017 年 9 月 22 日
@DonaldLee outputSingleScan is a Matlab function. the first argument is the session and the second argument it takes is a row vector. The function takes the voltage measurement from the DAQ.
Yeah I need it vectorized because it is too slow. My goal here is to see whether or not it makes a difference for my code. Thanks for the help with the if statements.
OCDER
OCDER 2017 年 9 月 22 日
Oh, I see. I don't have the Data Acquisition Toolbox, so hopefully one of the pros will stop by to lend a help. Also, feel free to edit the question with the simpler code to make it easy on their eyes :)

サインインしてコメントする。

回答 (0 件)

カテゴリ

Help Center および File ExchangeInstrument Control Toolbox についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by