Está en la página 1de 131

Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec.

Maquina Overflow/Underflow

COMPUTACION CIENTIFICA
Contenido 4

Modelación numérica con Aplic. en Ing. Hidráulica y Ambiental

Yarko Niño

Departmento de Ingenierı́a Civil


Universidad de Chile

Agosto, 2012
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

COMPUTACION CIENTIFICA
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

COMPUTACION CIENTIFICA

”Diseño y análisis de algoritmos para resolver


numéricamente problemas matemáticos en ciencia e
ingenierı́a.”
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

COMPUTACION CIENTIFICA

”Diseño y análisis de algoritmos para resolver


numéricamente problemas matemáticos en ciencia e
ingenierı́a.”

También se le conoce como Análisis Numérico.


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

COMPUTACION CIENTIFICA

”Diseño y análisis de algoritmos para resolver


numéricamente problemas matemáticos en ciencia e
ingenierı́a.”

También se le conoce como Análisis Numérico.

Sus principales objetivos son la simulación de fenómenos fı́sicos y


el diseño de prototipos o productos.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

FUENTES DE ERRORES
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

FUENTES DE ERRORES

ANTES DE CALCULAR
Modelamiento matemático, (qué ecuaciones?).
Mediciones de parámetros.
Cálculos previos.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

FUENTES DE ERRORES

ANTES DE CALCULAR
Modelamiento matemático, (qué ecuaciones?).
Mediciones de parámetros.
Cálculos previos.
DURANTE EL CALCULO:
Errores de truncación o discretización.
Errores de redondeo.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

FUENTES DE ERRORES

ANTES DE CALCULAR
Modelamiento matemático, (qué ecuaciones?).
Mediciones de parámetros.
Cálculos previos.
DURANTE EL CALCULO:
Errores de truncación o discretización.
Errores de redondeo.

Calidad del resultado final depende de todas estas fuentes de errores.


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

FUENTES DE ERRORES

ANTES DE CALCULAR
Modelamiento matemático, (qué ecuaciones?).
Mediciones de parámetros.
Cálculos previos.
DURANTE EL CALCULO:
Errores de truncación o discretización.
Errores de redondeo.

Calidad del resultado final depende de todas estas fuentes de errores.


Errores en los datos de entrada pueden ser amplificados durante el cálculo.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

FUENTES DE ERRORES

ANTES DE CALCULAR
Modelamiento matemático, (qué ecuaciones?).
Mediciones de parámetros.
Cálculos previos.
DURANTE EL CALCULO:
Errores de truncación o discretización.
Errores de redondeo.

Calidad del resultado final depende de todas estas fuentes de errores.


Errores en los datos de entrada pueden ser amplificados durante el cálculo.
Perturbaciones durante el cálculo pueden ser amplificados por ciertos
algoritmos numéricos.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

FUENTES DE ERRORES

EJEMPLO: Superficie de la Tierra

Calcular la superficie de la Tierra asumiendo que es una esfera,

A = 4πr2
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

FUENTES DE ERRORES

EJEMPLO: Superficie de la Tierra

Calcular la superficie de la Tierra asumiendo que es una esfera,

A = 4πr2

Fuentes de errores:

Tierra no es exactamente esférica.


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

FUENTES DE ERRORES

EJEMPLO: Superficie de la Tierra

Calcular la superficie de la Tierra asumiendo que es una esfera,

A = 4πr2

Fuentes de errores:

Tierra no es exactamente esférica.


Valor del radio basado en mediciones externas.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

FUENTES DE ERRORES

EJEMPLO: Superficie de la Tierra

Calcular la superficie de la Tierra asumiendo que es una esfera,

A = 4πr2

Fuentes de errores:

Tierra no es exactamente esférica.


Valor del radio basado en mediciones externas.
Valor para π deber ser truncado.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

FUENTES DE ERRORES

EJEMPLO: Superficie de la Tierra

Calcular la superficie de la Tierra asumiendo que es una esfera,

A = 4πr2

Fuentes de errores:

Tierra no es exactamente esférica.


Valor del radio basado en mediciones externas.
Valor para π deber ser truncado.
Cómputos en calculadora o PC deben ser redondeados.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE ENTRADA Y COMPUTACIONAL


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE ENTRADA Y COMPUTACIONAL

PROBLEMA:

Dada una entrada x, calcule el valor de la función f : R → R.


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE ENTRADA Y COMPUTACIONAL

PROBLEMA:

Dada una entrada x, calcule el valor de la función f : R → R.

Sin embargo, muchas veces la verdadera entrada x es aproximada por


una entrada x̂ y la función f es aproximada por una función fˆ, de tal
forma que el error total es,
h i
fˆ(x̂) − f (x) = fˆ(x̂) − f (x̂) + [f (x̂) − f (x)]

