calculatrice et limite

Bonsoir

la série exp(-100) = somme de (-100)^k/k! est calculette divergente (exemple tiré du Hors Série 5 de Tangente)¸ qu’en dit Maple?

Avez-vous des exemples où la calculatrice est mise en défaut?

aimablement
S

Réponses

  • "être calculette divergente" = ?
  • Je pense que cela veut dire que la suite semble diverger si l'on en calcule quelques termes à la calculatrice alors qu'en fait elle converge.

    Ici, cela provient du fait que 100^k ne devient petit devant k! qu'au-delà de k=280 environ. Entre temps les termes dans la somme auront atteints des valeurs faramineuses (10^42 pour k=100)... pour finalement s'éliminer !

    Sur ce même modèle, on doit pouvoir trouver plein d'exemples.

    On peut aussi trouver des exemples dans l'autre sens... en prenant par exemple la suite $S_N=\displaystyle{\sum_{k=0}^N \frac{k!}{100^k}}$.
    Numériquement, on trouve $S_5=1.010206252$, $S_{20}\simeq 1.01020625277...$, idem pour $S_{100}$ et $S_{200}-S_{100}\simeq1.58554\times 10^{-25}$.

    Un élève de Term aurait du mal à croire que cette suite diverge grossièrement vers $+\infty$ !!
  • Bonjours,

    Cela entre dans l'accélération de convergence et de divergence je pense !

    Une calculette travaille en mode flottant, sa précision est de l'ordre de $10^{-99}$ pour cette calculette $x
  • ah ben moi j'aimerais bien connaitre cette calculette qui a une precision de $10^{-99}$ !
    Pour Maple je n'en parle meme pas !

    Hoeg
  • Les calculatrices programables.
  • Je doute tres tres fortement qu'une calculatrice puisse donner 99 chiffres significatifs...sur un ordinateur, en double precision, les nombres sont representes sur 64bits dont 53 bits de mantisse ce qui fait une precision d'environ 16 chiffres significatifs.
    <BR>Alors pour obtenir un milliard de chiffres significatifs avec Maple... (mais comme c'est un logiciel de calcul symbolique, je ne sais pas trop comment sont vraiment faits les calculs).
    <BR>
    <BR>Pour samok je ne sais pas si ca t'interessera vraiment mais tu peux jeter un coup d'oeil a <a href=" ftp://ftp.inria.fr/INRIA/publication/publi-pdf/RR/RR-5105.pdf"&gt; ftp://ftp.inria.fr/INRIA/publication/publi-pdf/RR/RR-5105.pdf</a&gt; qui donne notamment un petit algo pour savoir en quelle base sont faits les calculs et qui est un tres bon cours sur le calcul flottant (mais ce n'est pas vraiment ce que tu cherches je pense).
    <BR>
    <BR>Et sinon je conseille aussi la lecture du "What every computer scientist should know about floating point arithmetic" de Goldberg (ca se trouve sans probleme sur le net) [mais je ne crois pas que ca contienne des exemples comme tu en cherches]<BR><BR><BR>
  • Tu as raison Hoeg mon dernier poste est vague j'ai revérifie pour oublier le 1 milliard c'est plutôt un chiffre astronomique, maple dit overflow càd débordement ou dépassement de capacité.

    Donc je dénonce mon dernier message !

    (:-)-<--<
    Zidane
  • Une calculatrice travaille sur tout au plus une quinzaine de chiffres, pas sur 99.
  • Pour revenir au sujet initial, cela montre juste que vouloir introduire la notion de limite avec une calculatrice relève de l'escroquerie et qu'avec cet outil, on peut produire autant d'exemples que de contre-exemples.
  • Eric > Il me semble que c'est le but de Samok, justement.. On a pas mal d'exemple simple pour dire qu'il faut se méfier de la calculette, genre faire 1+10^-10 -1, et remarquer qu'on trouve 0..

    Sinon, il me semble que Maple est capable de travailler en précision arbitraire (il utilise me semble-t-il la librairie libre GMP ). Donc a priori, il est capable de sortir un nombre arbitrairement grand de chiffres, au prix évidemment d'un temps de calcul important..
    Il me semble qu'un petit evalf(Pi,1000); devrait vous convaincre (si ma mémoire est bonne, pour la syntaxe. )
  • Les TI (et certainement celles qui font du calcul formel en général) travaillent en mode "Float" avec une précision pouvant aller jusqu'à 14 chiffres significatifs.
    MAIS avec des entiers (et donc aussi avec des rationnels), elles font les calculs EXACTS jusqu'à 600 chiffres !

    Pour Maple, il est effectivement exact que son nombre de chiffres de précision est une variable globale que l'on peut modifier à volonté... au détriment du temps de calcul bien sûr.
  • Le calcul entier ne pose pas beaucoup de probleme...d'ailleurs (mais c'est loin de la question initiale) il est parfois interessant de faire les calculs d'un probleme à un exposant pres afin de se ramener a des calculs sur les entiers.
    Mais, quand on parle de précision, ca signifie, me semble-t-il, le nombre de chiffres exacts apres la virgule donc calcul flottant.

    Par contre je ne savais pas que Maple etait basé sur GMP pour la partie calcul flottant ! [et dans le même genre de librairie, on peut recommander MPFR pour les calculs flottants. C'est developpé par une équipe du Loria]
  • Bonsoir

    merci bisam pour le contre exemple qui est dans la même veine¸ l’article donne des exemples plus subtils mais je ne vois pas les idées et outils sous-jacents.
    U0 = 1¸510005072136258
    U(n+1) = (3.U(n)^4 - 20.U(n)^3 + 35.U(n)^2 -24) / (4.U(n)^3 - 30.U(n)^2 + 70.U(n) – 50)

    Selon la précision utilisée :
    -> Avec 12 14 16 18 chiffres la "limite" trouvée est respectivement 1 4 4 et 1 pour une limite de 1

    Pour le lien et l’article fourni¸ je l’ai parcouru rapidement¸ il semble aussi complet qu’intéressant et répond à des questions que je me posais par ailleurs¸ aussi merci Hoeg pour cette référence

    aimablement
    S
  • Salut Samok

    J'utilise en TP info (On démarre avec la calculette) la suite :

    $U_0 = 1$
    $U_1 = \frac{1- \sqrt {5}}{2}$
    $U_n = U_{n-1} + U_{n-2} $

    C'est une bête suite géométrique de limite 0, dont la calculette calcule des termes décroissant vers 0 au début, puis, erreur cumulée faisant, trouve deux termes du même signe. 0 partir de là, les termes s'accumulent et grandissent indéfiniment en valeur absolue.

    Explication pour Maple :
    Comme tout logiciel de calcul formel, il fait, sauf indication contraire, du calcul exact. Donc si on ne lui met pas de nombres à virgule flottante (point décimal) ou de "evalf", il fait du calcul entier avec une précision "illimitée" (limitée seulement par le temps d'exécution et la mémoire de l'ordinateur; ça arrive souvent ! au bout de 2 jours de calcul, on a tendance à renoncer). Le calcul que tu proposes donne une fraction (le trait de fraction est à la 11-ième ligne, j'ai pris N=400) :
    7532439972092914138492818701737613413008569171336756245421850261272258903641471346798570155564655740370656015663460988465536248904192894716608084144098218626611002518899130479435438057388356096259299393552270932833596817361018795661161393396749735153767194864945512663386731620580763284325089247116163208316956378910870440077637273282891131361850901476568235639658117515530389469806671212496463618512833408910175977990659034829509541954218837587448938101656238949752058631264974638953711623098941853715656533141041268450935245065826866155976459867026012632458442982243639395208146777362928968397046882451479904688210241649757351144417/202480810086840154145890288640909863384762816225451471905219209871618331686816379312724139004815582686783890013856138183109008631148749834448332350542799581421010892099248375821718708798726254815466489823584184391143290689275307976031714930576722896441163170055800050523444285003392995463925209607280355227350688580519004415906534478797622120846723604942834183967185925468394387341462503455065849923590060813193042487399572017305714985226757754964164208931163208953886919333872277528775102840848891083621011312221537209621234726064465172032966648705647497235736382287066244549042933104653013679207645445984552034709415393356013653612820266032382251940263985739088225446244671117
    Tu peux faire la division, c'est assez précis !

    Cordialement
  • Bonsoir

    merci Gérard pour l’exemple apporté

    Un exemple géométrique issu de Quadrature n° 59¸ l’arrondi étant l’épaisseur du trait

    On considère les points :
    Pk d’affixes exp(2.i.k.π/15) 0≤k≤14
    A=(P0P9)∩(P8P12)
    B= (P0P9)∩(P5P10)

    le dessin semble montrer A=B

    aimablement
    S
  • Concernant la série de terme général $ \frac{(-100)^k}{k!} $ citée par Samok, j'ai testé avec Python (qui, sur mon ordinateur, utilise des long, i.e., des binary64, d'après sys.float_info).
    Je trouve empiriquement que la série converge et non pas qu'elle diverge. Néanmoins, la valeur de la limite est incorrecte.


    J'utilise le code suivant (avec l'indentation) :
    def g (n) :
         s=0
         for k in range(0,n+1):
             s=s+(-100)**k/math.factorial(k)
         return s
    

    Je trouve comme (fausse) limite -2.8756582514726483e+26

    Pour la série de terme général $\frac{k!}{100^k}$, je trouve a peu près les mêmes résultats que Bisam. néanmoins, on observe la divergence en allant au delà du 200e terme.
    J'utilise le code suivant, en Python :
    def h (n) :
         s=0
         for k in range(0,n+1):
             s=s+math.factorial(k)/(100)**k
         return s
    

    Pour h(500), j'obtiens 1.5253625182798687e+134
Connectez-vous ou Inscrivez-vous pour répondre.