How can I evaluate an Simulink.data.Expression in a MATLAB script

5 vues (au cours des 30 derniers jours)
Karsten Gordon
Karsten Gordon le 15 Sep 2022
Commenté : checker le 3 Oct 2023
Hi all,
In my data dictionary, I have a Simulink.Parameter whose value is set as an expression:
Parameter with properties:
Value: slexpr("single(420*pi/180)")
CoderInfo: [1×1 Simulink.CoderInfo]
Description: '...'
DataType: 'single'
Min: 0
Max: 20
Unit: 'rad'
Complexity: 'real'
Dimensions: [1 1]
Now I would like to get the numeric value of the parameter within a script. So how can I evaluate the expression
slexpr("single(420*pi/180)")
to get
ans =
single
7.3304
Any hint would be greatly appreciated. Thank you very much.
  1 commentaire
checker
checker le 3 Oct 2023
Assuming you have a variable set equal to the expression
parmVal = slexpr("single(420*pi/180")
it will be of class type 'Simulink.data.Expression'
The value can be determined by the following
parmVal=eval(parmVal.ExpressionString)

Connectez-vous pour commenter.

Réponses (1)

Jeffrey Clark
Jeffrey Clark le 15 Sep 2022
@Karsten Gordon, Evaluate MATLAB expression in data dictionary section - MATLAB evalin (mathworks.com) or Evaluate MATLAB expression - MATLAB eval (mathworks.com). I don't have Simulink to try; to use the eval function you would have to use just what is in the quotes:"single(420*pi/180)"

Catégories

En savoir plus sur Data Type Identification dans Help Center et File Exchange

Tags

Produits


Version

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by