= [error computacional] + [error propagado de entrada]


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE ENTRADA Y COMPUTACIONAL

PROBLEMA:

Dada una entrada x, calcule el valor de la función f : R → R.

Sin embargo, muchas veces la verdadera entrada x es aproximada por


una entrada x̂ y la función f es aproximada por una función fˆ, de tal
forma que el error total es,
h i
fˆ(x̂) − f (x) = fˆ(x̂) − f (x̂) + [f (x̂) − f (x)]

= [error computacional] + [error propagado de entrada]

Algoritmo afecta solo error computacional.


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE TRUNCACION Y REDONDEO


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE TRUNCACION Y REDONDEO

Error de Truncación: Diferencia entre resultado verdadero y resultado


producido por un algoritmo que usa aritmética exacta.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE TRUNCACION Y REDONDEO

Error de Truncación: Diferencia entre resultado verdadero y resultado


producido por un algoritmo que usa aritmética exacta.

Por ejemplo, truncar una serie infinita para aproximar una función.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE TRUNCACION Y REDONDEO

Error de Truncación: Diferencia entre resultado verdadero y resultado


producido por un algoritmo que usa aritmética exacta.

Por ejemplo, truncar una serie infinita para aproximar una función.

Error de Redondeo: Diferencia entre resultados producidos por el mismo


algoritmo usando aritmética exacta y aritmética con limitada precisión.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE TRUNCACION Y REDONDEO

Error de Truncación: Diferencia entre resultado verdadero y resultado


producido por un algoritmo que usa aritmética exacta.

Por ejemplo, truncar una serie infinita para aproximar una función.

Error de Redondeo: Diferencia entre resultados producidos por el mismo


algoritmo usando aritmética exacta y aritmética con limitada precisión.

Este error es debido a la representación de números reales en


computadores, que tienen limitada precisión.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE TRUNCACION Y REDONDEO

Error de Truncación: Diferencia entre resultado verdadero y resultado


producido por un algoritmo que usa aritmética exacta.

Por ejemplo, truncar una serie infinita para aproximar una función.

Error de Redondeo: Diferencia entre resultados producidos por el mismo


algoritmo usando aritmética exacta y aritmética con limitada precisión.

Este error es debido a la representación de números reales en


computadores, que tienen limitada precisión.

Error Computational = Error de Truncación + Error de Redondeo.


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE TRUNCACION Y REDONDEO

Error de Truncación: Diferencia entre resultado verdadero y resultado


producido por un algoritmo que usa aritmética exacta.

Por ejemplo, truncar una serie infinita para aproximar una función.

Error de Redondeo: Diferencia entre resultados producidos por el mismo


algoritmo usando aritmética exacta y aritmética con limitada precisión.

Este error es debido a la representación de números reales en


computadores, que tienen limitada precisión.

Error Computational = Error de Truncación + Error de Redondeo.

Generalmente, uno de los dos domina!


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE TRUNCACION Y REDONDEO

EJEMPLO: Aproximación por Diferencias Finitas

f 00 (x)h2
f (x + h) = f (x) + f 0 (x)h + + ...
2
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE TRUNCACION Y REDONDEO

EJEMPLO: Aproximación por Diferencias Finitas

f 00 (x)h2
f (x + h) = f (x) + f 0 (x)h + + ...
2
Aproximación de primer orden:

f (x + h) − f (x)
f 0 (x) ≈ + O(h2 )
h
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE TRUNCACION Y REDONDEO

EJEMPLO: Aproximación por Diferencias Finitas

f 00 (x)h2
f (x + h) = f (x) + f 0 (x)h + + ...
2
Aproximación de primer orden:

f (x + h) − f (x)
f 0 (x) ≈ + O(h2 )
h

Error de truncación acotado por: M h/2, donde M ≥ |f 00 (t)| para t cerca de x.


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE TRUNCACION Y REDONDEO

EJEMPLO: Aproximación por Diferencias Finitas

f 00 (x)h2
f (x + h) = f (x) + f 0 (x)h + + ...
2
Aproximación de primer orden:

f (x + h) − f (x)
f 0 (x) ≈ + O(h2 )
h

Error de truncación acotado por: M h/2, donde M ≥ |f 00 (t)| para t cerca de x.

Error de redondeo acotado por 2/h, donde error en la evaluación de la función


es acotado por .
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ERROR DE TRUNCACION Y REDONDEO

EJEMPLO: Aproximación por Diferencias Finitas

f 00 (x)h2
f (x + h) = f (x) + f 0 (x)h + + ...
2
Aproximación de primer orden:

f (x + h) − f (x)
f 0 (x) ≈ + O(h2 )
h

Error de truncación acotado por: M h/2, donde M ≥ |f 00 (t)| para t cerca de x.

Error de redondeo acotado por 2/h, donde error en la evaluación de la función


es acotado por .

