Articulo de referencia

Error de redondeo

En computación , un error de redondeo , [ 1 ] también llamado error de redondeo , [ 2 ] es la diferencia entre el resultado producido por un algoritmo dado usando aritmética exa...

En computación , un error de redondeo , [ 1 ] también llamado error de redondeo , [ 2 ] es la diferencia entre el resultado producido por un algoritmo dado usando aritmética exacta y el resultado producido por el mismo algoritmo usando aritmética redondeada de precisión finita . [ 3 ] Los errores de redondeo se deben a la inexactitud en la representación de los números reales y las operaciones aritméticas realizadas con ellos. Esta es una forma de error de cuantización . [ 4 ] Cuando se utilizan ecuaciones o algoritmos de aproximación, especialmente cuando se utilizan un número finito de dígitos para representar números reales (que en teoría tienen infinitos dígitos), uno de los objetivos del análisis numérico es estimar los errores de cálculo. [ 5 ] Los errores de cálculo, también llamados errores numéricos , incluyen tanto errores de truncamiento como errores de redondeo.

Cuando se realiza una secuencia de cálculos con una entrada que incluye algún error de redondeo, los errores pueden acumularse, llegando a dominar el cálculo en ocasiones. En problemas mal condicionados , puede acumularse un error significativo. [ 6 ]

En resumen, existen dos facetas principales de los errores de redondeo involucrados en los cálculos numéricos: [ 7 ]

  1. La capacidad de los ordenadores para representar tanto la magnitud como la precisión de los números es inherentemente limitada.
  2. Ciertas manipulaciones numéricas son muy sensibles a los errores de redondeo. Esto puede deberse tanto a consideraciones matemáticas como a la forma en que las computadoras realizan las operaciones aritméticas.

Error de representación

El error que se produce al intentar representar un número mediante una cadena finita de dígitos es una forma de error de redondeo denominada error de representación . [ 8 ] A continuación se muestran algunos ejemplos de errores de representación en representaciones decimales:

Aumentar el número de dígitos permitidos en una representación reduce la magnitud de los posibles errores de redondeo, pero cualquier representación limitada a un número finito de dígitos seguirá causando cierto grado de error de redondeo para una cantidad incontable de números reales. Los dígitos adicionales utilizados para los pasos intermedios de un cálculo se conocen como dígitos de guarda . [ 9 ]

El redondeo múltiple puede provocar la acumulación de errores. [ 10 ] Por ejemplo, si 9,945309 se redondea a dos decimales (9,95) y luego se redondea nuevamente a un decimal (10,0), el error total es 0,054691. Redondear 9,945309 a un decimal (9,9) en un solo paso introduce menos error (0,045309). Esto puede ocurrir, por ejemplo, cuando el software realiza aritmética en punto flotante de 80 bits x86 y luego redondea el resultado a punto flotante IEEE 754 binary64 .

Sistema de numeración de punto flotante

En comparación con el sistema de números de punto fijo , el sistema de números de punto flotante es más eficiente para representar números reales, por lo que se utiliza ampliamente en las computadoras modernas. Mientras que los números realesR{\displaystyle \mathbb {R} }son infinitos y continuos, un sistema de números de punto flotanteF{\displaystyle F}es finito y discreto. Por lo tanto, en el sistema de números de punto flotante se produce un error de representación que da lugar a un error de redondeo.

Notación del sistema de números de punto flotante

Un sistema de números de punto flotanteF{\displaystyle F}se caracteriza por4{\displaystyle 4}números enteros:

  • β{\displaystyle \beta }: base o raíz
  • pag{\displaystyle p}: precisión
  • [L,U]{\displaystyle [L,U]}: rango del exponente, dondeL{\displaystyle L}es el límite inferior yU{\displaystyle U}es el límite superior

