How can I count the number of non virtual blocks in my model?
10 ビュー (過去 30 日間)
古いコメントを表示
採用された回答
Pramil
2025 年 2 月 3 日
編集済み: Pramil
2025 年 2 月 3 日
Hi Donald,
To count number of "Nonvirtual" blocks within a model, you can leverage the "find_system" function and its options through the following steps:
1. Get the list of model references within the model:
mdlRefs = find_mdlrefs('Your_Model_Name');
2. Load all the models within the list and run the following command for each model (change the index and model name for each run):
nvBlockCount(1) = length(find_system(mdlRefs{1}, 'LookUnderMasks', 'on', 'FollowLinks', 'on', 'Virtual', 'off'));
3. Sum the count provided from each model to get the total number of "Nonvirtual" blocks:
totalNVBlockCount = sum(nvBlockCount);
Note that you can also use the "cellfun" command as an alternative to Steps 2 and 3 to simplify this workflow:
totalNVBlockCount = sum(cellfun(@(mdlName) length(find_system(mdlName, 'LookUnderMasks', 'on', 'FollowLinks', 'on','Virtual', 'off')), mdlRefs));
You can find the documentation for "find_system" and "find_mdlrefs" for your reference in the following links:
Hope it helps.
0 件のコメント
その他の回答 (0 件)
参考
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!