Error de redondeo aumenta cuando h disminuye. Por otro lado, error de


truncación aumenta cuando h aumenta.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

SENSIBILIDAD
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

SENSIBILIDAD

Problema no es sensible o es bien condicionado, si cambios en los datos


de entrada producen diferencias en los resultados del mismo orden de
magnitud.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

SENSIBILIDAD

Problema no es sensible o es bien condicionado, si cambios en los datos


de entrada producen diferencias en los resultados del mismo orden de
magnitud.
Problema es sensible o es mal condicionado, si cambios en los datos de
entrada producen diferencias muy grandes en los resultados.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

SENSIBILIDAD

Problema no es sensible o es bien condicionado, si cambios en los datos


de entrada producen diferencias en los resultados del mismo orden de
magnitud.
Problema es sensible o es mal condicionado, si cambios en los datos de
entrada producen diferencias muy grandes en los resultados.
Número de condicionamiento (conditioning number ):

|cambio relativo en la solucion|


cond =
|cambio relativo en los datos de entrada|
|[f (x̂) − f (x)] /f (x)|
=
|[x̂ − x] /x|
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

SENSIBILIDAD

Problema no es sensible o es bien condicionado, si cambios en los datos


de entrada producen diferencias en los resultados del mismo orden de
magnitud.
Problema es sensible o es mal condicionado, si cambios en los datos de
entrada producen diferencias muy grandes en los resultados.
Número de condicionamiento (conditioning number ):

|cambio relativo en la solucion|


cond =
|cambio relativo en los datos de entrada|
|[f (x̂) − f (x)] /f (x)|
=
|[x̂ − x] /x|

Problema es mal condicionado si:

cond  1
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: EVALUACION DE UNA FUNCION


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: EVALUACION DE UNA FUNCION

PROBLEMA: Evaluar f para datos de entrada aproximados


x + ∆x.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: EVALUACION DE UNA FUNCION

PROBLEMA: Evaluar f para datos de entrada aproximados


x + ∆x.

Entonces el error absoluto puede ser aproximado como,

f (x + ∆x) − f (x) ≈ f 0 (x)∆x


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: EVALUACION DE UNA FUNCION

PROBLEMA: Evaluar f para datos de entrada aproximados


x + ∆x.

Entonces el error absoluto puede ser aproximado como,

f (x + ∆x) − f (x) ≈ f 0 (x)∆x

y el error relativo es

f (x + ∆x) − f (x) f 0 (x)∆x



f (x) f (x)
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: EVALUACION DE UNA FUNCION

PROBLEMA: Evaluar f para datos de entrada aproximados


x + ∆x.

Entonces el error absoluto puede ser aproximado como,

f (x + ∆x) − f (x) ≈ f 0 (x)∆x

y el error relativo es

f (x + ∆x) − f (x) f 0 (x)∆x



f (x) f (x)
0
f (x)∆x/f (x) xf 0 (x)

cond ≈ =
∆x/x f (x)
El valor de cond depende de la forma de la función f y del valor x.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: FUNCION MAL CONDICIONADA


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: FUNCION MAL CONDICIONADA

SEA: f (x) = tan x y f 0 (x) = sec2 (x) = 1 + tan2 (x).


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: FUNCION MAL CONDICIONADA

SEA: f (x) = tan x y f 0 (x) = sec2 (x) = 1 + tan2 (x).

Entonces,

xf (x) x 1 + tan2 (x)
0
cond ≈
=
f (x) tan(x)


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: FUNCION MAL CONDICIONADA

SEA: f (x) = tan x y f 0 (x) = sec2 (x) = 1 + tan2 (x).

Entonces,

xf (x) x 1 + tan2 (x)
0
cond ≈
=
f (x) tan(x)


 
1
cond ≈ x + tan(x)
tan(x)

Entonces, para x = π/2, cond → ∞


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: FUNCION MAL CONDICIONADA

SEA: f (x) = tan x y f 0 (x) = sec2 (x) = 1 + tan2 (x).

Entonces,

xf (x) x 1 + tan2 (x)
0
cond ≈
=
f (x) tan(x)


 
1
cond ≈ x + tan(x)
tan(x)

Entonces, para x = π/2, cond → ∞

Por ejemplo,
tan(1, 57079) ≈ 1, 58058 · 105
tan(1, 57078) ≈ 6, 12490 · 104
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: FUNCION MAL CONDICIONADA

SEA: f (x) = tan x y f 0 (x) = sec2 (x) = 1 + tan2 (x).

Entonces,

xf (x) x 1 + tan2 (x)
0
cond ≈
=
f (x) tan(x)


 
1
cond ≈ x + tan(x)
tan(x)

Entonces, para x = π/2, cond → ∞

