Documente Academic
Documente Profesional
Documente Cultură
Mtodos Numricos
Prof.: Ana Luca Dai Pra
JTP.: Marcel Brun
ATP1.: Francisco Alvarez
daipra@fi.mdp.edu.ar
mbrun@fi.mdp.edu.ar
fjalvarez@fi.mdp.edu.ar
www3.fi.mdp.edu.ar/metodos
Mtodos Numricos
Necesidad de transformar un problema
matemtico en numrico y resolverlo
Mtodo analtico: Permite la obtencin de resultados
analticos y exactos, pero a veces limitados. (Procesamiento
simblico).
Mtodo numrico: Procedimiento (o algoritmo) mediante el
cual se obtiene, (casi siempre de manera aproximada), la
solucin numrica a ciertos problemas, realizando
evaluaciones de funciones y operaciones aritmticas
elementales.
Dia
Mierc. 17/8
Jue. 18/8
Mierc. 24/8
Jue. 25/8
Jue 1/9
Mierc 7/9
Jue 8/9
Jue 15/9
Mierc 21/9
Clase
Teora 1,2
Prctica 1,2
Teora 3
Prctica 2,3
Prctica 3
Teora 4
Prctica 3,4
Prctica - 4
Da del estudiante
Jue 22/9
Mierc 28/9
Mierc 5/10
Jue 6/10
Jue 13/10
Mierc 19/10
Jue 20/10
Jue 27/10
Prctica - 4
1er parcial
Teora 5
Prctica 5
Prctica 5
Teora 6
Prctica 6
Prctica 6
Mierc 2/11
Jue 3/11
Jue 10/11
Mierc 16/11
Teora 7
Prctica 7
Prctica 7
Teora 7
Jue 17/11
Mierc 23/11
Jue 24/11
Mierc 30/11
Prctica 7
2do parcial
Repaso
Recuperatorio
Unidad
Descripcin
Introduccin, Matlab
Interpolacin y aproximacin
polinomial,
Interpolacin por partes,
Aprox. por Mnimos
cuadrados,
Integracin,
Mtodos Newton-Cotes,
Romberg, Integr. Adaptativa.
Rgimen de cursada
Dos parciales, con posibilidad de un recuperatorio.
Promocin:
Promedio parciales >= 7, cada parcial con nota >=5.
Habilitacin:
Promedio parciales >= 5, cada parcial con nota >=4.
Bibliografa (disponible en biblioteca de la
Facultad)
Mtodos numricos: con MATLAB. Mathews, John
H. 1999 (10391; 10414; 10639 )
Mtodos numricos para ingenieros. Chapra, Steven
C. 2003. (10615; 9931 )
Mtodos numricos: aplicados a la ingeniera.
A.Nieves Hurtado. 2003. (10510), 2007 (11233)
Numerical methods. R. L. Burden y J. Douglas
Faires. 2005. (11323).
Numerical Methods, Software, and Analysis Rice,
John R 1993 (8145).
Numerical methods using Matlab. Penny, John Dr.
1999. (10787; 11322; 11321).
Cualquier texto de Mtodos Numricos o Anlisis
Numrico.
2/10
Necesidad de adoptar un
lenguaje de programacin
Clculo simblico
(Clculo formal o lgebra computacional)
Programas que manipulan expresiones algebraicas no
numricas generando soluciones en modo exacto.
Implementa las modalidades del clculo analtico.
Los lenguajes de programacin basados en clculo
simblico son la interfase natural entre el cdigo maquina
y el lenguaje de las matemticas.
Estos programas combinan perfectamente herramientas
de manipulacin simblica con tcnicas que permiten
efectuar clculos numricos de precisin arbitraria.
MATLAB
Es un sistema interactivo,
Razones:
3/10
Tipos de datos
Tipo de datos
Arreglo
Carcter
(char)
Numerico
(numeric)
Celda
(cell)
Estructura
(struct)
Comandos MATLAB
Toda instruccin dada a continuacin del prompt >> es
considerada un comando.
Los comandos comprenden:
Instrucciones de asignacin o sentencias
Operaciones matemticas y lgicas
Llamadas a funciones
Referencias a conjunto de instrucciones
Comandos de edicin, ayuda o control
...
Doble precisin
(double)
Matrices ralas
(sparse)
Almacenamiento
(int8,int16,int32,
uint8,uint16,uint32)
Objeto definido
por el usuario
4/10
Ingreso de Matrices
Comandos de ayuda
7 8 9]
4 5 6;
. ^ potencia
^ potencia (a ^ 2, es equivalente a a * a )
. / divisin izquierda
traspuesta
. \ divisin derecha
5/10
Matrices Complejas
Submatrices
A=
2+6i
A = [1 2; 3 4] + i*[5 6; 7 8]
B = [1+5i 2+6i; 3+7i 4+8i]
a
e
i
m
b c d
f g h
j k l
n o p
A(1:3 ,4) =
A+B
ans = 2.0000 +10.0000i 4.0000 +12.0000i
6.0000 +14.0000i 8.0000 +16.0000i
A(2 ,:) =
efgh
A*B
d
h
l
bd
f h
j l
n p
Ej:
Utilidad
matriz identidad
matriz de ceros
matriz de unos
crea una matriz con diagonal x o extrae la diagonal
obtiene la parte triangular superior de una matriz
obtiene la parte triangular inferior de una matriz
genera una matriz de valores aleatorios
crea una matriz de Hilbert
crea un cuadrado magico
>> a=[2 3; 4 5]
>> diag(a)
ans =
2
5
6/10
Estructuras de Control
CICLO
for variable = valor inicial : {incremento :} valor final
sentencias
end
CICLO CONDICIONAL
while condicin
end
menor que
&
>
mayor que
<=
no
>=
==
igual
~=
no igual
if condicin
sentencias
sentencias 1
{else
sentencias 2 }
end
<
CONDICION
Ciclos implcitos
for i =1:100
a(i) = i
end
for i =1:10
c(i) = rand
end
a = 1:100
c = rand(1,10)
Clculo matricial
Tic, sentencias, toc
for i =1:10
if c(i) > 0.5
c(i)
end
end
j=(find (c > 0.5));
c(j)
c(find(c>0.5))
7/10
Funciones Escalares
Funcin
sin
cos
tan
asin
acos
atan
exp
log
rem
abs
mod
sqrt
sign
round
floor
ceil
Utilidad
Seno
Coseno
Tangente
Arcseno
Arcoseno
Arcotangente
Exponencial
Logaritmo natural
Resto
Valor absoluto
Mdulo
Raz cuadrada
Signo
Redondeo
Truncar
Aproximar hacia arriba
Se aplican a cada
elemento de la matriz
Ej:
>> a=[2 3; 4 5]
>> sin(a)
ans =
0.9093 0.1411
-0.7568 -0.9589
Grficos
Se grafican en una ventana aparte.
Esta ventana posee menes para todas las transformaciones
necesarias. (pueden variar segn la versin)
Funciones Vectoriales
Funcin
max
min
sort
sum
prod
median
mean
std
any
all
Utilidad
Mximo
Mnimo
Ordenar
Suma
Producto
Mediana
Media
Desviacin estandar
Alguno
Todos
Comandos:
8/10
Ejemplo 1.
Ejemplo 2.
z = x+y;
Plot3 (x,y,z)
x = 0 : pi/50: pi*4;
y = cos(x);
plot(x,y)
w = x'*y;
plot3 (x,y,w)
Ejemplo 3.
Grficos
Otros comandos para grficos, equivalentes a los de
menes de figuras
x = 0 : pi /10 : pi*2;
y =cos(x);
z = x * y;
surf(z)
9/10
Ejemplos
ezplot('x^2')
40
ezsurf('x^2+y^2')
20
x2+y2
0
-5
0
x
50
0
5
0
y
Archivos M
MATLAB puede ejecutar una secuencia de sentencias guardadas
en archivos. Tales archivos son llamados archivos M, pues
estos poseen extensin .m.
Existen dos tipos de archivos M: archivos script y funciones.
Script: Secuencia de comandos que se ejecutan al colocar el
nombre del archivo como comando. Las variables del archivo
crearn o modificarn las del espacio de trabajo
Funciones: Extensin de las funciones MATLAB. Se pueden
crear funciones especficas para el problema que se desea
resolver. Las variables de un archivo de funcin son locales a la
funcin.
-5
-5
Declaracin de
Archivos de Funcin
function salida = nombre_funcion(entrada)
% Explicacin de lo que la funcin realiza
Sentencias
salida = valor a retornar;
function [s1,..,sn]=nombre_funcion(e1,..,em)
% Explicacin de lo que la funcin realiza
Sentencias
s1 = valor a retornar;
...
sn = valor a retornar;
Algunos tipos de funciones pueden ser declaradas en lnea (inline)
10/10
Entrada/Salida de texto
Asigna un string a una variable:
variable = texto
Muestra un texto por pantalla:
disp(texto)
Muestra un mensaje de error y finaliza la funcin que se
est ejecutando:
error(texto)
Entrada de un dato. Muestra el texto y el valor que se
ingrese queda almacenado en variable:
variable = input(texto)
Entrada/Salida de datos
fscanf. Lee datos formateados desde un archivo.
fprintf. Escribe datos formateados en un archivo.
fread. Lee datos binarios desde un archivo.
fwrite. Escribe datos binarios en un archivo
fopen. Abre un archivo
fclose. Cierra un archivo