CualquierincógnitaF{\displaystyle x\in F}tiene la siguiente forma: incógnita=±(d0.d1d2dpag1significando)β×βmiexponente=±d0×βmi+d1×βmi1++dpag1×βmi(pag1){\displaystyle x=\pm (\underbrace {d_{0}.d_{1}d_{2}\ldots d_{p-1}} _{\text{significando}})_{\beta }\times \beta ^{\overbrace {E} ^{\text{exponente}}}=\pm d_{0}\times \beta ^{E}+d_{1}\times \beta ^{E-1}+\ldots +d_{p-1}\times \beta ^{E-(p-1)}} dóndedi{\displaystyle d_{i}}es un número entero tal que0diβ1{\displaystyle 0\leq d_{i}\leq \beta -1}parai=0,1,,pag1{\displaystyle i=0,1,\ldots ,p-1}, ymi{\displaystyle E}es un número entero tal queLmiU{\displaystyle L\leq E\leq U}.

Sistema de números flotantes normalizado

  • Un sistema de números de punto flotante se normaliza si el dígito principald0{\displaystyle d_{0}}siempre es distinto de cero a menos que el número sea cero. [ 3 ] Dado que la mantisa esd0.d1d2dpag1{\displaystyle d_{0}.d_{1}d_{2}\ldots d_{p-1}}, la mantisa de un número distinto de cero en un sistema normalizado satisface1significando<βpag{\displaystyle 1\leq {\text{significando}}<\beta ^{p}}Por lo tanto, la forma normalizada de un número de punto flotante IEEE distinto de cero es±1.bbb×2mi{\displaystyle \pm 1.bb\ldots b\times 2^{E}}dóndeb0,1{\displaystyle b\in {0,1}}En binario, el dígito principal siempre es1{\displaystyle 1}Por lo tanto, no se escribe y se denomina bit implícito. Esto proporciona un bit adicional de precisión, de modo que se reduce el error de redondeo causado por el error de representación.
  • Desde el sistema de números de punto flotanteF{\displaystyle F}es finito y discreto, no puede representar todos los números reales, lo que significa que los números reales infinitos solo pueden aproximarse mediante algunos números finitos a través de reglas de redondeo . La aproximación de punto flotante de un número real dadoincógnita{\displaystyle x}porFl(incógnita){\displaystyle fl(x)}puede denotarse.
    • El número total de números de punto flotante normalizados es2(β1)βpag1(UL+1)+1,{\displaystyle 2(\beta -1)\beta ^{p-1}(U-L+1)+1,}dónde
      • 2{\displaystyle 2}cuenta la elección del signo, ya sea positivo o negativo
      • (β1){\displaystyle (\beta -1)}cuenta la elección del dígito principal
      • βpag1{\displaystyle \beta ^{p-1}}cuenta los dígitos restantes de la mantisa
      • UL+1{\displaystyle U-L+1} counts choice of exponents
      • 1{\displaystyle 1} counts the case when the number is 0{\displaystyle 0}.

IEEE standard

In the IEEE standard the base is binary, i.e. β=2{\displaystyle \beta =2}, and normalization is used. The IEEE standard stores the sign, exponent, and significand in separate fields of a floating point word, each of which has a fixed width (number of bits). The two most commonly used levels of precision for floating-point numbers are single precision and double precision.

Machine epsilon

Machine epsilon can be used to measure the level of roundoff error in the floating-point number system. Here are two different definitions.[3]

  • The machine epsilon, denoted ϵmach{\displaystyle \epsilon _ {\text{mach}}}, is the maximum possible absolute relative error in representing a nonzero real number, x{\displaystyle x} in a floating-point number system. ϵmach=maxx|xfl(x)||x|{\displaystyle \epsilon _{\text{mach}}=\max _{x}{\frac {|x-\operatorname {fl} (x)|}{|x|}}}
  • The machine epsilon, denoted ϵmach{\displaystyle \epsilon _ {\text{mach}}}, is the smallest number ϵ{\displaystyle \epsilon } such that fl(1+ϵ)>1{\displaystyle \operatorname {fl} (1+\epsilon )>1}. Thus, fl(1+δ)=fl(1)=1{\displaystyle \operatorname {fl} (1+\delta )=\operatorname {fl} (1)=1}, whenever |δ|<ϵmach.{\displaystyle |\delta |<\epsilon _{\text{mach}}.}