Por ejemplo,
tan(1, 57079) ≈ 1, 58058 · 105
tan(1, 57078) ≈ 6, 12490 · 104
Entonces, para x = 1, 57079, cond = 2, 48275 · 105
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ESTABILIDAD
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ESTABILIDAD

Estabilidad de un algoritmo es análoga a la sensibilidad de un problema.


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ESTABILIDAD

Estabilidad de un algoritmo es análoga a la sensibilidad de un problema.

Un algoritmo es estable si su resultado es relativamente insensible a


perturbaciones durante el cálculo.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ESTABILIDAD

Estabilidad de un algoritmo es análoga a la sensibilidad de un problema.

Un algoritmo es estable si su resultado es relativamente insensible a


perturbaciones durante el cálculo.

Para un algoritmo estable, el error computacional no es peor que el error


en los datos de entrada.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION
Precisión expresa la proximidad de la solución computada a la verdadera
solución del problema.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION
Precisión expresa la proximidad de la solución computada a la verdadera
solución del problema.

Estabilidad ; Precisión.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION
Precisión expresa la proximidad de la solución computada a la verdadera
solución del problema.

Estabilidad ; Precisión.

Precisión depende de la estabilidad del algoritmo y de la sensibilidad del


problema.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION
Precisión expresa la proximidad de la solución computada a la verdadera
solución del problema.

Estabilidad ; Precisión.

Precisión depende de la estabilidad del algoritmo y de la sensibilidad del


problema.

Falta de precisión puede deberse a:


usar un algoritmo estable para resolver un problema mal
condicionado, o
a resolver un problema bien condicionado con un algoritmo
inestable.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION
Precisión expresa la proximidad de la solución computada a la verdadera
solución del problema.

Estabilidad ; Precisión.

Precisión depende de la estabilidad del algoritmo y de la sensibilidad del


problema.

Falta de precisión puede deberse a:


usar un algoritmo estable para resolver un problema mal
condicionado, o
a resolver un problema bien condicionado con un algoritmo
inestable.

Precisión requiere aplicar un algoritmo estable a un problema bien


condicionado.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

NUMEROS DE COMA FLOTANTE


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

NUMEROS DE COMA FLOTANTE


Sistema de números de coma flotante representado por cuatro números
enteros:

β base o radix
p precisión
[L, U ] rango de exponentes
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

NUMEROS DE COMA FLOTANTE


Sistema de números de coma flotante representado por cuatro números
enteros:

β base o radix
p precisión
[L, U ] rango de exponentes

Número x representado como:


 
d1 d2 dp−1
x = ± d0 + + 2 + . . . + p−1 β E
β β β
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

NUMEROS DE COMA FLOTANTE


Sistema de números de coma flotante representado por cuatro números
enteros:

β base o radix
p precisión
[L, U ] rango de exponentes

Número x representado como:


 
d1 d2 dp−1
x = ± d0 + + 2 + . . . + p−1 β E
β β β
con 0 ≤ di ≤ β − 1, i = 0, . . . , p − 1, y L≤E≤U

d0 d1 . . . dp−1 es la mantissa.
d1 d2 . . . dp−1 es la fracción.
E es el exponente.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

NUMEROS DE COMA FLOTANTE

Gran mayorı́a de computadores usan sistema binario (β = 2), pero con


distintos parámetros:

Sistema β p L U
IEEE SP 2 24 -126 127
IEEE DP 2 53 -1022 1023
Cray 2 48 -16383 16384
Calculadora HP 10 12 -499 499
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

NUMEROS DE COMA FLOTANTE

Gran mayorı́a de computadores usan sistema binario (β = 2), pero con


distintos parámetros:

Sistema β p L U
IEEE SP 2 24 -126 127
IEEE DP 2 53 -1022 1023
Cray 2 48 -16383 16384
Calculadora HP 10 12 -499 499

IEEE es el estándar actual implementado en la mayorı́a de computadores


personales y servidores.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

NORMALIZACION
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

NORMALIZACION

Un sistema de números de coma flotante es normalizado si el primer


dı́gito d0 es cero sólo si el número representado es 0.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

NORMALIZACION

Un sistema de números de coma flotante es normalizado si el primer


dı́gito d0 es cero sólo si el número representado es 0.

En un sistema normalizado la mantissa m de un número distinto de cero


siempre satisface

1≤m≤β
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

NORMALIZACION

Un sistema de números de coma flotante es normalizado si el primer


dı́gito d0 es cero sólo si el número representado es 0.

En un sistema normalizado la mantissa m de un número distinto de cero


siempre satisface

1≤m≤β

Ventajas de normalización:
representación de cada número es única.
no es necesario utilizar dı́gitos para representar ceros al comienzo
del número.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PROPIEDADES DE SISTEMAS DE COMA FLOTANTE


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PROPIEDADES DE SISTEMAS DE COMA FLOTANTE


