WP 34S solve an integral

04232015, 07:27 PM
Post: #1




WP 34S solve an integral
I was wondering how to use solve for a problem such as, (integral x^2 from 0 to x) =10. (Answer is ~3.107)


04232015, 08:05 PM
(This post was last modified: 04242015 08:15 AM by Marcus von Cube.)
Post: #2




RE: WP 34S solve an integral
(04232015 07:53 PM)BarryMead Wrote: You don't use solve, you use the Integral operator the g shifted 2. I'm afraid You misread the original post. Lrdheat is asking for the upper bound so that the integral is 10. This can be done: Code: LBL 00 Now you can SLV 00 and should get your answer. Beware: I didn't test the code. It's just of the top of my head. Edit: See comments in the code. Marcus von Cube Wehrheim, Germany http://www.mvcsys.de http://wp34s.sf.net http://mvcsys.de/doc/basiccompare.html 

04232015, 08:32 PM
(This post was last modified: 04252015 07:38 PM by BarryMead.)
Post: #3




RE: WP 34S solve an integral
(04232015 08:05 PM)Marcus von Cube Wrote: I didn't test the code. It's just of the top of my head.That program was close to working, but this one does work. Code: LBL 00 Exit programming mode and press 3 Enter 4 SLV 00 

04232015, 08:43 PM
Post: #4




RE: WP 34S solve an integral
Thanks, Barry,
It works! What is the #010? 

04232015, 08:50 PM
(This post was last modified: 04232015 10:59 PM by BarryMead.)
Post: #5




RE: WP 34S solve an integral
(04232015 08:43 PM)lrdheat Wrote: Thanks, Barry,It is a constant 10 (The value sought for the integral end result) The numbers entered before solve are only guesses for the solve search range. If you entered 2 and 4 SLV 00 it would still work. If you want to rework the program to use the X register as target integral result you could store X in a register then subtract the integral result from that register to make the solve function converge on zero relative to that stored value instead of 10. I just hard coded the 10 in the program with a constant to make it easier to write the program. Does that help? 

04232015, 09:05 PM
(This post was last modified: 04252015 07:39 PM by BarryMead.)
Post: #6




RE: WP 34S solve an integral
This version of the program uses label A as the start of the program and you put the
Target integral value into the X , the Upper solve guess bound in Y and the Lower solve guess Bound in Z and press A Code: LBL A Then Press 0 Enter 5 Enter 10 A (Solves for X where the integral of x² from zero to X = 10) = 3.10723250595 Try 3 Enter 7 Enter 20 A (Solves for X where integral of x² from zero to X = 20) = 3.91486764117 I have found that even if you pick really bad guesses for the solve bounds, it usually still finds the right answer, but takes a little longer. 

04232015, 10:28 PM
(This post was last modified: 04232015 10:37 PM by CR Haeger.)
Post: #7




RE: WP 34S solve an integral
Thanks for this post ldheat and Marcus/Barry for your advice  I have been looking at something like this as well.
May I ask a few related questions for a WP34S that runs slower or is chewing up battery: 1. To limit the SLV routine precision/iterations, a RDP or RDP > command in the routine being solved can be added near the end of the LBL 00 routine being "solved"? 2. To limit the integration precision, a SCI or SCI > command can be added to the routine containing the integral (LBL 01)? 3. If I want to have a global "f(x)" routine versus a local one, could I change LBL 01 to say LBL 'F'? That way this global 'F' can be used as is or by other programs? If so, I assume the ∫ 01 needs to change to ∫ 'F' as well? Thanks 

04232015, 10:34 PM
(This post was last modified: 04242015 05:51 AM by BarryMead.)
Post: #8




RE: WP 34S solve an integral
(04232015 10:28 PM)CR Haeger Wrote: Thanks for this post and Marcus/Barry for your advice  I have been looking at something like this as well. Yes to all three questions. The WP34s is one of the most powerful programmable calculators out there. You can do almost anything you can imagine with it. A couple of suggestions regarding battery life. 1. Use the emulator on your computer (It uses only wall power and runs much faster than the real calculator) 2. If you have a calculator with Harold Pott's micro USB board installed, attach the USB cable to a computer (or a 5V USB adapter), and you have NO BATTERY DRAINAGE. (Nice for running those long battery hungry programs). 

04232015, 10:46 PM
Post: #9