Roundoff error under different rounding rules

There are two common rounding rules, round-by-chop and round-to-nearest. The IEEE standard uses round-to-nearest.

  • Round-by-chop: The base-β{\displaystyle \beta } expansion of x{\displaystyle x} is truncated after the (p1){\displaystyle (p-1)}-th digit.
    • This rounding rule is biased because it always moves the result toward zero.
  • Round-to-nearest: fl(x){\displaystyle \operatorname {fl} (x)} is set to the nearest floating-point number to x{\displaystyle x}. When there is a tie, the floating-point number whose last stored digit is even (also, the last digit, in binary form, is equal to 0) is used.
    • For IEEE standard where the base β{\displaystyle \beta } is 2{\displaystyle 2}, this means when there is a tie it is rounded so that the last digit is equal to 0{\displaystyle 0}.
    • This rounding rule is more accurate but more computationally expensive.
    • Rounding so that the last stored digit is even when there is a tie ensures that it is not rounded up or down systematically. This is to try to avoid the possibility of an unwanted slow drift in long calculations due simply to a biased rounding.

The following example illustrates the level of roundoff error under the two rounding rules.[3] The rounding rule, round-to-nearest, leads to less roundoff error in general.

Calculating roundoff error in IEEE standard

Suppose the usage of round-to-nearest and IEEE double precision.

Example: the decimal number (9.4)10=(1001.0110¯)2{\displaystyle (9.4)_{10}=(1001.{\overline {0110}})_{2}} can be rearranged into +1.001011001100110011001100110011001100110011001100110052 bits110×23{\displaystyle +1.\underbrace {0010110011001100110011001100110011001100110011001100} _{\text{52 bits}}110\ldots \times 2^{3}} Since the 53rd bit to the right of the binary point is a 1 and is followed by other nonzero bits, the round-to-nearest rule requires rounding up, that is, add 1 bit to the 52nd bit. Thus, the normalized floating-point representation in IEEE standard of 9.4 is fl(9.4)=1.0010110011001100110011001100110011001100110011001101×23.{\displaystyle \operatorname {fl} (9.4)=1.0010110011001100110011001100110011001100110011001101\times 2^{3}.}

Now, the roundoff error can be calculated when representing 9.4{\displaystyle 9.4}conFlorida(9.4){\displaystyle \operatorname {fl} (9.4)}Esta representación se obtiene descartando la cola infinita.0.1100¯×252×23=0.0110¯×251×23=0,4×248{\displaystyle 0.{\overline {1100}}\times 2^{-52}\times 2^{3}=0.{\overline {0110}}\times 2^{-51}\times 2^{3}=0.4\times 2^{-48}} desde la cola derecha y luego se agregó1×252×23=249{\displaystyle 1\times 2^{-52}\times 2^{3}=2^{-49}}en el paso de redondeo. LuegoFlorida(9.4)=9.40,4×248+249=9.4+(0,2)10×249.{\displaystyle \operatorname {fl} (9.4)=9.4-0.4\times 2^{-48}+2^{-49}=9.4+(0.2)_{10}\times 2^{-49}.}Por lo tanto, el error de redondeo es(0,2×249)10{\displaystyle (0.2\times 2^{-49})_{10}}.

Medición del error de redondeo mediante el uso de épsilon de máquina

La máquina épsilonϵmach{\displaystyle \epsilon _ {\text{mach}}}Se puede utilizar para medir el nivel de error de redondeo al usar las dos reglas de redondeo anteriores. A continuación se muestran las fórmulas y la demostración correspondiente. [ 3 ] Aquí se utiliza la primera definición de épsilon de máquina.

