En el análisis numérico , se pueden utilizar uno o más dígitos de protección para reducir la cantidad de error de redondeo .
Por ejemplo, suponga que el resultado final de un cálculo largo de varios pasos se puede redondear con seguridad a N lugares decimales. Es decir, el error de redondeo introducido por este redondeo final hace una contribución insignificante a la incertidumbre general.
Sin embargo, es bastante probable que es no seguro para redondear los pasos intermedios en el cálculo para el mismo número de dígitos. Tenga en cuenta que pueden acumularse errores de redondeo. Si se utilizan M lugares decimales en el cálculo intermedio, decimos que hay M − N dígitos de guarda.
Los dígitos de protección también se utilizan en operaciones de punto flotante en la mayoría de los sistemas informáticos. Dadotenemos que alinear los puntos binarios. Esto significa que debemos agregar un dígito adicional al primer operando: un dígito de protección. Esto nos da. Realizar esta operación nos da o . Sin usar un dígito de guardia tenemos, cediendo o . Esto nos da un error relativo de 1. Por lo tanto, podemos ver cuán importantes pueden ser los dígitos de protección.
En el siguiente código C se ilustra un ejemplo del error causado por el redondeo de coma flotante .
int main () { doble a ; int i ; a = 0,2 ; a + = 0,1 ; a - = 0,3 ; para ( i = 0 ; a < 1.0 ; i ++ ) a + = a ; printf ( "i =% d, a =% f \ n " , i , a ); return 0 ; }
Parece que el programa no debería terminar. Sin embargo, el resultado es:
i = 54, a = 1.000000
Otro ejemplo es:
Toma 2 números:
y
traemos el primer número a la misma potencia de como el segundo:
La suma de los 2 números es:
0.0256 * 10 ^ 2 2.3400 * 10 ^ 2 + ____________ 2.3656 * 10 ^ 2
Después de rellenar el segundo número (es decir, ) con dos s, el poco después es el dígito de protección y el bit posterior es el dígito redondo. El resultado después del redondeo es Opuesto a , sin los bits adicionales (guard y bits redondos), es decir, considerando solo . Por tanto, el error es.
Referencias
- Forman S. Acton . Métodos numéricos que funcionan , The Mathematical Association of America (agosto de 1997).
- Higham, Nicholas J. Precisión y estabilidad de algoritmos numéricos , Washington DC: Sociedad de Matemáticas Industriales y Aplicadas, 2002.