Set parameter of masked subsystem

6 visualizzazioni (ultimi 30 giorni)
Patrick
Patrick il 12 Giu 2023
Risposto: Pratheek il 19 Giu 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.

Risposte (1)

Pratheek
Pratheek il 19 Giu 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!

Categorie

Scopri di più su Subsystems in Help Center e File Exchange

Tag

Prodotti


Release

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by