Set parameter of masked subsystem
6 views (last 30 days)
Show older comments
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.
0 Comments
Answers (1)
Pratheek
on 19 Jun 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!
0 Comments
See Also
Categories
Find more on Subsystems in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!