Relational operators in Simscape Language

2 views (last 30 days)
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?

Accepted Answer

Sabin
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)

Categories

Find more on Foundation and Custom Domains 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!