Un sistema de números de coma flotante es discreto y finito.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PROPIEDADES DE SISTEMAS DE COMA FLOTANTE


Un sistema de números de coma flotante es discreto y finito.

Número máximo de números normalizados de coma flotante:

2(β − 1)β p−1 (U − L + 1) + 1


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PROPIEDADES DE SISTEMAS DE COMA FLOTANTE


Un sistema de números de coma flotante es discreto y finito.

Número máximo de números normalizados de coma flotante:

2(β − 1)β p−1 (U − L + 1) + 1

Menor número posible de representar:

underflow level = U F L = β L
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PROPIEDADES DE SISTEMAS DE COMA FLOTANTE


Un sistema de números de coma flotante es discreto y finito.

Número máximo de números normalizados de coma flotante:

2(β − 1)β p−1 (U − L + 1) + 1

Menor número posible de representar:

underflow level = U F L = β L

Mayor número posible de representar:

overflow level = OF L = β U +1 1 − β −p

Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PROPIEDADES DE SISTEMAS DE COMA FLOTANTE


Un sistema de números de coma flotante es discreto y finito.

Número máximo de números normalizados de coma flotante:

2(β − 1)β p−1 (U − L + 1) + 1

Menor número posible de representar:

underflow level = U F L = β L

Mayor número posible de representar:

overflow level = OF L = β U +1 1 − β −p


No todos los números reales son representales en un sistema de números


de coma flotante. Los que lo son, son conocidos como números de
máquina (machine numbers).
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: UFL Y OFL


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: UFL Y OFL

Asuma sistema de números de coma flotante con β = 2, p = 3, L = −1,


y U = 1, entonces:

U F L = β L = 0.5
OF L = β U +1 1 − β −p = 3.5


N M AX = 2(β − 1)β p−1 (U − L + 1) + 1 = 25


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

EJEMPLO: UFL Y OFL

Asuma sistema de números de coma flotante con β = 2, p = 3, L = −1,


y U = 1, entonces:

U F L = β L = 0.5
OF L = β U +1 1 − β −p = 3.5


N M AX = 2(β − 1)β p−1 (U − L + 1) + 1 = 25

Sistemas de números de coma flotante son discretos con espaciamiento


desigual.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

REGLAS DE REDONDEO
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

REGLAS DE REDONDEO

Si un número real no es exactamente representable, entonces deber ser


aproximado por un número cercano.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

REGLAS DE REDONDEO

Si un número real no es exactamente representable, entonces deber ser


aproximado por un número cercano.

Proceso de aproximación ⇒ redondeo.


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

REGLAS DE REDONDEO

Si un número real no es exactamente representable, entonces deber ser


aproximado por un número cercano.

Proceso de aproximación ⇒ redondeo.

Las dos reglas de redondeo más comunes son:

Truncar (chop): cortar expansión en base-β después de p − 1


dı́gitos. También se llama redondeo hacia el cero.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

REGLAS DE REDONDEO

Si un número real no es exactamente representable, entonces deber ser


aproximado por un número cercano.

Proceso de aproximación ⇒ redondeo.

Las dos reglas de redondeo más comunes son:

Truncar (chop): cortar expansión en base-β después de p − 1


dı́gitos. También se llama redondeo hacia el cero.
Rendondear a más próximo (round to nearest): la representación
fl(x) es el número más cercano a x. Se usa un número de coma
flotante cuyo último dı́gito es par en caso de empate (round to
even).
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

REDONDEO Y TRUNCACION

EJEMPLO:

Número Truncar Redondear


1,649 1,6 1,6
1,650 1,6 1,6
1,651 1,6 1,7
1,699 1,6 1,7
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

REDONDEO Y TRUNCACION

EJEMPLO:

Número Truncar Redondear


1,649 1,6 1,6
1,650 1,6 1,6
1,651 1,6 1,7
1,699 1,6 1,7

Redondeo es más preciso que truncación, por lo que es el método


estándar en el sistema IEEE (Institute of Electrical and Electronics
Engineers).
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

REDONDEO Y TRUNCACION

EJEMPLO:

Número Truncar Redondear


1,649 1,6 1,6
1,650 1,6 1,6
1,651 1,6 1,7
1,699 1,6 1,7

Redondeo es más preciso que truncación, por lo que es el método


estándar en el sistema IEEE (Institute of Electrical and Electronics
Engineers).

NOTA: Más detalles acerca del sistema IEEE en:


http://en.wikipedia.org/wiki/IEEE 754-2008
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION DE LA MAQUINA
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION DE LA MAQUINA

Precisión de la máquina (machine precision, o machine epsilon), mach ,


representa la precisión de un sistema de números de coma flotante.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION DE LA MAQUINA

Precisión de la máquina (machine precision, o machine epsilon), mach ,


representa la precisión de un sistema de números de coma flotante.

Truncación: mach = β 1−p

