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 34 time(s).
#2 Posted: 3/21/2022 2:23:30 PM
Jean Giraud

Jean Giraud

983 likes in 6866 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

547 likes in 1330 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

1222 likes in 2150 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 6866 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 20 time(s).
Integrate Discontinuous.sm (36 KiB) downloaded 18 time(s).
Integrate Discontinuous_2.sm (132 KiB) downloaded 25 time(s).
#6 Posted: 3/21/2022 9:57:44 PM
Jean Giraud

Jean Giraud

983 likes in 6866 posts.

Group: User

Examine more Bolean applications.

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

Alvaro Diaz Falconi

992 likes in 1674 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 6866 posts.

Group: User

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

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

Jean Giraud

983 likes in 6866 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