RE: WP 34S solve an integral
(04232015 10:34 PM)BarryMead Wrote: Yes to all three questions. The WP34s is the most powerful programmable calculator I have ever used. All this could already be done with the very first HP with "Integrate" – the 34C from 1979. However, not all later HPs allow nested Solve/Integrate. For instance the 35s doesn't. @"lrdheat": please note that the result returned by "Integrate" may vary with the display setting. Some days ago I answered an older post where you asked a similar question. If you haven't noticed yet: look here. (04232015 10:34 PM)BarryMead Wrote: You can do almost anything you can imagine with it. Well, there still is some work to do. Recently I have been looking at the Poisson and Binomial quantile functions. Dieter 

04242015, 02:11 AM
Post: #10




RE: WP 34S solve an integral
Thanks Barry, Dieter, and CR.
Nice work! 

04242015, 06:19 AM
Post: #11




RE: WP 34S solve an integral  
04242015, 08:22 AM
Post: #12




RE: WP 34S solve an integral
(04232015 10:46 PM)Dieter Wrote:(04232015 10:34 PM)BarryMead Wrote: Yes to all three questions. The WP34s is the most powerful programmable calculator I have ever used. The 34S has a feature the 34C lacks: It can nest solve and integrate (and sum and product) to any depth as far as memory allows. We're using local registers in the XROM code that implements these functions. Marcus von Cube Wehrheim, Germany http://www.mvcsys.de http://wp34s.sf.net http://mvcsys.de/doc/basiccompare.html 

04242015, 08:57 AM
Post: #13




RE: WP 34S solve an integral
FYI, "RDP or RDP>" are the same command, just with direct or indirect addressing. Same applies to "SCI or SCI>".
d:) 

04242015, 12:16 PM
Post: #14




RE: WP 34S solve an integral
(04232015 10:28 PM)CR Haeger Wrote: 1. To limit the SLV routine precision/iterations, a RDP or RDP > command in the routine being solved can be added near the end of the LBL 00 routine being "solved"? I would recommend a solution like this: Code: ... This way the solver always gets the exact function result, and only values below the (here) 5–digit threshold are rounded to zero so that the solver quits. Dieter 

04242015, 12:34 PM
Post: #15




RE: WP 34S solve an integral
(04232015 09:05 PM)BarryMead Wrote: Of course it doesn't matter whether you solve ∫ – 10 = 0 or 10 – ∫ = 0, so the second x<>y is not required, and a simple RCL–00 will do as well. Or, even shorter: Code: LBL 00 Sorry for the nitpicking. ;) (04232015 09:05 PM)BarryMead Wrote: Then Press 0 Enter 5 Enter 10 A (Solves for X where the integral of x² from zero to X = 10) = 3.10723250595 FTR: the exact solutions are the cube roots of 3·10 resp. 3·20. Dieter 

04242015, 01:01 PM
Post: #16




RE: WP 34S solve an integral
(04242015 12:16 PM)Dieter Wrote: I would recommend a solution like this: Thanks Dieter! If I understand correctly, the x≠0? and x<> L steps ensure that the latest exact (versus rounded) SLV guess is passed back to the SLV routine? 

04242015, 01:09 PM
(This post was last modified: 04242015 01:17 PM by Dieter.)
Post: #17




RE: WP 34S solve an integral
(04242015 01:01 PM)CR Haeger Wrote: If I understand correctly, the x≠0? and x<> L steps ensure that the latest exact (versus rounded) SLV guess is passed back to the SLV routine? These two steps make sure that usually the exact function result is returned to the SLV routine. Only if that value rounds to zero, this zero is passed to SLV so that it will quit. In other words: IF Round(fx, 5) = 0 THEN return 0 ELSE return fx END IF Dieter 

04242015, 01:20 PM
Post: #18




RE: WP 34S solve an integral
Right, f(x) not "guess"...
thanks again. 

04242015, 01:24 PM
(This post was last modified: 04242015 01:26 PM by CR Haeger.)
Post: #19




RE: WP 34S solve an integral
(04242015 08:57 AM)walter b Wrote: FYI, "RDP or RDP>" are the same command, just with direct or indirect addressing. Same applies to "SCI or SCI>". Thank you. Yes, I thought the indirect addressing might be handy for adjusting SCI or RDP values from outside the program  perhaps even during its execution. Cool feature. 

04242015, 02:46 PM
(This post was last modified: 04252015 07:39 PM by BarryMead.)
Post: #20




RE: WP 34S solve an integral
(04242015 12:34 PM)Dieter Wrote:Very cleaver optimization. I knew that my original program was clumsy, and nonoptimal. I did that on purpose to make it as clear and obvious as possible how to turn the original idea into a program. Using reversed integral bounds (to make the integral negative), and adding a positive target value is equivalent to subtracting a target, and the ability of solve to converge regardless of the sign of the error also can make the program more compact. Congrats on how small you made the program. 

« Next Oldest  Next Newest »

User(s) browsing this thread: 2 Guest(s)