Redondeo: mach = 12 β 1−p


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION DE LA MAQUINA

Precisión de la máquina (machine precision, o machine epsilon), mach ,


representa la precisión de un sistema de números de coma flotante.

Truncación: mach = β 1−p

Redondeo: mach = 12 β 1−p

Definición alternativa: Menor número , tal que

(1 + ) > 1
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION DE LA MAQUINA

Precisión de la máquina (machine precision, o machine epsilon), mach ,


representa la precisión de un sistema de números de coma flotante.

Truncación: mach = β 1−p

Redondeo: mach = 12 β 1−p

Definición alternativa: Menor número , tal que

(1 + ) > 1

El máximo error relativo para representar un número x es,



fl(x) − x
≤ mach
x
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION DE LA MAQUINA

Precisión de la máquina (machine precision, o machine epsilon), mach ,


representa la precisión de un sistema de números de coma flotante.

Truncación: mach = β 1−p

Redondeo: mach = 12 β 1−p

Definición alternativa: Menor número , tal que

(1 + ) > 1

El máximo error relativo para representar un número x es,



fl(x) − x
≤ mach
Floating point: fl(x) x
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION DE LA MAQUINA

Para sistema de números de coma flotante con β = 2, p = 3, L = −1, y


U = 1, entonces:

mach = 0, 25 para truncación.


mach = 0, 125 para redondeo.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION DE LA MAQUINA

Para sistema de números de coma flotante con β = 2, p = 3, L = −1, y


U = 1, entonces:

mach = 0, 25 para truncación.


mach = 0, 125 para redondeo.

Para sistema IEEE


mach = 2−24 = 10−7 para precisión simple (SP).
mach = 2−53 = 10−16 para precisión doble (DP).
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION DE LA MAQUINA
En todos los sistemas prácticos de números de coma flotante,

0 < U F L < mach < OF L

Normalización causa espacio alrededor del zero,


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

PRECISION DE LA MAQUINA
En todos los sistemas prácticos de números de coma flotante,

0 < U F L < mach < OF L

Normalización causa espacio alrededor del zero,

Esa es la motivación para implementar sistemas subnormalizados, donde


el primer dı́gito puede ser zero sólo si el exponente E = −L. En ese caso,
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

NUMEROS ESPECIALES
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

NUMEROS ESPECIALES

En algunas situaciones el resultado de una operación es indefinido o no


representable en el sistema de número flotante, por lo que los resultados
de esas operaciones deben ser tratados de forma especial.

Inf, representa infinito y es el resultado de operaciones como 1/0.


NaN ( Not a number), por ejemplo el resultado de 0/0, 0*Inf,
Inf/Inf.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

NUMEROS ESPECIALES

En algunas situaciones el resultado de una operación es indefinido o no


representable en el sistema de número flotante, por lo que los resultados
de esas operaciones deben ser tratados de forma especial.

Inf, representa infinito y es el resultado de operaciones como 1/0.


NaN ( Not a number), por ejemplo el resultado de 0/0, 0*Inf,
Inf/Inf.

El estándard IEEE especifica el resultado de operaciones que tienen Inf o


NaN como argumentos.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ARITMETICA NUMEROS ESPECIALES


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ARITMETICA NUMEROS ESPECIALES

Suma o resta: Traslado de mantissa puede ocasionar pérdida de


dı́gitos en argumento más pequeño.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ARITMETICA NUMEROS ESPECIALES

Suma o resta: Traslado de mantissa puede ocasionar pérdida de


dı́gitos en argumento más pequeño.

Multiplicación: Producto de dos mantissas con p dı́gitos puede


tener hasta 2p dı́gitos que no pueden ser almacenados.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ARITMETICA NUMEROS ESPECIALES

Suma o resta: Traslado de mantissa puede ocasionar pérdida de


dı́gitos en argumento más pequeño.

Multiplicación: Producto de dos mantissas con p dı́gitos puede


tener hasta 2p dı́gitos que no pueden ser almacenados.

División: Cuociente de dos mantissas con p dı́gitos puede tener


más de p dı́gitos que no pueden ser almacenados. Ejemplo, 1/10 en
base 2.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ARITMETICA NUMEROS ESPECIALES

Suma o resta: Traslado de mantissa puede ocasionar pérdida de


dı́gitos en argumento más pequeño.

Multiplicación: Producto de dos mantissas con p dı́gitos puede


tener hasta 2p dı́gitos que no pueden ser almacenados.

División: Cuociente de dos mantissas con p dı́gitos puede tener


más de p dı́gitos que no pueden ser almacenados. Ejemplo, 1/10 en
base 2.

CONCLUSION: Resultado de operaciones aritméticas con números de


coma flotante pueden ser (muy) distintos a los resultados de las mismas
operaciones con números reales.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ARITMETICA NUMEROS DE COMA FLOTANTE

