What Does the Symbolic Math Toolbox Mean by 0 < s When s is Complex?

4 views (last 30 days)
Paul on 25 Feb 2024
Commented: John D'Errico on 25 Feb 2024
syms s
syms t real
f = int(exp(-s*t),t,-inf,0)
f =
What does that first condition mean insofar as s is complex?
Paul on 25 Feb 2024

John D'Errico on 25 Feb 2024
Edited: John D'Errico on 25 Feb 2024
Just test it yourself. :) Admittedly, it may not have been obvious to perform this test. But we can use it to learn how MATLAB sees that comparison.
s = sym([0, 1, -1, i, -i, 1+i, 1-i, -1+i, -1-i])
s =
s > 0
ans =
As you can see, a comparison with an inequality applies to the real part of a complex number. I do see that one of those cases in your question showed real(s)<0 as a comparison, but that would still be equivalent as far as MATLAB is concerned to s<0.
Paul on 25 Feb 2024
I think I was thrown off because the first term in the second was written with 0 < real(s), so why wouldn't the first case be written as 0 < real(s)? That's a rhetorical question.
And I've never seen that notation 0 < s -> 0 < real(s). Seems weird to me.
BUT, it is documented: lt (I should have checked that first, though not as clearly as it could be), which then brings into question why that first condition on the second case is written the way it is.
John D'Errico on 25 Feb 2024
Sometimes the symbolic TB does mysterious things. :)
It is confusing that real(s)<0 and s<0 are in fact the same thing as far as the STB is concerned, yet we see both of those in different paths in the same result in your example. I assume they were generated by different pieces of code, possibly involving different people in the coding.

Categories

Find more on Conversion Between Symbolic and Numeric in Help Center and File Exchange

R2023b

Community Treasure Hunt

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

Start Hunting!