Вы находитесь на странице: 1из 29

Computacin Numrica

Introduccin al Clculo
Numrico.
Introduccin al Clculo Numrico

Elclculo numrico. Objetivos


Tratamiento numrico de un problema
Clasificacin de los mtodos numricos
Complejidad computacional
El clculo numrico. Objetivos
Elaborar mtodos para hallar, eficientemente,
soluciones aproximadas de problemas expresados
matemticamente.

Eficiencia: hacer buen uso de unos recursos limitados:


Tiempo
Espacio
Potencia de clculo requerida (precisin)

Soluciones aproximadas, pero con garanta de precisin


Introduccin al Clculo Numrico

Complejidad computacional
El clculo numrico. Objetivos
Tratamiento numrico de un problema
Clasificacin de los mtodos numricos
Complejidad computacional
Tratamiento numrico de un problema

Identificacin del problema y definicin de objetivos


Descripcin matemtica
Anlisis numrico
Programacin
Verificacin
Produccin
Interpretacin
Tratamiento numrico de un problema
Descripcin matemtica

Fr=-c*v (rozamiento)

F=Fg + Fr (fuerza neta)

Fg=m*g (atraccin gravitatoria)


Tratamiento numrico de un problema
Descripcin matemtica
F=m*a
F=Fg+Fr
Fg=m*g

Fr=-c*v (rozamiento) Fr=-c*v


m*a=m*g-c*v
a=dv/dt
F=Fg + Fr (fuerza neta)
m*dv/dt=m*g-c*v
dv/dt=g-c*v/m
Fg=m*g (atraccin gravitatoria)
Tratamiento numrico de un problema
Descripcin matemtica F=m*a
F=Fg+Fr
Fg=m*g
Fr=-c*v
Fr=-c*v (rozamiento)
m*a=m*g-c*v
a=dv/dt

F=Fg + Fr (fuerza neta) m*dv/dt=m*g-c*v


dv/dt=g-c*v/m
Fg=m*g (atrac. gravitatoria)
( )t
c
g *m
v (t ) (1 e m )
c
Tratamiento numrico de un problema
Identificacin del problema y definicin de objetivos
Descripcin matemtica
Anlisis numrico
Programacin
Verificacin
Produccin
Interpretacin
Tratamiento numrico de un problema
Anlisis numrico dv/dt=g-c*v/m
dv v v (ti 1) v (ti )

dt t ti 1 ti
v (ti 1) v (ti ) c
g v (t i )
t i 1 ti m
c
v(ti 1) v (ti ) ( g v(ti ))(ti 1 ti )
m
Solo aparecen operaciones elementales
Tratamiento numrico de un problema
Identificacin del problema y definicin de objetivos
Descripcin matemtica
Anlisis numrico
Programacin
Verificacin
Produccin
Interpretacin
Tratamiento numrico de un problema
Programacin

functionv=paraca(t,iter,c,m)