Teorema

  1. Ronda por ronda:ϵmach=β1pag{\displaystyle \epsilon _{\text{mach}}=\beta ^{1-p}}
  2. Redondear al número más cercano:ϵmach=12β1pag{\displaystyle \epsilon _{\text{mach}}={\frac {1}{2}}\beta ^{1-p}}

Prueba

Dejarincógnita=d0.d1d2dpag1dpag×βnorteR{\displaystyle x=d_{0}.d_{1}d_{2}\ldots d_{p-1}d_{p}\ldots \times \beta ^{n}\in \mathbb {R} }dóndenorte[L,U]{\displaystyle n\in [L,U]}y dejarFlorida(incógnita){\displaystyle \operatorname {fl} (x)}ser la representación de punto flotante deincógnita{\displaystyle x}. Dado que se está utilizando round-by-chop, es |incógnitaFlorida(incógnita)||incógnita|=|d0.d1d2dpag1dpagdpag+1×βnorted0.d1d2dpag1×βnorte||d0.d1d2×βnorte|=|dpag.dpag+1×βnortepag||d0.d1d2×βnorte|=|dpag.dpag+1dpag+2||d0.d1d2|×βpag{\displaystyle {\begin{aligned}{\frac {|x-\operatorname {fl} (x)|}{|x|}}&={\frac {|d_{0}.d_{1}d_{2}\ldots d_{p-1}d_{p}d_{p+1}\ldots \times \beta ^{n}-d_{0}.d_{1}d_{2}\ldots d_{p-1}\times \beta ^{n}|}{|d_{0}.d_{1}d_{2}\ldots \times \beta ^{n}|}}\\&={\frac {|d_{p}.d_{p+1}\ldots \times \beta ^{n-p}|}{|d_{0}.d_{1}d_{2}\ldots \times \beta ^{n}|}}\\&={\frac {|d_{p}.d_{p+1}d_{p+2}\ldots |}{|d_{0}.d_{1}d_{2}\ldots |}}\times \beta ^{-p}\end{aligned}}} Para determinar el máximo de esta cantidad, es necesario hallar el máximo del numerador y el mínimo del denominador. Dado qued00{\displaystyle d_{0}\neq 0}(sistema normalizado), el valor mínimo del denominador es1{\displaystyle 1}El numerador está limitado superiormente por(β1).(β1)(β1)¯=β{\displaystyle (\beta -1).(\beta -1){\overline {(\beta -1)}}=\beta }. De este modo,|incógnitaFl(incógnita)||incógnita|β1×βpag=β1pag.{\displaystyle {\frac {|x-fl(x)|}{|x|}}\leq {\frac {\beta }{1}}\times \beta ^{-p}=\beta ^{1-p}.}Por lo tanto,ϵ=β1pag{\displaystyle \epsilon =\beta ^{1-p}}para redondeo por corte. La demostración para redondeo al más cercano es similar.

  • Tenga en cuenta que la primera definición de épsilon de máquina no es exactamente equivalente a la segunda definición cuando se utiliza la regla de redondeo al más cercano, pero sí lo es para el redondeo por corte.

Error de redondeo causado por aritmética de punto flotante.

Aunque algunos números se pueden representar con exactitud mediante números de coma flotante, y estos números se denominan números de máquina , realizar aritmética de coma flotante puede dar lugar a errores de redondeo en el resultado final.

Suma