EJEMPLOS:

Tomando β = 10 y p = 6 y los números: x = 1.92403 · 102 y


y = 6.35782 · 10−1 .

Calcule:
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ARITMETICA NUMEROS DE COMA FLOTANTE

EJEMPLOS:

Tomando β = 10 y p = 6 y los números: x = 1.92403 · 102 y


y = 6.35782 · 10−1 .

Calcule:

x+y =
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ARITMETICA NUMEROS DE COMA FLOTANTE

EJEMPLOS:

Tomando β = 10 y p = 6 y los números: x = 1.92403 · 102 y


y = 6.35782 · 10−1 .

Calcule:

x + y = 192, 403 + 0, 635782 = 193, 03878


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ARITMETICA NUMEROS DE COMA FLOTANTE

EJEMPLOS:

Tomando β = 10 y p = 6 y los números: x = 1.92403 · 102 y


y = 6.35782 · 10−1 .

Calcule:

x + y = 192, 403 + 0, 635782 = 193, 03878 = 1, 93039 · 102


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ARITMETICA NUMEROS DE COMA FLOTANTE

EJEMPLOS:

Tomando β = 10 y p = 6 y los números: x = 1.92403 · 102 y


y = 6.35782 · 10−1 .

Calcule:

x + y = 192, 403 + 0, 635782 = 193, 03878 = 1, 93039 · 102


x ∗ y = 12, 2326364146 · 101 = 1, 22326 · 102
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

ARITMETICA NUMEROS DE COMA FLOTANTE

EJEMPLOS:

Tomando β = 10 y p = 6 y los números: x = 1.92403 · 102 y


y = 6.35782 · 10−1 .

Calcule:

x + y = 192, 403 + 0, 635782 = 193, 03878 = 1, 93039 · 102


x ∗ y = 12, 2326364146 · 101 = 1, 22326 · 102

En ambos casos se pierden dı́gitos cuando se redondean los resultados.


Para valores más pequeños de y el efecto del redondeo serı́a peor.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

OVERFLOW Y UNDERFLOW
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

OVERFLOW Y UNDERFLOW

En algunos casos el resultado de una operación puede no ser representable


porque el exponente E > U (overflow) o E < L (undeflow).
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

OVERFLOW Y UNDERFLOW

En algunos casos el resultado de una operación puede no ser representable


porque el exponente E > U (overflow) o E < L (undeflow).

En general, underflow no es problema porque resultado puede ser


aproximado por 0.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

OVERFLOW Y UNDERFLOW

En algunos casos el resultado de una operación puede no ser representable


porque el exponente E > U (overflow) o E < L (undeflow).

En general, underflow no es problema porque resultado puede ser


aproximado por 0.

Overflow es más difı́cil porque no existe buena aproximación.


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

OVERFLOW Y UNDERFLOW

En algunos casos el resultado de una operación puede no ser representable


porque el exponente E > U (overflow) o E < L (undeflow).

En general, underflow no es problema porque resultado puede ser


aproximado por 0.

Overflow es más difı́cil porque no existe buena aproximación.

En general, overflow puede causar problemas (ej. NaN), mientras que


underflow es silencioso.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

OVERFLOW Y UNDERFLOW

EJEMPLO:
Considere la serie,

X 1
n=1
n
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

OVERFLOW Y UNDERFLOW

EJEMPLO:
Considere la serie,

X 1
n=1
n

Esta serie es divergente si es evaluada con aritmética con precisión


infinita, pero tiene un valor finito si es evaluada en un computador.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

OVERFLOW Y UNDERFLOW

EJEMPLO:
Considere la serie,

X 1
n=1
n

Esta serie es divergente si es evaluada con aritmética con precisión


infinita, pero tiene un valor finito si es evaluada en un computador.

Causas:
Suma es más grande que el máximo número que se puede
representar OFL (overflow).
1/n es más pequeño que UFL y no agrega nada a la suma.
1/n es demasiado pequeño en comparación al resultado parcial de la
suma, 1
n−1
X1
≤ mach
n k
k=1
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

REGLAS DE ARIMETICA DE NUMEROS DE COMA


FLOTANTE
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

REGLAS DE ARIMETICA DE NUMEROS DE COMA


FLOTANTE

En la mayorı́a de los casos resultados computados con aritmética de


sistemas de coma flotante son cercanos al redondeo de resultados
computados con números reales.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

REGLAS DE ARIMETICA DE NUMEROS DE COMA


FLOTANTE

En la mayorı́a de los casos resultados computados con aritmética de


sistemas de coma flotante son cercanos al redondeo de resultados
computados con números reales.

Sin embargo algunas propiedades de las operaciones con números reales


no son válidas con números de coma flotante. Por ejemplo, suma y
multiplicación son conmutativas pero no asociativas.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

