matlab values returned by getparam ara all considered as string
4 ビュー (過去 30 日間)
古いコメントを表示
I have a simulink model from which i import the parameters value in my workspace. Then i want to check if they are either numeric or not so i use the isnumeric function but it says to me that none of the parameters value are numeric because with the get_param any number is considered as a string. So if anyone know of a way to acces the value simulink parameters other than get_param it will be helpfull.
2 件のコメント
Fangjun Jiang
2022 年 10 月 28 日
編集済み: Fangjun Jiang
2022 年 10 月 28 日
I am curious what is the purpose of your isnumeric() call. Imagine the gain value of the Gain block is '1.1', or 'MyGain', where 'MyGain' is a variable in the workspace. What do you expect get_param('GainBlock','gain') to return to you and what is your next step?
If you state your need or task, there might be a different way.
採用された回答
Walter Roberson
2022 年 11 月 2 日
No, get_param() is the only documented method to retrieve parameters.
Parameter values are stored as character vectors in the model files, both .mdl and .slx files.
It might be the case that when the model is run, that the acceleration phase converts the text to double precision values internally. You can see at https://www.mathworks.com/help/slcompiler/ref/simulink.compiler.modifyparameters.html that for modifying variables that the new values are specified as floating point, not as character vectors, and you can see in the example at https://www.mathworks.com/help/slcompiler/ref/simulink.compiler.gettunablevariables.html that the current value of the tunable variable is floating point rather than character vectors. But at least in that section, there is no simulink.compiler.getparameter function or similar -- the user interface for getting parameters from a model is all character vector.
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Interactive Model Editing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!