From: Francis W. <f.j...@li...> - 2025-06-05 16:13:02
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"><div dir="auto">Thanks for your detailed work on this problem and your comments about odesolve. What you have discovered is a bug that I will endeavour to fix ASAP, but I'm away from home for a couple of days. I'll try to take a look at this next week.<div dir="auto"><br></div><div dir="auto">Best wishes, Francis</div></div><div class="gmail_extra"><br><div class="gmail_quote">On 5 Jun 2025 1:47 pm, martin gregory via Reduce-algebra-developers <red...@li...> wrote:<br type="attribution"><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div> <div><font size="2"><span style="font-size:11pt"> <div>Dear reduce-algebra-developers,<br> <br> first some context: I am building an R[1] package to execute REDUCE code and transform the output to appropriate R objects. An important aspect of testing is to ensure the transformation of the output is accurate. While looking for non-trivial examples for odesolve solutions including plus_or_minus() I found example 18 of odesolve/zimmer.tst:<br> <br> ----------------------------------------------------------------------<br> % (18) Bernoulli 1<br> odesolve(df(y,x) + y = y^3*sin x, y, x, explicit);<br> ----------------------------------------------------------------------<br> <br> If I execute zimmer.tst it works perfectly. If I execute this call in a fresh REDUCE session, setting TRODE, DIV and INTSTR to on and ALLFAC to off as in zimmer.tst, I get only:<br> <br> ----------------------------------------------------------------------<br> 4: odesolve(df(y,x) + y = y^3*sin x, y, x, explicit);<br> This is a nonlinear ODE of order 1.<br> It is of Bernoulli type.<br> <br> 5:<br> ----------------------------------------------------------------------<br> <br> i.e. not even the {} one gets when there is no solution.<br> <br> Trying to understand what was going on I assumed that one or more of the preceding 17 examples was influencing the call so I generated a program for each 17 to execute, in a new session, the switch settings, the example and then example 18. Searching the output I found that examples 3, 8, 11, 12, 13, 15 each cause 18 to work correctly. I then checked the state of all switches before and after executing these programs and found that ALLOWDFINT is turned on. Setting it on in a clean session did not cause 18 to work. Searching further, however, I found that it is turned on any time odesolve runs.<br> <br> If I don't use the explicit option I do get the correct solution, but in a different form.<br> <br> Is there a switch or option to get example 18 to work with explicit and without running one of the other examples first? If there is no such way, I can add a warning to my documentation that such behaviour is possible.<br> <br> Attached is odesolve-zimmer18.red with CSL (.clg) log demonstrating the behaviour. PSL behaviour is identical.<br> <br> odesolve is very impressive software!<br> <br> Kind regards,<br> Martin<br> <br> [1] The R Project for Statistical Computing: <a href="https://www.r-project.org/"> https://www.r-project.org/</a><br> <br> <br> </div> </span></font></div> <div><font size="2"><span style="font-size:11pt"> <div><br> <br> </div> </span></font></div> <div><font size="2"><span style="font-size:11pt"> <div> </div> </span></font></div> <div><font size="2"><span style="font-size:11pt"> <div>_______________________________________________<br> Reduce-algebra-developers mailing list<br> Red...@li...<br> <a href="https://lists.sourceforge.net/lists/listinfo/reduce-algebra-developers">https://lists.sourceforge.net/lists/listinfo/reduce-algebra-developers</a><br> </div> </span></font></div> </div> </blockquote></div><br></div> |