Special Plots On 2D Plot Bug

Special Plots On 2D Plot Bug - Special Plots do not appear when using "if...else" domain argument - Messages

#1 Posted: 3/21/2022 12:00:29 PM
Mr. Whiskers

Mr. Whiskers

0 likes in 6 posts.

Group: User

I have found a low priority issue where special plots (e.g. text shown on the 2D plot) do not appear on the 2D plot when using an "if...else" domain definition. The Special Plots do show up if I use boolean domain definitions, however.

I have attached a sample file here that should make it clear.

I also tried submitting this to the bug tracker, but it appears I do not have the privileges to log into the bug tracker system.

Thank you!

SpecialPlotsBug.sm (8 KiB) downloaded 134 time(s).
#2 Posted: 3/21/2022 2:23:30 PM
Jean Giraud

Jean Giraud

983 likes in 6,866 posts.

Group: User

If you declare the system is exact Bolean,
set it exact from the onset plot 1

Bolean.PNG
#3 Posted: 3/21/2022 2:53:55 PM
overlord

overlord

558 likes in 1,335 posts.

Group: Moderator

Wrote

I have found a low priority issue where special plots (e.g. text shown on the 2D plot) do not appear on the 2D plot when using an "if...else" domain definition. The Special Plots do show up if I use boolean domain definitions, however.

I have attached a sample file here that should make it clear.

I also tried submitting this to the bug tracker, but it appears I do not have the privileges to log into the bug tracker system.

Thank you!


You can use cases() in Custom Functions Plugin for that purpose.
Plotting, solve(), roots(), FindRoot() and various commands may don't like if/else.
Sometimes an error can be fixed by using a line(), not in your example though.
Recursive functions doesn't solve when line() and cases() used both, etc etc.

These are bitter tricks/bugs, I tend to forgot them everytime.
After struggling a while however I remember the "correct usage".

Regards
#4 Posted: 3/21/2022 6:30:37 PM
Martin Kraska

Martin Kraska

1,230 likes in 2,156 posts.

Group: Moderator

Would be interesting, why if() is not defined by default as boolean expression just like cases().

Is there any use case, where the original if() is better than the one defined with cases()? If not, then I propose to include re-definition of if() in the custom functions plugin.

2022-03-21 22_18_08-SMath Solver - [SpecialPlotsBug.sm_].png
Martin Kraska Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
1 users liked this post
sergio 3/22/2022 5:48:00 AM
#5 Posted: 3/21/2022 8:20:41 PM
Jean Giraud

Jean Giraud

983 likes in 6,866 posts.

Group: User

Bolean bug(s) are user bug.
Many projects will accommodate either style if/else ... if/otherwise
A long suite of conditions is horror if/else.
Doctor your plot 1 as proposed, press F9

Bolean NOT =.PNG

Integrate Discontinuous_1.sm (24 KiB) downloaded 123 time(s).
Integrate Discontinuous.sm (36 KiB) downloaded 123 time(s).
Integrate Discontinuous_2.sm (132 KiB) downloaded 129 time(s).
#6 Posted: 3/21/2022 9:57:44 PM
Jean Giraud

Jean Giraud

983 likes in 6,866 posts.

Group: User

Examine more Bolean applications.

Dolphin.sm (37 KiB) downloaded 120 time(s).
#7 Posted: 3/21/2022 10:21:45 PM
Alvaro Diaz Falconi

Alvaro Diaz Falconi

1,005 likes in 1,677 posts.

Group: User

Wrote

...
Is there any use case, where the original if() is better than the one defined with cases()?
...



Hi Martin. Yes. Here one: https://en.smath.com/forum/yaf_postsm34552_Custom-Functions-plugin.aspx#post34552

and here the Davide answer about that: https://en.smath.com/forum/yaf_postsm34559_Custom-Functions-plugin.aspx#post34559

I also remember some other about what complex could be the expressions in cases(), but can't found that.

Best regards.
Alvaro.
1 users liked this post
sergio 3/22/2022 6:05:00 AM
#8 Posted: 3/22/2022 9:26:54 AM
Jean Giraud

Jean Giraud

983 likes in 6,866 posts.

Group: User

... doctored for convenience.
Observe collected plot, easy to manage.
Cheers ... Jean.

SpecialPlotsBug DOCTORED.sm (10 KiB) downloaded 120 time(s).
#9 Posted: 3/22/2022 11:42:00 AM
Jean Giraud

Jean Giraud

983 likes in 6,866 posts.

Group: User

... you make Bolean algo style
for convenient command line.

Bolean algo Style.PNG
  • New Posts New Posts
  • No New Posts No New Posts