Relational operators in Simscape Language
1 view (last 30 days)
Show older comments
Santiago Alfonso Ospina Botero
on 28 Feb 2023
Commented: Santiago Alfonso Ospina Botero
on 22 Mar 2023
Hi,
Im trying to create a custom component in Simscapa language. In particular I'm modelnig a GDT (Gas Discharge Tube) and for that I want to create a piece wise function, like the following,
equations
assert(Threshold_Voltage > 0)
v == p.v - n.v; % Voltage across between node p and node n
if (abs(v) < Threshold_Voltage)
i == v/Insulation_Resistance;
elseif (Threshold_Voltage <= abs(v) < Glow_Voltage)
i == v/Break2Glow_Resistance;
else
i == v/Glow_Resitance;
end
end
And when I try to download the code to the component the following messsage apears:

So basically inducates me to use this other notation ' (a==b)==c' etc. but I don'r really understand how they work...
¿Does anyone know how this works and have an idea on how to implement it?
0 Comments
Accepted Answer
Sabin
on 4 Mar 2023
In your case I would change the condition '(Threshold_Voltage <= abs(v) < Glow_Voltage)' into '(abs(v) >= Threshold_Voltage && abs(v) < Glow_Voltage)'. In this way there is no ambiguity and the code should compile. I hope this helps.
More Answers (0)
See Also
Categories
Find more on Composite Components 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!