La suma automática consiste en alinear los puntos decimales de los dos números que se van a sumar, sumarlos y luego almacenar el resultado como un número de coma flotante. La suma en sí puede realizarse con mayor precisión, pero el resultado debe redondearse a la precisión especificada, lo que puede provocar errores de redondeo. [ 3 ]

  • Por ejemplo, añadir1{\displaystyle 1}a253{\displaystyle 2^{-53}}en precisión doble IEEE de la siguiente manera:1.000×20+1.000×253=1.00052 bits×20+0.00052 bits1×20=1.00052 bits1×20.{\displaystyle {\begin{aligned}1.00\ldots 0\times 2^{0}+1.00\ldots 0\times 2^{-53}&=1.\underbrace {00\ldots 0} _{\text{52 bits}}\times 2^{0}+0.\underbrace {00\ldots 0} _{\text{52 bits}}1\times 2^{0}\\&=1.\underbrace {00\ldots 0} _{\text{52 bits}}1\times 2^{0}.\end{aligned}}}Esto se guarda como1.00052 bits×20{\displaystyle 1.\underbrace {00\ldots 0} _{\text{52 bits}}\times 2^{0}}ya que el redondeo al más cercano se utiliza en el estándar IEEE. Por lo tanto,1+253{\displaystyle 1+2^{-53}}es igual a1{\displaystyle 1}en precisión doble IEEE y el error de redondeo es253{\displaystyle 2^{-53}}.

Este ejemplo muestra que se puede introducir un error de redondeo al sumar un número grande y uno pequeño. El desplazamiento de los puntos decimales en las mantisas para que los exponentes coincidan provoca la pérdida de algunos de los dígitos menos significativos. Esta pérdida de precisión puede describirse como absorción . [ 11 ]

Tenga en cuenta que la suma de dos números de coma flotante puede producir un error de redondeo cuando su suma es un orden de magnitud mayor que la del mayor de los dos.

  • Por ejemplo, consideremos un sistema de números de punto flotante normalizado con base10{\displaystyle 10}y precisión2{\displaystyle 2}. EntoncesFl(62)=6.2×101{\displaystyle fl(62)=6.2\times 10^{1}}yFl(41)=4.1×101{\displaystyle fl(41)=4.1\times 10^{1}}. Tenga en cuenta que62+41=103{\displaystyle 62+41=103}peroFl(103)=1.0×102{\displaystyle fl(103)=1.0\times 10^{2}}. Hay un error de redondeo de103Fl(103)=3{\displaystyle 103-fl(103)=3}.

Este tipo de error puede producirse junto con un error de absorción en una misma operación.

Multiplicación

En general, el producto de dos mantisas de p dígitos contiene hasta 2p dígitos, por lo que el resultado podría no caber en la mantisa. [ 3 ] Por lo tanto, el resultado estará sujeto a un error de redondeo.

  • Por ejemplo, consideremos un sistema de números de punto flotante normalizado con la baseβ=10{\displaystyle \beta =10}y los dígitos de la mantisa son como máximo2{\displaystyle 2}. EntoncesFl(77)=7.7×101{\displaystyle fl(77)=7.7\times 10^{1}}yFl(88)=8.8×101{\displaystyle fl(88)=8.8\times 10^{1}}. Tenga en cuenta que77×88=6776{\displaystyle 77\times 88=6776}peroFl(6776)=6.7×103{\displaystyle fl(6776)=6.7\times 10^{3}}ya que allí como máximo2{\displaystyle 2}dígitos de la mantisa. El error de redondeo sería6776Fl(6776)=67766.7×103=76{\displaystyle 6776-fl(6776)=6776-6.7\times 10^{3}=76}.

División

En general, el cociente de mantisas de 2p dígitos puede contener más de p dígitos. Por lo tanto, el resultado incluirá un error de redondeo.

  • Por ejemplo, si todavía se utiliza el sistema de números de punto flotante normalizado mencionado anteriormente, entonces1/3=0,333{\displaystyle 1/3=0.333\ldots }peroFl(1/3)=Fl(0,333)=3.3×101{\displaystyle fl(1/3)=fl(0.333\ldots )=3.3\times 10^{-1}}. Entonces, la cola0,3333.3×101=0,00333{\displaystyle 0.333\ldots -3.3\times 10^{-1}=0.00333\ldots }está cortado.

Sustracción

