Set parameter of masked subsystem

2 visualizaciones (últimos 30 días)
Patrick el 12 de Jun. de 2023
Respondida: Pratheek el 19 de Jun. de 2023
I've the following problem. I've a masked system (let's call it A) which takes a parameter (parA) which I want to use to compute a variable (var) which will be a parameter (parB) of another masked system (B), which is a subsystem of A. (So in the end I want parB = var).
I've tried to achieve this by computing 'var' in the intialization code of mask A and then setting 'var' as value of 'parB' in mask B. However, when trying to simulate, it gives the error 'Failed to evaluate mask initialization commands.' because the variable 'var' does not exist. I assume this is because it first runs the initialization of mask B, which fails as 'var' is not available as the intialization of maks A has not run yet.
I was wondering if there's a way to get around this issue.

Respuestas (1)

Pratheek el 19 de Jun. de 2023
Hi Patrick,
This is because the variables are stored in different mask workspaces, so to avoid this problem save the variables(parA) of first subsystem(A) into the base workspace and then load them into the sub system(B) inside it, you can leverage the help of ''assignin" and "evalin" functions
Hope this helps you!


Más información sobre Simulink en Help Center y File Exchange.





Community Treasure Hunt

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

Start Hunting!

Translated by