REGLAS DE ARIMETICA DE NUMEROS DE COMA


FLOTANTE

En la mayorı́a de los casos resultados computados con aritmética de


sistemas de coma flotante son cercanos al redondeo de resultados
computados con números reales.

Sin embargo algunas propiedades de las operaciones con números reales


no son válidas con números de coma flotante. Por ejemplo, suma y
multiplicación son conmutativas pero no asociativas.

Ejemplo, si  es un poco menor que mach , entonces

(1 + ) +  = 1
pero
1 + ( + ) > 1
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

CANCELACION
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

CANCELACION

Resta entre dos números de similar magnitud resulta en la cancelación de


las primeras cifras significativas ⇒ resultado tiene menos cifras
significativas que los operandos.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

CANCELACION

Resta entre dos números de similar magnitud resulta en la cancelación de


las primeras cifras significativas ⇒ resultado tiene menos cifras
significativas que los operandos.

Por ejemplo:

1, 92403 · 102 − 1, 92275 · 102 = 1, 28000 · 10−1


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

CANCELACION

Resta entre dos números de similar magnitud resulta en la cancelación de


las primeras cifras significativas ⇒ resultado tiene menos cifras
significativas que los operandos.

Por ejemplo:

1, 92403 · 102 − 1, 92275 · 102 = 1, 28000 · 10−1


Eliminación de cifras significativas representa una pérdida de información.
Por ejemplo, si  es un poco más pequeño que mach , entonces

(1 + ) − (1 − ) = 1 − 1 = 0 6= 2
Resultado incorrecto debido a pérdida de información durante
operaciones intermedias.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

CANCELACION

Resta entre dos números de similar magnitud resulta en la cancelación de


las primeras cifras significativas ⇒ resultado tiene menos cifras
significativas que los operandos.

Por ejemplo:

1, 92403 · 102 − 1, 92275 · 102 = 1, 28000 · 10−1


Eliminación de cifras significativas representa una pérdida de información.
Por ejemplo, si  es un poco más pequeño que mach , entonces

(1 + ) − (1 − ) = 1 − 1 = 0 6= 2
Resultado incorrecto debido a pérdida de información durante
operaciones intermedias.

RECETA: No calcular pequeñas diferencias como el resultado de la resta


entre dos números ”grandes”.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

RUTINAS Y PAQUETES COMPUTACIONALES


Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

RUTINAS Y PAQUETES COMPUTACIONALES

Debido a las ”trampas” de la aritmética de coma flotante, en general, es


una mala idea tratar de implementar rutinas matemáticas para uso
personal.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

RUTINAS Y PAQUETES COMPUTACIONALES

Debido a las ”trampas” de la aritmética de coma flotante, en general, es


una mala idea tratar de implementar rutinas matemáticas para uso
personal.

Además, existen muchos otros ”trucos” para escribir rutinas rápidas que
están más allá del conocimiento de los ”meros mortales”.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

RUTINAS Y PAQUETES COMPUTACIONALES

Debido a las ”trampas” de la aritmética de coma flotante, en general, es


una mala idea tratar de implementar rutinas matemáticas para uso
personal.

Además, existen muchos otros ”trucos” para escribir rutinas rápidas que
están más allá del conocimiento de los ”meros mortales”.

Internet está lleno de bibliotecas matemáticas (gratuitas y comerciales)


que contienen una gran cantidad de rutinas genéricas, por ej: algebra
linear (BLAS, LAPACK, ATLAS, UMFPACK), funciones estadı́sticas
(Intel MKL, NAG), Transformada de Fourier (FFTW), etc. Netlib es un
buen lugar para buscar rutinas gratuitas.
Comp. Cientı́fica Fuentes Errores Estabilidad/Precisión Núm. Coma Flotante Prec. Maquina Overflow/Underflow

RUTINAS Y PAQUETES COMPUTACIONALES

Debido a las ”trampas” de la aritmética de coma flotante, en general, es


una mala idea tratar de implementar rutinas matemáticas para uso
personal.

Además, existen muchos otros ”trucos” para escribir rutinas rápidas que
están más allá del conocimiento de los ”meros mortales”.

Internet está lleno de bibliotecas matemáticas (gratuitas y comerciales)


que contienen una gran cantidad de rutinas genéricas, por ej: algebra
linear (BLAS, LAPACK, ATLAS, UMFPACK), funciones estadı́sticas
(Intel MKL, NAG), Transformada de Fourier (FFTW), etc. Netlib es un
buen lugar para buscar rutinas gratuitas.

Mejor aún, hay varios paquetes computacionales (gratuitos y comerciales)


que permiten hacer uso de esas bibliotecas en un ambiente gráfico y con
un lenguage de programación simple, por ejemplo: MATLAB, Octave, R,
Python + Numpy + SciPy, SciLab, etc.

También podría gustarte