Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Métodos Numéricos
Métodos Numéricos
MTODOS NUMRICOS
Ingeniera Industrial
Jess P. Avalos Rodrguez
SEMANA 02
www.jesus-avalos.ucoz.com
Departamento de Ciencias
Per
Marzo 2015
Pag.:
1/15.
MATEMTICA IV.
Outline
Outline
Bucles
Pag.:
2/15.
MATEMTICA IV.
Las estructura de seleccin y repeticin que se usan en MATLAB dependen de operadores relacionales y lgicos. MATLAB tiene seis operadores relacionales para comparar dos matrices de igual tamao.
Desde luego, las variables en MATLAB, por lo general, representan matrices completas. Si se redefinen x y y, se puede ver cmo MATLAB maneja las comparaciones
entre matrices. Por ejemplo,
x=1:5;
y=x-4;
x<y
regresa
ans=0 0 0 0 0 0
Pag.:
3/15.
MATEMTICA IV.
El resultado indica que la comparacin fue falsa para los primeros cuatro elementos,
pero verdadera para el ltimo. Para que una comparacin sea verdadera para toda una
matriz, debe ser verdadera para cada elemento de la matriz. En otras palabras, todos
los resultados deben ser unos.
MATLAB tambin le permite combinar comparaciones con los operadores lgicos
and, not y or.
El cdigo
x=[1,2,3,4,5];
y=[-2,0,2,4,6];
z=[8,8,8,8,8];
z>x & z>y
Pag.:
4/15.
MATEMTICA IV.
Operadores relacionales
Operador relacional
<
<=
>
>=
==
=
Interpretacin
menor que
menor que o igual a
mayor que
mayor que
igual a
no igual a
Pag.:
5/15.
MATEMTICA IV.
Operador lgico
&
|
xor
Interpretacin
and
not
regresa
or
or exclusiva
ans= 1 1 1 1 1
puesto que z es mayor que x y y para cada elemento. El enunciado
x>y | x>z
se lee como x es mayor que y o x es mayor que z y regresa
ans=1 1 1 0 0
Esto significa que la condicin es verdadera para los primeros tres elementos y falsa
para los ltimos dos.
Estos operadores relacionales y lgicos se usan tanto en tanto estructuras de seleccin
como bucles para determinar qu comandos se deben ejecutar.
Pag.:
6/15.
MATEMTICA IV.
Suponga que se le pide crear un programar para convertir mph a pies/s. La salida. La
salida debe ser una tabla completa con un ttulo y encabezados de columna. He aqu
una forma de resaltar los pasos que puede seguir:
1
Desplegar la tabla.
Pag.:
7/15.
MATEMTICA IV.
Una vez que defina los pasos, pngalos en un archivo-m MATLAB como comentarios:
%Definir un vectores de valores mph
%Convertir mph a pies/s
%Combinar los vectores mph y pies/s en una matriz
%Crear encabezados de columna
%Desplegar la tabla
Ahora puede insertar el cdigo MATLAB apropiado en el archivo-m
%Definir un vector de valores mph
mph=0:10:100
%Convertir los vectores mph y pies/s en una matriz
table=[mph;fps]
%Crear un ttulo de tabla
disp(Tabla de conversin de velocidad)
%Crear encabezados de columna
disp( mph
f/s)
%Desplegar la tabla
fprintf(%8.0f %8.2\n, table)
Pag.:
8/15.
MATEMTICA IV.
Bucles
Pag.:
9/15.
MATEMTICA IV.
Pag.:
10/15.
MATEMTICA IV.
La instruccin if
Pag.:
11/15.
MATEMTICA IV.
Ficheros ejecutables
Los ficheros ejecutables son ficheros de texto que incluyen una serie de comandos
MATLAB. Si una tarea MATLAB la vamos a ejecutar muchas veces, es buena idea
escribir un fichero con estos comandos para poder ejecutarlos tantas veces como queramos. La edicin del fichero ejecutable la realizamos con un editor cualquiera. Si
nos resulta ms cmodo, podemos utilizar el editor que incorpora MATLAB y al que
invocaremos desde la lnea de comandos como:
>>edit
Los ficheros ejecutables de MATLAB (llamados ficheros .m) deben tener como extensin .m. En eke ejemplo que damos a continuacin, crearemos un programa que
calcula el factorial de 6.
Pag.:
12/15.
MATEMTICA IV.
Ejemplo
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Este es un programa no muy til
%que calcula el factorial de 6
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
n=6;
fac=1;
for i=2:n
fac=fac*i;
end
fac
Si guardamos esto en el fichero fac.m en el directorio de trabajo (o cualquier otro
incluido el path) y tecleamos el comando fac, obtenemos
>>fac
fac=
720
Pag.:
13/15.
MATEMTICA IV.
Subrutinas
Pag.:
14/15.
MATEMTICA IV.
Las funciones pueden tener varios parmetros de entrada y/o salida. Por ejemplo, la siguiente
funcin que, dados dos vectores con la misma longitud, devuelve dos valores (es decir, la subrutina implementa una funcin f : Rn Rn R2 ).
%Esta es una funcin que, dados dos vectores
%de la misma longitud calcula dos valores
%reales a y b s=sin(x*y), b=a*x*x
function [a,b]=funci(x,y)
a=sin(x*y);
b=a*x*x;
Guardamos este fichero como funci.m y, como prueba, ejecutamos en la lnea de comandos:
>>x=1:5:5
x=
1 2 3 4 5
y=0:0.1:0.4
y=
0 0.1000 0.2000 0.3000 0.4000
>>[f1,f2]=funci(x,y);
>>[f1,f2]=funci(x,y);
>>f1
f1=
-0.7568
>>f2
f2=
-41.6241
Ms. Sc. Jess valos Rodrguez
Pag.:
15/15.
MATEMTICA IV.