La absorción también se aplica a la resta.

  • Por ejemplo, restar260{\displaystyle 2^{-60}}de1{\displaystyle 1}en precisión doble IEEE de la siguiente manera:1.000×201.000×260=1.00060 bits×200.000160 bits×20=0,11160 bits×20.{\displaystyle {\begin{aligned}1.00\ldots 0\times 2^{0}-1.00\ldots 0\times 2^{-60}&=\underbrace {1.00\ldots 0} _{\text{60 bits}}\times 2^{0}-\underbrace {0.00\ldots 01} _{\text{60 bits}}\times 2^{0}\\&=\underbrace {0.11\ldots 1} _{\text{60 bits}}\times 2^{0}.\end{aligned}}}Esto se guarda como1.00053 bits×20{\displaystyle \underbrace {1.00\ldots 0} _{\text{53 bits}}\times 2^{0}}ya que el redondeo al más cercano se utiliza en el estándar IEEE. Por lo tanto,1260{\displaystyle 1-2^{-60}}es igual a1{\displaystyle 1}en precisión doble IEEE y el error de redondeo es260{\displaystyle -2^{-60}}.

La resta de dos números casi iguales se llama cancelación sustractiva . [ 3 ] Cuando se cancelan los dígitos principales, el resultado puede ser demasiado pequeño para ser representado exactamente y simplemente se representará como0{\displaystyle 0}.

  • Por ejemplo, dejemos|ϵ|<ϵmach{\displaystyle |\epsilon |<\epsilon _{\text{mach}}}y aquí se utiliza la segunda definición de épsilon de máquina. ¿Cuál es la solución a(1+ϵ)(1ϵ){\displaystyle (1+\epsilon )-(1-\epsilon )}¿ Se sabe que?1+ϵ{\displaystyle 1+\epsilon }y1ϵ{\displaystyle 1-\epsilon }son números casi iguales, y(1+ϵ)(1ϵ)=1+ϵ1+ϵ=2ϵ{\displaystyle (1+\epsilon )-(1-\epsilon )=1+\epsilon -1+\epsilon =2\epsilon }Sin embargo, en el sistema de números de punto flotante,Fl((1+ϵ)(1ϵ))=Fl(1+ϵ)Fl(1ϵ)=11=0{\displaystyle fl((1+\epsilon )-(1-\epsilon ))=fl(1+\epsilon )-fl(1-\epsilon )=1-1=0}. A pesar de2ϵ{\displaystyle 2\epsilon }es fácilmente lo suficientemente grande como para ser representado, ambos casos deϵ{\displaystyle \epsilon }han sido redondeados dando0{\displaystyle 0}.

Incluso con un tamaño algo mayorϵ{\displaystyle \epsilon }El resultado sigue siendo significativamente poco fiable en casos típicos. No hay mucha confianza en la exactitud del valor porque la mayor incertidumbre en cualquier número de coma flotante se encuentra en los dígitos del extremo derecho.

  • Por ejemplo,1.99999×1021.99998×102=0,00001×102=1×105×102=1×103{\displaystyle 1.99999\times 10^{2}-1.99998\times 10^{2}=0.00001\times 10^{2}=1\times 10^{-5}\times 10^{2}=1\times 10^{-3}}El resultado1×103{\displaystyle 1\times 10^{-3}}Es claramente representable, pero no hay mucha confianza en ello.

Esto está estrechamente relacionado con el fenómeno de la cancelación catastrófica , en el que se sabe que los dos números son aproximaciones.

Acumulación de errores de redondeo

Los errores pueden magnificarse o acumularse cuando se aplica una secuencia de cálculos a una entrada inicial con errores de redondeo debido a una representación inexacta.

Algoritmos inestables

Un algoritmo o proceso numérico se denomina estable si pequeños cambios en la entrada solo producen pequeños cambios en la salida, e inestable si se producen grandes cambios en la salida. [ 12 ] Por ejemplo, el cálculo deF(incógnita)=1+incógnita1{\displaystyle f(x)={\sqrt {1+x}}-1}El uso del método "obvio" es inestable cercaincógnita=0{\displaystyle x=0}debido al gran error introducido al restar dos cantidades similares, mientras que la expresión equivalenteF(incógnita)=incógnita1+incógnita+1{\displaystyle \textstyle {f(x)={\frac {x}{{\sqrt {1+x}}+1}}}}es estable. [ 12 ]

