Está en la página 1de 22

Revisión de Conceptos Básicos

• Normas: Normas vectoriales y matriciales. Productos interiores.


• Errores: Errores computacionales. Propagación de errores.

521230 -1- DIM – Universidad de Concepción


Normas vectoriales

• La manera usual de expresar el tamaño de un vector es mediante una norma.


• Definición. Sea V un espacio vectorial. Se llama norma sobre V a cualquier
función
k·k: V −→ R
v 7−→ kvk
que satisfaga:

1. kvk ≥ 0 ∀v ∈ V (positividad),

2. kvk = 0 ⇐⇒ v=0 (no degeneración),

3. kkvk = |k| kvk ∀v ∈ V, ∀k ∈ R (homogeneidad),

4. kv + wk ≤ kvk + kwk ∀v, w ∈ V (desigualdad triangular).

• A un espacio vectorial V provisto de una norma k · k se le llama espacio


vectorial normado y se le denota (V, k · k).

521230 -2- DIM – Universidad de Concepción


Normas vectoriales (cont.)
n
• Ejemplos. Dados
 V = (espacio de vectores columna de n componentes
R
x
 1 
 . 
reales) y x =  ..  ∈ Rn , se definen las siguientes normas:
 
xn
n
! 12
X
– Norma euclideana: kxk2 := |xi |2 .
i=1

– Norma infinito: kxk∞ := max |xi |.


1≤i≤n
n
X
– Norma uno: kxk1 := |xi |.
i=1

• Por comodidad de notación, muchas veces escribiremos un vector columna


como x = (x1 · · · xn )t ∈ Rn .

521230 -3- DIM – Universidad de Concepción


Distancia entre vectores. Equivalencia de normas

• Toda norma sobre un espacio vectorial V induce una distancia:


dist(v, w) := kv − wk, v, w ∈ V.

• Una sucesión {v n }n∈N ⊂ V converge a v ∈ V si dist(v n , v) → 0:


vn → v ⇐⇒ kv n − vk → 0.

• Dos normas k · k∗ y k · k• sobre un espacio vectorial V son equivalentes si


existen constantes C1 y C2 tales que

C1 kvk∗ ≤ kvk• ≤ C2 kvk∗ ∀v ∈ V.

• Teorema. Todas las normas sobre un espacio de dimensión finita son


equivalentes.

• Corolario. Si k · k∗ y k · k• son dos normas cualesquiera en un espacio de


dimensión finita, entonces

kv n − vk∗ → 0 ⇐⇒ kv n − vk• → 0.

521230 -4- DIM – Universidad de Concepción


Normas matriciales inducidas.

• Toda norma vectorial k · k sobre Rn induce una norma matricial sobre Rn×n
(espacio de matrices cuadradas n × n):

kAxk
kAk := max , A ∈ Rn×n .
x∈R n : x6=0 kxk

Es fácil verificar que esto define efectivamente una norma sobre Rn×n .
Esta norma se dice que es una norma matricial inducida por la norma
vectorial y se denota con el mismo sı́mbolo que la norma vectorial.

• Proposición. Toda norma matricial inducida por una norma vectorial satisface
las siguientes propiedades:

kAxk ≤ kAk kxk ∀A ∈ Rn×n , ∀x ∈ Rn (compatibilidad),

kABk ≤ kAkkBk ∀A, B ∈ Rn×n (submultiplicatividad).

521230 -5- DIM – Universidad de Concepción


Normas matriciales (cont.)

• Hay formas más sencillas de calcular algunas de las normas matriciales más
usuales.

= (aij ) ∈ Rn×n . Entonces:


Proposición. Sea A
 
X
– kAk∞ = max  |aij | (máxima suma de filas).
1≤i≤n
1≤j≤n
 
X
– kAk1 = max  |aij | (máxima suma de columnas).
1≤j≤n
1≤i≤n
q
t

– kAk2 = ρ A A (norma espectral).

521230 -6- DIM – Universidad de Concepción


Valores y vectores propios

• Definición. Dada una matriz cuadrada A, diremos que un número λ ∈ C es


un valor propio (o autovalor) de A si existe un vector no nulo, v 6= 0, tal que

Av = λv.

A v se le llama vector propio (o autovector) asociado al valor propio λ.


λ es un valor propio si y sólo si es raı́z de la ecuación caracterı́stica

det(A − λI) = 0.

• Definición. El espectro de A es el conjunto de todos sus valores propios:


n o
σ(A) := λ ∈ C : λ es un valor propio de A .

• Definición. El radio espectral de A es el máximo módulo de sus autovalores:

ρ(A) := max |λ|.


λ∈σ(A)

• Teorema. Si A ∈ Rn×n es simétrica (At = A), entonces kAk2 = ρ (A).