g=980;dt=t/iter;v=0;
disp(sprintf('tiempo(s)|velocidad(cm/s)\n
|'))

fori=dt:dt:t;
v=v+(980(c/m)*v)*dt;
disp(sprintf('%8.1f|%8.1f',[i,v]))
end
Tratamiento numrico de un problema
Identificacin del problema y definicin de objetivos
Descripcin matemtica
Anlisis numrico
Programacin
Verificacin
Produccin
Interpretacin
Tratamiento numrico de un problema
Verificacin
Produccin

paraca(12,6,12500,68100);
tiempo(s)|velocidad(cm/s)
|
2.0|1960.0
4.0|3200.5
6.0|3985.6
8.0|4482.4
10.0|4796.9
12.0|4995.9

Tratamiento numrico de un problema
paraca(12,12,12500,68100)
tiempo(s)|velocidad(cm/s)
|
1.0|980.0
2.0|1780.1
3.0|2433.4
4.0|2966.7
5.0|3402.2
6.0|3757.7
7.0|4047.9
8.0|4284.9
9.0|4478.4
10.0|4636.4
11.0|4765.4
12.0|4870.7
Tratamiento numrico de un problema

Identificacin del problema y definicin de objetivos


Descripcin matemtica
Anlisis numrico
Programacin
Verificacin
Produccin
Interpretacin
Tratamiento numrico de un problema
Interpretacin

g *m ( )
c
(1 e )
t
v (t ) m
c
paraca(12,6,12500,68100);
tiempo(s)|velocidad(cm/s) v(t)
|
2.0|1960.0 1640.5
4.0|3200.5 2776.9
6.0|3985.6 3564.2
8.0|4482.4 4109.5
10.0|4796.9 4487.3
12.0|4995.9 4749.0
inf| 5339.0 5339.0

Tratamiento numrico de un problema
Interpretacin

gerror(12,6,12500,68100);

Warning:Dividebyzero

Tratamiento numrico de un problema
Interpretacin
Tratamiento numrico de un problema

Identificacin del problema y definicin de objetivos


Descripcin matemtica
Anlisis numrico
Programacin
Verificacin
Produccin
Interpretacin

En cualquier momento puede ser necesario revisar las


decisiones tomadas en los pasos anteriores...
Introduccin al Clculo Numrico

Complejidad computacional
El clculo numrico. Objetivos
Tratamiento numrico de un problema
Clasificacin de los mtodos numricos
Complejidad computacional
Clasificacin de los mtodos numricos

Mtodos directos
Solucin exacta (salvo errores de redondeo) tras un
nmero finito (y conocido a priori) de pasos
ejemplos: ax2+bx+c=0, regla de Cramer

Mtodos iterativos
Mtodos basados en la discretizacin del continuo
Clasificacin de los mtodos numricos
Mtodos directos ...
Mtodos iterativos
Mtodos que van construyendo una sucesin de
soluciones aproximadas a partir de una solucin
inicial, esperando que esa sucesin converja a la
verdadera solucin.
- requiere una aproximacin inicial
- puede no converger
ejemplo: bsqueda de races por biseccin

Mtodos basados en la discretizacin del continuo


Clasificacin de los mtodos numricos

Mtodos directos ...


Mtodos iterativos ...
Mtodos basados en la discretizacin del continuo
Aproximacin de un problema continuo (infinitos
elementos) mediante un equivalente discreto (nmero
finito y limitado de elementos)
Ejemplos:
- Integracin Numrica (se ver en el tema 6)
- Modelos de elementos finitos (simulacin de
accidentes automovilsticos, de inyeccin de
plsticos, del comportamiento aerodinmico...)
Introduccin al Clculo Numrico

Complejidad computacional
El clculo numrico. Objetivos
Tratamiento numrico de un problema
Clasificacin de los mtodos numricos
Complejidad computacional
Complejidad computacional
Un algoritmo est compuesto por un nmero bien definido de
reglas (instrucciones) que resuelven un problema en un
nmero finito de pasos.
Existen pues dos parmetros que evalan el rendimiento:
TIEMPO y ESPACIO.
Complejidad temporal:
Determina el tiempo necesario para obtener la solucin, o el
coste de la mquina necesaria para producir las soluciones
a tiempo.
Ejemplo prctico: productividad en aplicaciones mdicas
(TAC, RM, ecografa...)

Complejidad espacial
Complejidad computacional

Complejidad temporal; dos formas de calcularla:


Anlisis a priori:
- Proporciona una cota del coste temporal
- Se puede estimar con rapidez (a veces)
Anlisis a posteriori:
- Puede dar un resultado exacto
- Requiere la implementacin del algoritmo sobre la
mquina destino
Complejidad computacional

Complejidad temporal; unidades de medida:

Una buena forma de expresar el coste computacional


de un proceso es indicar el nmero de operaciones
bsicas (sumas, productos...) que requiere. Cada
una de estas operaciones cuesta un flop. (contraccin
de floating point operation).
Esta medida depende del tamao del problema, y se
suele expresar como una funcin de ste.
Ejemplo: Calculo del coste a priori del producto de
dos matrices.
Complejidad computacional
Complejidad espacial: Ejemplo de almacenamiento CSR:
1 0 0 2 3

0 4 0 0 0
A 0 0 5 0 0

2 0 0 6 7
3 0 0 7 8

Coste de almacenamiento denso: 5x5x8=200 bytes.
A=[1, 2, 3, 4, 5, 2, 6, 7, 3, 7, 8] Elementos no nulos
JA=[1, 4, 5, 2, 3, 1, 4, 5, 1, 4, 5Columna en que aparece
IA=[1, 4, 5, 6, 9, 12 Posicin del primer elemento no nulo
de la fila
IA(i+1)-IA(i) = N elementos no nulos en la fila i
Coste de almacenam. disperso:11x8+11+6=105 bytes.

Вам также может понравиться