Post Reply 
[VA] SRC #012b - Then and Now: Root
11-10-2022, 01:29 PM (This post was last modified: 11-10-2022 03:06 PM by C.Ret.)
Post: #12
RE: [VA] SRC #012b - Then and Now: Root
(11-10-2022 08:26 AM)J-F Garnier Wrote:  My understanding is that the PROOT method, with 200 terms, proves that the root Zmin is indeed the smallest in abs value for the complete 10000th degree polynomial:
- PROOT finds all the roots of the given polynomial (here the 200th degree one), there is no missing one,
- we can be sure that the root Zmin above is also a root of the 10000th degree polynomial, in the limits of the numerical accuracy, because the terms Pn.Zmin^n for n>200 will have a modulus less than about 2E-16 and will not contribute (again in the limits of the numerical accuracy) to the value of the complete polynomial,
- the complete polynomial can not have a smaller root Zx, because it would also be a root (in the numerical accuracy limits...) of the 200th degree polynomial, for the same reason that the Zx^n terms for n>200 would be negligible.


Your explanations make sense and explain why the results no longer evolve when there are enough monômes, the truly high powers of x with |x]<1 becoming negligible at the (limited) 12-figures precision of the machine.
This also explains why using Horner's method as I do waste a lot of computation time because the summation starts with the negligible monômes which will be overwritten by the larger values ​​of the last ones.

Concerning the PROOT instruction, I did some tests with about twenty values ​​for N ranging from 8 to 66. Each time, I observe that the root of minimal absolute value (of minimal norm) is store at the first position in the result vector containing the roots.
I now short end my code by removing the search loop for the minimum value at the end of the program. I only count of the PROOT program to systematically place the smallest normed root in the first R(0) position.

It may have to do with this paragraph found on page 128, section 12 of the Math Pac Owner's Manual:
[Image: attachment.php?aid=11375]
Having the minimal absolute value (minimal normed or smallest magnitude root) at R(0) is not just a coincidence...

EDITED: See next post where Chan show me that It is effectively just by coïncidence !!

I put a new set of AAA cells in my HP-71B to replace the previous old set that just died during the last endless attempt.

It took nearly two hours to find the minimum norm ABS(R(0)) = 0.806513599261 from a polynomial P() of degree N=200 with the following 3-liner directly adapted from J. -F. Garnier's code:

10 T0=TIME @ N=200 @ OPTION BASE 0 @ DIM P(N) @ COMPLEX R(N-1)
20 P(N)=2 @ P(N-1)=3 @ FOR K=N-2 TO 0 STEP -1 @ P(K)=FPRIM(2+P(K+1)) @ NEXT K
30 MAT R=PROOT(P) @ T0=TIME-T0 @ DISP T0;ABS(R(0)) @ BEEP

T0
6760.46 (1:52'40.4")

ABS(R(0))
.806513599261

R(0)
(-.645758096347,-.483177676217)

ABS(R(1))
.806513599261

R(1)
(-.645758096347,.483177676217)
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: [VA] SRC #012b - Then and Now: Root - C.Ret - 11-10-2022 01:29 PM



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