X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/kahina_paper1.git/blobdiff_plain/d3e87f59ffa2ba8a54513a8a8713280dda780920..636c3a5433074f7cb112765bbe6183b0237a67b8:/paper.tex?ds=sidebyside diff --git a/paper.tex b/paper.tex index f227762..2b6ac7f 100644 --- a/paper.tex +++ b/paper.tex @@ -321,8 +321,8 @@ With high degree polynomial, the Ehrlich-Aberth method implementation, as well as the Durand-Kerner implement, suffers from overflow problems. This situation occurs, for instance, in the case where a polynomial having positive coefficients and a large degree is computed at a -point $\xi$ where $|\xi| > 1$, where $|x|$ stands for the modolus of a complex $x$. Indeed, the limited number in the -mantissa of floating points representations makes the computation of p(z) wrong when z +point $\xi$ where $|\xi| > 1$, where $|z|$ stands for the modolus of a complex $z$. Indeed, the limited number in the +mantissa of floating points representations makes the computation of $p(z)$ wrong when z is large. For example $(10^{50}) +1+ (- 10^{50})$ will give the wrong result of $0$ instead of $1$. Consequently, we can not compute the roots for large degrees. This problem was early discussed in @@ -350,7 +350,7 @@ iteration function with exponential and logarithm: %%$$ \exp \bigl( \ln(p(z)_{k})-ln(\ln(p(z)_{k}^{'}))- \ln(1- \exp(\ln(p(z)_{k})-ln(\ln(p(z)_{k}^{'})+\ln\sum_{i\neq j}^{n}\frac{1}{z_{k}-z_{j}})$$ \begin{equation} \label{Log_H2} -EA.EL: z^{k+1}=z_{i}^{k}-\exp \left(\ln \left( +EA.EL: z^{k+1}_{i}=z_{i}^{k}-\exp \left(\ln \left( p(z_{i}^{k})\right)-\ln\left(p'(z^{k}_{i})\right)- \ln \left(1-Q(z^{k}_{i})\right)\right), \end{equation} @@ -360,7 +360,7 @@ where: \begin{equation} \label{Log_H1} Q(z^{k}_{i})=\exp\left( \ln (p(z^{k}_{i}))-\ln(p'(z^{k}_{i}))+\ln \left( -\sum_{k\neq j}^{n}\frac{1}{z^{k}_{i}-z^{k}_{j}}\right)\right). +\sum_{i\neq j}^{n}\frac{1}{z^{k}_{i}-z^{k}_{j}}\right)\right)i=1,...,n, \end{equation} This solution is applied when the root except the circle unit, represented by the radius $R$ evaluated in C language as: