Use set_param () to change the value of one parameter of multiple blocks without using a for-loop
조회 수: 4 (최근 30일)
이전 댓글 표시
Is there any alternative to this code?
v = find_system(model,'BlockType','Constant')
for k = 1:length(v)
set_param(v{k},'Value','0')
end
I'm working with a very large model and this code is very inefficient (more than 1 hour).
I would like to avoid the use of the for-loop, setting all the values at the same time. Is it possible?
댓글 수: 0
답변 (1개)
Monika Jaskolka
2017년 12월 7일
The only alternative that I am aware of is using arrayfun like so:
arrayfun(@(x) set_param(v, 'Value', '0'), v)
However, arrayfun is slower than a for loop (see https://www.mathworks.com/matlabcentral/answers/42335-array-cellfun-vs-for-loop).
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Programmatic Model Editing에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!