bdroot causes problems in MATLAB 2017b

5 vues (au cours des 30 derniers jours)
Vamsinag Gunti
Vamsinag Gunti le 6 Nov 2018
Hi,
I have a script that makes use of bdroot multiple times to fetch the top level model. The script works absolutely fine in MATLAB 2015b. We recently migrated our project to MATLAB 2017b. The bdroot command fetchs me the top level model only the first time and there after outputs 'simulink'. Is this a bug in MATLAB 2017b or is there some new feature in this version that changes the bdroot in the background.
Thanks in advance.
Best regards, Vamsi

Réponse acceptée

Fangjun Jiang
Fangjun Jiang le 7 Nov 2018
Something may have changed from R2015b to R2017b but I would say that your usage of bdroot() for this purpose is not robust. "Simulink" is the opened Simulink library file name. bdroot without input argument could return any root level model name depending on which one is activated.
Use bdroot(block) or bdroot(BlockHandle) to return the root level model name of the selected block. Or, use ModelName=bdroot once when it is certain and pass the ModelName to other places.

Plus de réponses (0)

Catégories

En savoir plus sur Programmatic Model Editing dans Help Center et File Exchange

Produits


Version

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by