(HP41) Iterated function with convergence to square root (Heron method) - Printable Version +- HP Forums (https://www.hpmuseum.org/forum) +-- Forum: HP Software Libraries (/forum-10.html) +--- Forum: HP-41C Software Library (/forum-11.html) +--- Thread: (HP41) Iterated function with convergence to square root (Heron method) (/thread-19852.html) |
(HP41) Iterated function with convergence to square root (Heron method) - floppy - 04-25-2023 03:21 PM Since RPN and FOCAL with it stack is efficient for iterated functions, here a posting of the iterated function of aN=(an + b/an) / 2 which result will be SQRT(b). Other way to represent this is f(x,y)=(x+y/x,y). Then f(f(f(..(a0,b))))=(sqrt(b),b). The start value a0 can be anything (result will have the negativ sign if the start value a0<0). Nothing really new: - no register used in comparison to the programm available in page 11 in https://literature.hpcalc.org/community/hp41-optimal-program-de.pdf ) - start value can be defined (will be defined as b if a0=0) - no calculation done if b=0 Code: ; SQRT as iterated function, "möbius transform like" = only + * or / RE: (HP41) Iterated function with convergence to square root (Heron method) - C.Ret - 04-25-2023 05:51 PM Hi, It reminds me of a program, using this exact method, written for a silly challenge on a French forum. (Look for MPO n°46 on Silicium). 001 LBL"HERON" RCL Y RCL Y / + 2 / END Usage: Enter the number b whose square root you want to determine. Press ENTER^. Optionally enter the approximation a0. Run the XEQ (ALPHA)HERON(ALPHA) program. A better approximation is displayed. Repeat the computation by pressing R/S . You will see the successive approximations quickly converging towards the square root of b. To extract another root, simply enter a new value, press ENTER^, enter an optional guess approximation and restart with R/S. Example: 2 FIX 9 2,000000000 1.5 XEQ (ALPHA)HERON(ALPHA) 1,416666667 R/S 1,414215687 R/S 1,414213563 R/S 1,414213563 ... RE: (HP41) Iterated function with convergence to square root (Heron method) - Thomas Klemm - 04-25-2023 06:29 PM (04-25-2023 03:21 PM)floppy Wrote: - no register used in comparison to the program available in page 11 in https://literature.hpcalc.org/community/hp41-optimal-program-de.pdf ) Why not compare it to the program on the next page, which also doesn't use registers? RE: (HP41) Iterated function with convergence to square root (Heron method) - floppy - 04-25-2023 06:30 PM One more https://www.youtube.com/watch?v=uMCWgcBvVrw&ab_channel=AlexandreDumont RE: (HP41) Iterated function with convergence to square root (Heron method) - floppy - 04-25-2023 06:34 PM (04-25-2023 06:29 PM)Thomas Klemm Wrote:correct. I missed this page 12. However, the program is with 2 variables = a bit different (the start value is something I will consider for another topic).(04-25-2023 03:21 PM)floppy Wrote: - no register used in comparison to the program available in page 11 in https://literature.hpcalc.org/community/hp41-optimal-program-de.pdf ) RE: (HP41) Iterated function with convergence to square root (Heron method) - Thomas Klemm - 04-25-2023 06:56 PM (04-25-2023 05:51 PM)C.Ret Wrote: written for a silly challenge A bit shorter, albeit sillier: Initialisation CLΣ ENTER ENTER ENTER Iteration / Σ+ MEAN RE: (HP41) Iterated function with convergence to square root (Heron method) - Thomas Klemm - 04-25-2023 07:20 PM (04-25-2023 06:30 PM)floppy Wrote: One more (…) HP-41C: Code: STO 00 HP-42S: Code: 00 { 16-Byte Prgm } |