521230 -7- DIM – Universidad de Concepción


Producto interior

• Sea V un espacio vectorial real. Se llama producto interior sobre V a


cualquier función
h·, ·i : V × V −→ R
(v, w) 7−→ hv, wi
que satisfaga:

1. hv, vi ≥ 0 ∀v ∈ V (positividad),

2. hv, vi = 0 ⇐⇒ v=0 (no degeneración),

3. hv, wi = hw, vi ∀v, w ∈ V (simetrı́a),

4. hv, k1 w1 + k2 w2 i = k1 hv, w 1 i + k2 hv, w 2 i


∀v, w1 , w2 ∈ V, ∀k1 , k2 ∈ R (linealidad).

521230 -8- DIM – Universidad de Concepción


Producto interior (cont.)

• Ejemplo. El producto escalar en Rn :


n
X
hx, yi := xt y = xi yi , x = (x1 · · · xn )t , y = (y1 · · · yn )t ∈ Rn .
i=1

• Todo producto interior sobre un espacio vectorial V induce una norma:


p
kvk := hv, vi, v ∈ V.

En particular, el producto escalar en Rn induce la norma euclideana:



xt x = kxk2 , x ∈ Rn .

• Teorema. Desigualdad de Schwarz:

|hv, wi| ≤ kvk kwk ∀v, w ∈ V.

• Definición. Dos vectores v y w son ortogonales cuando hv, wi = 0:

v⊥w ⇐⇒ hv, wi = 0.

521230 -9- DIM – Universidad de Concepción


Representación de números reales en un sistema de
punto flotante

• Lo describiremos, por sencillez, en el sistema decimal, aunque los


computadores representan los números en sistema binario:

783.375 −→ +.783375 × 103


0.00843215 −→ +.843215 × 10−2
−1.23456 −→ −.123456 × 101
−0.999999 −→ −.999999 × 100

521230 - 10 - DIM – Universidad de Concepción


Almacenamiento de números reales en computador

• En el computador se almacenan el signo, la mantisa y el exponente (con su


signo) del número real.

_.
+ x 10 l dígitos
k dígitos exponente
signo mantisa (con signo)

signo exponente mantisa

• La cantidad de dı́gitos k que se utilizan para almacenar la mantisa es fija. Por


lo tanto sólo pueden almacenarse a lo sumo k dı́gitos de mantisa de un
número real.

• La cantidad de dı́gitos l que se utilizan para almacenar el exponente también


es fija. Por lo tanto hay un exponente positivo máximo y otro exponente
negativo mı́nimo que pueden llegar a representarse.

521230 - 11 - DIM – Universidad de Concepción


Overflow

• Si se intenta almacenar un número cuyo exponente positivo es mayor que el


máximo representable en el sistema, se produce un error fatal: overflow. Por
lo tanto existe un máximo número positivo que puede representarse.

• En MATLAB el máximo número representable es aproximadamente 10308 .


Si se intenta representar un número mayor, el computador devuelve Inf
(infinito) como una indicación de que se produjo un overflow:

>> a=2ˆ1023
a =
8.988465674311580e+307

>> b=2ˆ1024
b =
Inf

521230 - 12 - DIM – Universidad de Concepción


Underflow

• Si se intenta almacenar un número cuyo exponente negativo es menor que el


mı́nimo representable se produce un error leve: underflow. Por lo tanto existe
un mı́nimo número positivo que puede representarse. Si se representa un
número positivo menor que ese mı́nimo, el computador almacena 0:

• En MATLAB el mı́nimo número positivo representable es aproximadamente


10−323 :

>> c=2ˆ-1074
c =
4.940656458412465e-324

>> d=2ˆ-1075
d =
0

521230 - 13 - DIM – Universidad de Concepción


Error de redondeo

• Si se intenta almacenar un número con más dı́gitos de mantisa que la cantidad


máxima k que permite el sistema, sólo se almacenan los primeros k dı́gitos.
Por ello, al representar un número real en un sistema de punto flotante, en
general se comete un pequeño error de redondeo.

• En MATLAB se almacenan entre 15 y 16 dı́gitos decimales de mantisa:

>> e=123456789.0123456789
e =
1.234567890123457e+08

>> f=pi

f =
3.14159265358979

521230 - 14 - DIM – Universidad de Concepción


Operaciones en punto flotante

• El computador calcula cada una de las cuatro operaciones matemáticas


fundamentales, suma (+), resta (−), producto (∗) y cociente (/), de manera tal
que el resultado que se obtiene tiene correctos el máximo número k de dı́gitos
representables.

• Por ello, en cada operación matemática también se comete un pequeño error


de redondeo:

>> g=1.0000000001*1.0000000001
g =
1.00000000020000

>> h=1+10ˆ-17
h =
1