Problemas mal condicionados

Aunque se utilice un algoritmo estable, la solución a un problema puede seguir siendo imprecisa debido a la acumulación de errores de redondeo cuando el problema en sí está mal condicionado .

El número de condición de un problema es la razón entre el cambio relativo en la solución y el cambio relativo en la entrada. [ 3 ] Un problema está bien condicionado si pequeños cambios relativos en la entrada resultan en pequeños cambios relativos en la solución. De lo contrario, el problema está mal condicionado . [ 3 ] En otras palabras, un problema está mal condicionado si su número de condición es "mucho mayor" que 1.

El número de condición se introduce como una medida de los errores de redondeo que pueden resultar al resolver problemas mal condicionados. [ 7 ]

Véase también

Referencias

  1. Butt, Rizwan (2009), Introducción al análisis numérico con MATLAB , Jones & Bartlett Learning, pp. 11–18 , ISBN  978-0-76377376-2
  2. ^ Ueberhuber, Christoph W. (1997), Computación numérica 1: métodos, software y análisis , Springer, págs. 139-146 , ISBN  978-3-54062058-7
  3. 1 2 3 4 5 6 7 8 9 10 Forrester, Dick (2018). Métodos numéricos de matemáticas/computación 241 (apuntes de clase) . Dickinson College .
  4. Aksoy, Pelin; DeNardis, Laura (2007), Information Technology in Theory , Cengage Learning, p. 134, ISBN  978-1-42390140-2
  5. Ralston, Anthony; Rabinowitz, Philip (2012), A First Course in Numerical Analysis , Dover Books on Mathematics (2.ª ed.), Courier Dover Publications, pp. 2–4 , ISBN   978-0-48614029-2
  6. Chapman, Stephen (2012), MATLAB Programming with Applications for Engineers , Cengage Learning, p. 454, ISBN  978-1-28540279-6
  7. 1 2 Chapra, Steven (2012). Métodos numéricos aplicados con MATLAB para ingenieros y científicos (3.ª ed.). McGraw-Hill . ISBN  9780073401102.
  8. Laplante, Philip A. (2000). Diccionario de Ciencias de la Computación, Ingeniería y Tecnología . CRC Press . pág. 420. ISBN  978-0-84932691-2.
  9. Higham, Nicholas John (2002). Precisión y estabilidad de los algoritmos numéricos (2.ª ed.). Sociedad de Matemáticas Industriales y Aplicadas (SIAM). págs. 43–44 . ISBN   978-0-89871521-7.
  10. Volkov, EA (1990). Métodos numéricos . Taylor & Francis . pág. 24. ISBN  978-1-56032011-1.
  11. Biran, Adrian B.; Breiner, Moshe (2010). "5". Lo que todo ingeniero debería saber sobre MATLAB y Simulink . Boca Raton , Florida : CRC Press . págs. 193–194 . ISBN  978-1-4398-1023-1.
  12. 1 2 Collins, Charles (2005). "Condición y estabilidad" (PDF) . Departamento de Matemáticas de la Universidad de Tennessee . Recuperado el 28 de octubre de 2018 .

Lecturas adicionales

  • Matt Parker (2021). Humble Pi: Cuando las matemáticas fallan en el mundo real . Riverhead Books. ISBN 978-0593084694.
  • Error de redondeo en MathWorld.
  • Goldberg, David (marzo de 1991). "Lo que todo científico informático debería saber sobre la aritmética de punto flotante" (PDF) . ACM Computing Surveys . 23 (1): 5– 48. doi : 10.1145/103162.103163 . S2CID 222008826. Recuperado el 20 de enero de 2016 . (,)
  • 20 desastres de software famosos
  • Calculadora de redondeo
Obtenido de " https://en.wikipedia.org/w/index.php?title=Round-off_error&oldid=1353065956 "