521230 - 15 - DIM – Universidad de Concepción


Constante de precisión

• Como se ve en el ejemplo anterior, si se calcula en punto flotante 1 + ε, con ε


suficientemente pequeño, debido al error de redondeo el resultado que se
obtiene es 1.

• La constante de precisión (o unidad de redondeo) del computador se define


como el mı́nimo número ε > 0 tal que, en punto flotante,

1 + ε 6= 1.

• Se demuestra que el error relativo que comete el computador al representar


un número real o al hacer una operación elemental en punto flotante es menor
o igual que la contante de precisión.

521230 - 16 - DIM – Universidad de Concepción


Constante de precisión (cont.)

• En MATLAB la constante de precisión se llama eps y es aproximadamente


10−16 :

>> eps
ans =
2.220446049250313e-16

>> p=(1+eps)-1
p =
2.220446049250313e-16

>> q=(1+eps/2)-1
q =
0

521230 - 17 - DIM – Universidad de Concepción


Cancelación excesiva

• Las operaciones de producto y cociente en punto flotante dan siempre


resultados confiables, en el sentido que todos los dı́gitos del resultado que se
obtienen son correctos (siempre que no se produzca overflow o underflow).

• Las operaciones de suma y resta usualmente dan resultados con todos sus
dı́gitos correctos. Sin embargo, esto no es ası́ cuando se restan números muy
parecidos.
Este fenómeno se denomina cancelación excesiva.

521230 - 18 - DIM – Universidad de Concepción


Cancelación excesiva (cont.)

>> r=.123456789012345;
>> s=.12345678901234;
>> t=r-s % El valor exacto es t=5.e-15
t =
4.996003610813204e-15

>> u=12345678901234567;
>> v=12345678901234566;
>> w=u-v % El valor exacto es w=1
w =
2

521230 - 19 - DIM – Universidad de Concepción


Propagación de errores

• Las integrales
Z 1
In := xn ex−1 dx, n = 1, 2, . . .
0
se relacionan mediante la expresión

In = 1 − nIn−1 , n = 2, 3, . . .
que se obtiene fácilmente por integración por partes.

• Esta expresión permite calcular esas integrales recursivamente a partir del


valor de I1 , que se calcula exactamente también por partes:
Z 1 1 Z 1
−1
x−1

x−1 x−1
I1 = xe dx = xe − e dx = e = 0.36787944...
0 0 0

• Si se parte del valor aproximado Iˆ1 ≈ 0.367879 (correctamente redondeado


a 6 dı́gitos) se obtiene:

Iˆ2 = 0.264242, ··· Iˆ9 = −0.06848 < 0 !!!


521230 - 20 - DIM – Universidad de Concepción
Propagación de errores (cont.)

• Dado que la expresión In = 1 − nIn−1 es exacta para números reales, el


error en Iˆ9 se debe necesariamente a la propagación del error en Iˆ1 .

• Para estudiar esta propagación sea:


 = I1 − Iˆ1 = e−1 − 0.367879 ≈ 0.44 × 10−6 .
Entonces:

Iˆ1 = I1 − ,
Iˆ2 = 1 − 2Iˆ1 = 1 − 2(I1 − ) = I2 + (−2)(−),
Iˆ3 = 1 − 3Iˆ2 = 1 − 3[I2 + (−2)(−)] = I3 + (−3)(−2)(−),
..
.

Iˆ9 = 1 − 9Iˆ8 = I9 + (−9) · · · (−3)(−2)(−) = I9 − 9!.


Por lo tanto,

I9 −Iˆ9 = 9! ≈ 362 880×0.44×10−6 ≈ 0.16 e Iˆ9 = −0.06848 !


521230 - 21 - DIM – Universidad de Concepción
Propagación de errores (cont.)

• Un algoritmo como el anterior, donde el error crece en cada paso, se dice que
es inestable.
Este tipo de algoritmos debe evitarse pues propaga de manera catastrófica los
errores en los datos, como se ve en el ejemplo.

• La relación anterior puede reformularse para obtener el siguiente algoritmo:



IN : dato,

1 − In

In−1 := , n = N, N − 1, . . . , 3, 2.

n
• Un análisis semejante al anterior permite demostrar que, en el paso n-ésimo
de este algoritmo, el error del paso anterior se divide por n. En consecuencia
este algoritmo no sólo no amplifica los errores, sino que los reduce.

• Un algoritmo como éste, que no amplifica los errores, se dice que es estable.
• Por ejemplo, si se toma N = 20 e Iˆ20 = 0, verifique que mediante este
algoritmo se obtiene Iˆ9 = 0.091 612 292 990, con error menor que 10−12 .

521230 - 22 - DIM – Universidad de Concepción

También podría gustarte