informe matlab
DESCRIPTION
QUE ES EL MATLABTRANSCRIPT
UNIVERSIDAD CENTROCCIDENTAL
“LISANDRO ALVARADO”
DECANATO DE AGRONOMÍA
PROGRAMA INGENIERÍA AGROINDUSTRIAL
MATLAB
Integrantes:
Adarfio Junior 17. 728. 453
Legon Jaklin 17. 814. 571
Computación aplicada
Fecha: 29/04/2011
Introducción
El uso de las matemáticas se ha realizado desde el nacimiento de la civilización
como lo podemos apreciar en las ciencias y artes de culturas tan antiguas como la
egipcia, griega, romana, china, maya, etc. Hoy en día también sirven para entender
fenómenos naturales y prevenir sus consecuencias, para resolver complicados
problemas de ingeniería y finanzas, para desarrollar investigación de punta en ciencias,
etc. Estos son sólo algunos ejemplos representativos de las aplicaciones de las
matemáticas.
El uso de ayudas computacionales basadas en PCs es una práctica común en
nuestros días. El más usado en el mundo es MATLAB, el cual consiste en un paquete
que maneja las matemáticas de una manera muy simple, además están habilitados con
utilerías que permiten a los usuarios realizar complicados procedimientos matemáticos
con una gran facilidad. Algunos ejemplos representativos los proporcionan los métodos
de optimización que requieren una gran cantidad de cómputo matemático. Hoy en día
con paquetes como MATLAB se pueden realizar procesos de optimización aún por
programadores inexpertos con tiempos de desarrollo muy cortos. Esto es debido a la
existencia de una gran cantidad de programas agrupados en paquetes especializados
llamados toolboxes desarrollados por renombrados especialistas de todo el mundo y que
simplifican la labor de desarrollo de técnicas de resolución de problemas.
1. ¿Qué es MATLAB?
MATLAB es una de las muchas sofisticadas herramientas de computación
disponibles en el comercio para resolver problemas de matemáticas, tales como Maple,
Mathematica y MathCad. A pesar de lo que afirman sus defensores, ninguna de ellas es
“la mejor”. Todas tienen fortalezas y debilidades. Cada una permitirá efectuar cálculos
matemáticos básicos, pero difieren en el modo como manejan los cálculos simbólicos y
procesos matemáticos más complicados, como la manipulación de matrices. Por
ejemplo, MATLAB es superior en los cálculos que involucran matrices, mientras que
maple lo supera en los cálculos simbólicos. El nombre mismo de MATLAB es una
abreviatura de Matrix Laboratory, laboratorio matricial. En un nivel fundamental, se
puede pensar que estos programas son sofisticadas calculadoras con base en una
computadora. Son capaces de realizar las mismas funciones que una calculadora
científica, y muchas más. Si usted tiene una computadora en su escritorio, descubrirá
que usará MATLAB en lugar de su calculadora incluso para la más simple de sus
aplicaciones matemáticas, por ejemplo para el balance de su chequera. En muchas
clases de ingeniería, la realización de cálculos con un programa de computación
matemático como MATLAB sustituye la programación de computadoras más
tradicional. Esto no significa que el lector no deba aprender un lenguaje de alto nivel
como C++ o FORTRAN, sino que los programas como MATLAB se han convertido en
una herramienta estándar para ingenieros y científicos.
Dado que MATLAB es tan fácil de usar, muchas tareas de programación se
llevan a cabo con él. Sin embargo, MATLAB no siempre es la mejor herramienta para
usar en una tarea de programación. El programa destaca en cálculos numéricos,
especialmente en los relacionados con matrices y gráficas, pero usted no querrá escribir
un programa de procesamiento de palabras en MATLAB. C++ y FORTRAN son
programas de propósito general y serían los programas de elección para aplicaciones
grandes como los sistemas operativos o el software de diseño. (De hecho, MATLAB,
que es un programa grande de aplicación, se escribió originalmente en FORTRAN y
después se rescribió en C, precursor de C++). Por lo general, los programas de alto nivel
no ofrecen acceso fácil a la graficación, que es una aplicación en la que destaca
MATLAB. El área principal de interferencia entre MATLAB y los programas de alto
nivel es el “procesamiento de números”: programas que requieren cálculos repetitivos o
el procesamiento de grandes cantidades de datos. Tanto MATLAB como los programas
de alto nivel son buenos en el procesamiento de números. Por lo general, es más fácil
escribir un programa que “procese números” en MATLAB, pero usualmente se
ejecutará más rápido en C++ o FORTRAN. La única excepción a esta regla son los
cálculos que involucran matrices; puesto que MATLAB es óptimo para matrices, si un
problema se puede formular con una solución matricial, MATLAB lo ejecuta
sustancialmente más rápido que un programa similar en un lenguaje de alto nivel.
MATLAB está disponible en versiones tanto profesional como estudiantil. Es
probable que en el laboratorio de cómputo de su colegio o universidad esté instalada la
versión profesional, pero disfrutará tener la versión estudiantil en casa. MATLAB se
actualiza de manera regular; este texto se basa en MATLAB 7. Si utiliza MATLAB 6
podrá observar algunas diferencias menores entre éste y MATLAB 7. En versiones
anteriores a MATLAB 5.5 existen diferencias sustanciales.
MATLAB es un programa comercial para la realización de cálculos matemáticos
con vectores y matrices. Como caso particular puede también trabajar con números
escalares, tanto reales como complejos. Una de las capacidades más atractivas es la de
realizar una amplia variedad de gráficos en dos y tres dimensiones. Su nombre proviene
de MAtrix LABoratory (Laboratorio de Matrices), dado que el tipo de dato básico que
gestiona es una matriz (arreglo).
MATLAB incorpora un sencillo y eficiente lenguaje de programación que, junto
con sus capacidades gráficas, hacen de él una herramienta muy útil para el desarrollo de
experimentos numéricos. Muchos de estos programas vienen con el sistema, son
funciones "internas" (built-in functions) diseñadas para resolver problemas generales y
otros conforman librerías especializadas (toolboxes) para resolver problemas más
concretos.
Una ventaja de MATLAB es la sencillez de su lenguaje de programación:
muchos programas que resultan difíciles de implementar en lenguajes como C, Fortran,
etc, se implementan con relativa facilidad en MATLAB. Por supuesto, un programa en
C resulta ser generalmente mucho más eficiente que en MATLAB. Una desventaja de
MATLAB es su alto valor comercial: MATLAB es una marca registrada de The
MathWorks, Inc. y por ejemplo el costo de una licencia comercial de MATLAB 7.1
Service Pack 3 (sin ningún toolbox) oscila en torno de los US$2000.
MATLAB es ampliamente conocido y utilizado en universidades e institutos
para el aprendizaje en cursos básicos y avanzados de matemáticas, ciencias y.
especialmente ingeniería. En la industria se utiliza habitualmente en investigación,
desarrollo y diseño de prototipos.
MATLAB es utilizado en computación matemática, modelado y simulación,
análisis y procesamiento de datos, visualización y representación de gráficos, así como
para el desarrollo de algoritmos.
Edición estudiantil de MATLAB
Las ediciones profesional y estudiantil de MATLAB son muy similares. Es
probable que los estudiantes que comienzan no sean capaces de distinguir la diferencia.
Las ediciones estudiantiles están disponibles para los sistemas operativos Microsoft
Windows, Mac OSX y Linux.
¿Cómo se usa MATLAB en la industria?
La habilidad para usar herramientas tales como MATLAB se convirtió
rápidamente en un requisito para muchos puestos de ingeniería. En una reciente
búsqueda de empleo en Monster.com se encontró el siguiente anuncio: … se busca un
ingeniero de sistema de pruebas con experiencia en aviónica… Sus responsabilidades
incluyen modificación de scripts de MATLAB, ejecución de simulaciones en Simulink
y el análisis de los datos del resultado. El candidato debe estar familiarizado con
MATLAB, Simulink y C++…
Este anuncio no es raro. La misma búsqueda arrojó 75 compañías diferentes que
requerían específicamente el manejo de MATLAB para los ingenieros que entraran al
nivel de base. MATLAB es particularmente popular para aplicaciones de ingeniería
eléctrica, aunque se usa muchísimo en todos los campos de la ingeniería y ciencias. Las
secciones que siguen delinean sólo algunas de las muchas aplicaciones actuales que
utilizan MATLAB.
Ingeniería eléctrica
MATLAB se utiliza mucho en ingeniería eléctrica para aplicaciones de
procesamiento de señales. Esto tiene una aplicación potencial en el diseño de robots
autónomos que usen la visión para navegar y en particular en aplicaciones para la
seguridad en automóviles.
Ingeniería biomédica
Por lo general, las imágenes médicas se guardan como archivos dicom (el
estándar Digital Imaging and Communications in Medicine: imágenes digitales y
comunicaciones en medicina). Los archivos dicom utilizan la extensión de
archivo .dcm. La compañía Math Works ofrece una caja de herramientas adicional,
llamada caja de herramientas para imágenes que puede leer esos archivos, lo que hace
que sus datos estén disponibles para procesamiento en MATLAB. La caja de
herramientas para imágenes también incluye un amplio rango de funciones de las que
muchas son especialmente apropiadas para las imágenes médicas. Un conjunto limitado
de datos MRI ya convertidos a un formato compatible con MATLAB se incluye con el
programa MATLAB estándar. Este conjunto de datos le permite probar algunas de las
funciones de generación de imágenes disponibles tanto con la instalación estándar de
MATLAB como con la caja de herramientas para imágenes expandida, si la tiene
instalada en su computadora.
Dinámica de fluidos
Los cálculos que describen velocidades de fluidos (rapideces y direcciones) son
importantes en varios campos. En particular, a los ingenieros aeroespaciales les interesa
el comportamiento de los gases, tanto afuera de una aeronave o vehiculo espacial como
dentro de las cámaras de combustión. Visualizar el comportamiento tridimensional de
los fluidos es difícil, pero MATLAB ofrece cierto número de herramientas que lo hacen
más sencillo.
Resolución de problemas en ingeniería y ciencias
En las disciplinas de ingeniería, ciencias y programación de computadoras, es
importante tener un enfoque consistente para resolver los problemas técnicos. El
enfoque que se plantea a continuación es útil en cursos tan distintos como química,
física, termodinámica y diseño de ingeniería. También se aplica a las ciencias sociales,
como economía y sociología. Otros autores quizá formulen sus esquemas de resolución
de problemas de forma ligeramente diferente, pero todos tienen el mismo formato
básico:
Plantear el problema
En esta etapa con frecuencia es útil hacer un dibujo
Si no tiene una comprensión clara del problema, es improbable que pueda
resolverlo.
Describir los valores de entrada (conocidos) y las salidas (incógnitas) que se
requieren.
Tenga cuidado de incluir las unidades conforme describe los valores de
entrada y salida. El manejo descuidado de las unidades con frecuencia lleva a respuestas
incorrectas.
Identifique las constantes que tal vez requiera en el cálculo, como la
constante de los gases ideales y la aceleración de la gravedad.
Si es apropiado, en un dibujo escriba los valores que haya identificado o
agrúpelos en una tabla.
Desarrollar un algoritmo para resolver el problema. En aplicaciones de cómputo, es
frecuente que esto se logre con una prueba de escritorio. Para ello necesitará.
Identificar cualesquiera ecuaciones que relacionen los valores conocidos con
las incógnitas.
Trabajar con una versión simplificada del problema, a mano o con
calculadora.
Resolver el problema. En este libro, esta etapa involucra la creación de una solución
con MATLAB.
Probar la solución.
¿Sus resultados tienen sentido físico?
¿Coinciden con los cálculos de la muestra?
¿La respuesta es la que se pedía en realidad?
Las gráficas con frecuencia son formas útiles de verificar que los cálculos son
razonables.
Si utiliza en forma consistente un enfoque estructurado de resolución de
problemas, como el que se acaba de describir, descubrirá que los problemas tipo
“narración” son mucho más fáciles de resolver.
2. Funcionalidad de MATLAB
MATLAB es un lenguaje de muy alto nivel diseñado para cómputo técnico.
Integra en un mismo ambiente muy fácil de usar cálculos, visualización y programación.
En este ambiente los problemas y sus soluciones se pueden expresar en notación
matemática fácil de entender. Algunos de los usos más comunes de MATLAB son;
Cálculos matemáticos
Desarrollo de algoritmos
Modelado y simulación
Análisis de datos y
Obtención de gráficas
Desarrollo de interfaces gráficas
MATLAB es el acrónimo de MATrix LABoratory (Laboratorio de matrices) y
originalmente fue desarrollado para realizar operaciones con matrices. El MATLAB
actual es un poderoso sistema de cálculo de operaciones matemáticas y programación
interactivo que integra un sistema de graficación. El lenguaje de programación de
MATLAB es más poderoso que lenguajes tales como FORTRAN, C, Basic,
VisualBasic o Pascal, por mencionar algunos.
Junto a MATLAB se ha desarrollado una colección de herramientas que
programadas en lenguaje de MATLAB pueden realizar un conjunto de actividades en
ciertas áreas de la ingeniería, las ciencias, las finanzas y la economía, por mencionar
algunas.
Algunas de estas herramientas son con enfoque a sistemas de control, procesado
de señales, procesado de imágenes, lógica difusa, redes neuronales, simulación,
optimización, finanzas y economía, entre otras. Estas herramientas se conocen como
toolboxes y constituyen una parte importante de MATLAB que permiten resolver una
clase particular de problemas.
FUNCIONALIDAD DEL SOFTWARE
El usuario puede iniciar MATLAB haciendo doble clic sobre el icono de
MATLAB o invocando la aplicación desde el menú de Inicio de Windows. Al
ejecutarse MATLAB, deberá aparecer una ventana como la que se muestra a
continuación.
Figura 1: La ventana de MATLAB (versión 7)
Partes a destacar del entorno de trabajo de MATLAB:
2.1. Ventana de Comandos o Consola (Command Windows)
Es la ventana principal por medio de la cual el usuario se comunica con
MATLAB. El prompt (>>) indica que MATLAB está listo para recibir comandos, desde
realizar operaciones básicas entre números hasta invocar programas que el propio
usuario realice.
Figura 2: Ventana de Comandos o Consola
2.2 Directorio Actual de Trabajo (Current Directory)
El directorio actual de trabajo es una ruta que MATLAB utiliza como punto de
referencia. Cualquier archivo de MATLAB que el usuario desee ejecutar debe estar
ubicado en el directorio de trabajo. Una manera rápida de ver o cambiar el directorio de
trabajo es por medio del campo mostrado en la figura.
Por defecto, el directorio de trabajo es C:\MATLAB7\work donde el 7 hace
referencia a la versión de MATLAB. En este ejemplo, los archivos del Current
Directory aparecen listados en la figura.
Tres de ellos son archivos de MATLAB (M-files), archivos con extensión .m y
pueden ser invocados desde la línea de comandos.
2.3 La ayuda
La orden helpwin sirve para obtener información sobre un tema concreto. Por
ejemplo,
>> helpwin ans
proporciona información sobre ans. Muy similar a helpwin es la orden doc.
Si no se conoce la orden exacta sobre la que deseamos ampliar la información,
se puede escribir simplemente helpwin para abrir una ventana de ayuda Help en la que
aparecerá, entre otras cosas, una lista de temas, un índice de términos y un buscador de
palabras.
Figura 3: Ventana de ayuda en MATLAB
Cálculos simples en MATLAB
MATLAB puede realizar cálculos simples como si se tratara de una calculadora.
Por ejemplo si deseamos realizar 3 + 7, simplemente escribimos después de EDU>>
esta operación requerida. Esto es
EDU>> 3 + 7
y presionamos la tecla ENTER. (Usaremos negritas para lo que escribimos nosotros y
normal para lo que escribe MATLAB.) MATLAB nos da el resultado como
ans=
10
La indicación para oprimir la tecla ENTER es obvia y no siempre la
escribiremos.
Operaciones básicas y su precedencia
Operación Símbolo Ejemplo Precedencia
Suma + 4 + 2 = 6 3
Resta – 4 – 2 = 2 3
Multiplicación * 4 * 2 = 8 2
División / 4 / 2 = 2 2
Potenciación ^ 4 ^ 2 = 16 1
La precedencia significa el nivel de prioridad que aplica MATLAB para realizar las
operaciones. La potenciación tiene asignada la mayor prioridad, la multiplicación y la
división la siguiente y finalmente la suma y resta tienen la menor prioridad.
Por ejemplo en
EDU>> 4 + 6/2 <ENTER>
ans=
7
primero se realiza la división 6/2 y su resultado que es 3 se suma al 4 para dar el
resultado de 7. La precedencia se puede alterar usando paréntesis. Por ejemplo
EDU>> (4 + 6)/2 <ENTER>
ans=
5
ya que primero se efectúa el paréntesis y luego la división.
Tambien se pueden evaluar otras funciones como las funciones trigonométricas.
Por ejemplo
EDU>> sin(3)
ans=
0.1411
Aquí el argumento está en radianes. Para un listado de todas las funciones elementales
existentes en MATLAB simplemente escribimos help elfun. El significado de elfun es
elementary functions.
Algunas funciones en MATLAB
Función Notación en MATLAB
sen x sin (x)
cos x cos (x)
tan x tan (x)
sqrt (x)
log (x) log10 (x)
ln (x) log (x)
| x | abs (x)
e x exp (x)
A continuación presentamos algunos ejemplos
Si aproximamos el número irracional por 3.1416 obtenemos para sen
(3.1416):
EDU>> sin (3.1416)
ans=
-7.3464e-006
que es una buena aproximación al resultado exacto que es cero. MATLAB tiene
predefinido el valor de y lo almacena en la constante pi. De esta manera,
EDU>> sin (pi)
ans=
1.2246e-016
que es una mejor aproximación al resultado esperado.
EDU>> sqrt (2)
ans=
1.4142
EDU>> log10 (1000)
ans=
3.0000
Algunas constantes definidas en MATLAB son
pi 3.14159265…….
i unidad imaginaria =
j igual que i
eps precisión de las operaciones de punto flotante, 2-52
Inf infinito
NaN no un número (Not a Number)
En particular eps es una cantidad que se usa por lo general para evitar división
por cero y NaN es un resultado que MATLAB presenta cuando el resultado de la
operación indicada no es numérico.
3. COMO REALIZAR OPERACIONES MATEMÁTICAS, LÓGICAS Y RELACIONALES EN MATLAB.
3.1 Operadores Aritméticos.
El primer uso básico que le podemos dar a la ventana de comandos de
MATLAB es el de una calculadora, ingresamos los valores a operar y oprimimos la
tecla enter. Así por ejemplo
>> 3+4
ans =
7Las operaciones aritméticas son realizadas en el siguiente orden de prioridad:
Potenciación (^), división (/), producto (*), y suma (+) y resta (−). Así por ejemplo
>> 5/10*2+5
ans =
6
Si se quiere forzar un determinado orden, se deben utilizar paréntesis, que se evalúan
siempre al principio.
>> 5/(10*2+5)
ans =
0.2000
Las operaciones de igual prioridad se evalúan de izquierda a derecha:
>> 2/4*3
ans =
1.5000
Mientras que
>> 2/(4*3)
ans =
0.1667
Los cálculos que no se asignan a una variable en concreto se asignan a la variable de
respuesta por defecto que es ans (del inglés, answer):
>> 2+3
ans =
5Sin embargo, si el cálculo se asigna a una variable, el resultado queda guardado en ella:
>> x=2+3
x =
5
Para conocer el valor de una variable, basta teclear su nombre:
>> x
x =
5
Si se añade un punto y coma (;) al final de la instrucción, la máquina no muestra la
respuesta...
>> y=5*4;
... pero no por ello deja de realizarse el cálculo.
>> y
y =
20
Dos observaciones. El punto decimal es . (no una coma), y en MATLAB, las mayúsculas
y las minúsculas son distintas. Es decir, X es una variable diferente de x.
Además de ans, existen otro tipo de variables en MATLAB cuyo contenido se
encuentra predeterminado. Por ejemplo la variable pi almacena el valor 3.14159 . . .
>> pi
ans =
3.1416
y la variable i almacena el valor de
>> i
ans =
0 + 1.0000i
En el caso de variables numéricas, MATLAB presenta por defecto los
contenidos de las variables aproximados a 4 cifras decimales. El usuario puede
modificar el formato con el que se presentan los contenidos de tales variables con el
comando format, como se muestra en el siguiente ejemplo, sin olvidar que esto no
modifica los contenidos de las variables ni la manera como MATLAB ejecuta
internamente los computos, sino con el aspecto con que éstos se muestran:
>> 1/3
ans =
0.3333
>> format long
>> 1/3
ans =
0.33333333333333
>> format
Vuelve al formato estándar que es el de 4 cifras decimales.
En MATLAB están también definidas algunas funciones elementales. Las funciones, en
MATLAB, se escriben introduciendo el argumento entre paréntesis a continuación del
nombre de la función, sin dejar espacios. Así, por ejemplo, la función coseno,
>> cos(pi) ans =
-1pi es una variable con valor predeterminado 3.14159...
la función exponencial
>> exp(1)ans =
2.7183
función exponencial evaluada en 1, es decir, el número e
Otro ejemplo de función matemática: la raíz cuadrada; como puede verse, trabajar con
complejos no da ningún tipo de problema. La unidad imaginaria se representa en
MATLAB como i o j, variables con dicho valor como predeterminado:
>> sqrt(-4)
ans =
0+ 2.0000i
He aquí una tabla con algunas funciones elementales:Descripción Notación Científica Nombre en
MATLABEjemplo
Valor absoluto de x abs(x) >> abs(-24)ans = 24
Raíz cuadrada de x sqrt(x) >> sqrt(81)ans = 9
Exponencial de x exp(x) >> exp(5)ans = 148.4132
Logaritmo natural de x
log(x) >> log(100)ans = 4.6052
Logaritmo en base 10 de x
log10(x) >> log10(1000)ans = 3
Seno de x sin(x) >> sin(pi/6)ans = 0.5000
Coseno de x(x en radianes)
cos(x) >> cos(pi/6)ans = 0.8660
Tangent de x(x en radianes)
tan(x) >> tan(pi/6)ans = 0.5774
Secante de x(x en radianes)
sec(x) sec(pi/4)ans = 1.4142
Cosecante de x(x en radianes)
csc(x) csc(pi/4)ans = 1.4142
Cotangente de x(x en radianes)
cot(x) cot(pi/4)ans = 1.0000
Arcoseno de x (*) asin(x) >> asin(0.5)ans = 0.5236
Arcocoseno de x (*) acos(x) >> acos(0.5)ans = 1.0472
Arcotangente de x (*) atan(x) atan(1)ans = 0.7854
Factorial de x factorial(x) >> factorial(5)ans = 120
(*) El valor de retorno de la función viene dado en radianes.
3.2 Operadores de Comparación
Existen en MATLAB seis operadores de comparación: igual a (==), diferente de
(~=), menor que (<), mayor que (>), menor o igual a (<=) y mayor o igual a (>=). Por
ejemplo
>> 1 == 2
ans =
0produce como resultado ans = 0 (falso) mientras que
>> 1 < 2
ans =
1produce como resultado ans = 1 (verdadero). Observemos que al igual que con los
operadores aritméticos, para los operadores de relación el orden importa:
>> 1>2==2<3
ans =
1produce 1 (verdadero) mientras que
>> 1>2==(2<3)
ans =
0produce 0 (falso).
3.3. Operadores Lógicos
Los operadores lógicos son el Y (&), el O ( | ) y la negación (~). MATLAB le da
prioridad primero a ~, luego a & y finalmente a |. Asi por ejemplo
>> 0&11
ans =
1
da verdadero (cualquier valor distinto de cero es considerado verdadero) y
>> 0&(11)
ans =
0da falso. Otra operación lógica es el O excluyente (xor).
La tabla de verdad para todos estos operadores es mostrada a continuación
A B A&B A|B ~A Xor(A,B)0 0 0 0 1 00 1 0 1 1 11 0 0 1 0 11 1 1 1 0 0
4. VECTORES Y MATRICES
Uno de los aspectos más notables de MATLAB lo constituye la forma en que
permite manipular y operar con vectores y matrices.
Vectores fila
En general, se introducen escribiendo entre corchetes cada una de sus
componentes separadas por un espacio o una coma. Por ejemplo:
>> u=[1 2 3] %vector fila
u =
1 2 3
>> v=[2,0,-2] %vector fila
v =
2 0 -2
Vectores columna y matrices
En general, se introducen como los vectores "fila", separando las filas por un
punto y coma:
>> w = [3;-2;6] % vector columna
w =
3 -2 6
Para introducir una matriz en MATLAB se procede de la forma siguiente. Si
por ejemplo tenemos la matriz
se introduce como:
>> A = [1 2 3; 2 0 -2; 3 -4 3]
A =
1 2 3 2 0 -2 3 -4 6
O bien,>> B=[1, 2, 3, 4; 5, 6, 7, 8]
B =
1 2 3 4 5 6 7 8
4.1 Elementos de vectores y matrices
Hemos visto como definir vectores y matrices. Una vez definida una matriz a o un
vector es posible acceder o modificar sus elementos o submatrices con las órdenes
siguientes:
v(i) componente de v que ocupa la posición i.
v(i:j) componentes de v situadas entre la posición i y la posición j.
a(i,j) elemento de la matriz a que está en la fila i y la columna j.
a(i:j,k:l) submatriz de a que contiene las filas i hasta j y columnas k hasta l.
a(i,:) fila i de la matriz a.
a(:,j) columna j de la matriz a.
a(u,w) submatriz de a que contiene las filas indicadas en el vector u y las
columnas indicadas en el vector w.
Accediendo a los elementos de vectores o matrices
>> v(2) %componente 2 del vector v
ans =
0
>> w(3) %componente 3 del vector w
ans =
6
>> A(2,3) %elemneto (2,3) de la matriz A
ans =
-2
>> w(2:3) %componentes de la 2 a la 3 del vector w
ans =
-2 6>> v(1:2) %componentes del 1 al 2 del vector v
ans =
2 0
B(1:2,3:4) %submatriz de A desde filas 1 al 2, columnas 3 al 4
ans =
3 4 7 8
>> A(3,:) %fila 3 de la matriz A
ans =
3 -4 6
>> B(:,2) %columna 2 de la matriz B
ans =
2 6
Cambiando o redefiniendo los valores de vectores o matrices
>> u(1)=0 %redefine la primera componente de u a 0
u =
0 2 3
>> w(3)=-1 %redefine la componente 3 de w a -1
w =
3 -2 -1
>> A(2,2)=7 %redefine el elemento (2,2) de la matriz A a 7
A =
1 2 3 2 7 -2 3 -4 6
>> A(3,:)=[1 1 1] %redefine la 3 fila de A a (1 1 1)
A =
1 2 3 2 7 -2 1 1 1
>> B(:,4)=[4; 4] %refefine la 4 columna de B OJO con el ;
B =
1 2 3 4 5 6 7 4
4.2 Operaciones básicas con Matrices
Hemos visto cómo se introducen las matrices en MATLAB. Veamos un ejemplo para
introducir algunos de los comandos básicos:
>> A=[2 1;3 2]
A =
2 1 3 2
>> B=[3 4;-1 5]
B =
3 4 -1 5
>> L=[1 3 4; 6 8 -2]; M=[2 -1 -3;-5 -2 -4]; P=[2 3;5 -1];
Para sumar las dos matrices:
>> A+B
ans =
5 5 2 7
>> N=L+M
N =
3 2 1 1 6 -6Para multiplicar una matriz por un escalar:
>> 3*A
ans =
6 3 9 6
>> -2*M
ans =
-4 2 6 10 4 8
Observación: las operaciones con matrices deben hacerse entre matrices del mismo tipo
o tamaño en caso contrario MATLAB devuelve un error
>> A+M??? Error using ==> plusMatrix dimensions must agree.
Que significa: Error usando ==> suma. Las dimensiones de las matrices deben coincidir
Producto de matrices:
>> C=A*B
C =
5 13 7 22
>> P*M
ans =
-11 -8 -18 15 -3 -11
Siempre que los tamaños de las matrices sean los adecuados. Para saber cuál es el
tamaño de una matriz con la que estamos trabajando
>> size(A)
ans =
2 2
Que quiere decir, evidentemente, 2 filas y 2 columnas.
Para halla la matriz transpuesta usamos el apostrofe (') no confundirlo con el acento (´):
>> A'
ans =
2 3 1 2
>> L'
ans =
1 6 3 8 4 -2
Una función muy importante al trabajar con matrices es el determinante de una matriz
(det), es una función que solo está definida para matrices cuadradas
>> det(A)
ans =
-14
>> det(M)??? Error using ==> detMatrix must be square.(Error usando ==> det. La matriz debe ser cuadrada)
>> det(P') %determinante de P transpuesta
ans =
-17Si ahora calculamos el determinante de P comprobaremos los que no dice la teoría
det(P’)=det(P)
>> det(P)
ans =
-17
4.3 Ejemplos de operaciones con matrices
>> C=ones(2) % genera una matriz 2x2 de unos
C =
1 1 1 1
>> D=zeros(2,3) % genera una matriz 2x3 de ceros
D =
0 0 0 0 0 0
>> E=rand(3,2) % genera una matriz 3x2 aleatoria
E =
0.8147 0.9134 0.9058 0.6324 0.1270 0.0975
>> F=eye(3) % genera la matriz identidad de orden 3
F =
1 0 0 0 1 0 0 0 1
>> diag(F) % extrae la diagonal principal de F
ans =
1
1 1
>> diag([1 2 3]) % genera una matriz diagonal
ans =
1 0 0 0 2 0 0 0 3
>> A=[1 3 4; 5 5 -6]; B=[4 -2 -6;-5 -2 -4]; F=[5 1;2 -3];
>> C=A+B
C =
5 1 -2 0 3 -10
>> D=A-B
D =
-3 5 10 10 7 -2
>> E=A*B'
E =
-26 -27 46 -11
>> A.^2 %genera una matriz cuyos elementos son los de A elevado a la 2
ans =
1 9 16 25 25 36
>> A.*B %multiplicación uno a uno de elemento de A por elemento B
ans =
4 -6 -24 -25 -10 24
>> det(F) % obtiene el determinante de F
ans =
-17
>> inv(F) % obtiene la inversa de F
ans =
0.1765 0.0588 0.1176 -0.2941
Conclusión
En conclusión vemos que MATLAB es una potente herramienta que disponemos
para realizar cálculos en el ambiente de ingeniería y otras especialidades, con
capacidades que gradualmente podemos ir incluyendo a nuestros conocimientos y
aplicaciones del quehacer laboral e intelectual.
Generalmente el estudiante o Ingeniero que trabaja en procesos choca con la
dificultad de los complejos cálculos matemáticos que hay que desarrollar para resolver
los problemas que se generan en su área de trabajo. Encontrar la solución a estos
problemas muchas veces se torna engorroso y se corre el riesgo del que el más mínimo
error que se cometa en los procedimientos no permitan encontrar una respuesta o esta
sea errónea. Gracias a las facilidades de MATLAB se puede estar seguro sobre hallar la
respuesta correcta con menos esfuerzos y además se tiene un ahorro de tiempo
considerable.
Hoy en día, MATLAB es un programa muy potente, con un entorno agradable,
que incluye herramientas de cálculo científico y técnico y de visualización gráfica, así
como un lenguaje de programación de alto nivel que nos permite ir como siempre
gradualmente incrementando las capacidades de las posibles aplicaciones que se puedan
realizar.
MATLAB es una herramienta de cómputo orientada para realizar cálculos sobre
matrices. Cuenta con una gran cantidad de toolboxes para análisis y procesamiento de
datos. Además cuenta con una gran cantidad de herramientas para graficar funciones de
dos y tres dimensiones las cuales están integradas dentro de MATLAB. También
proporciona un ambiente de programación, el cual puede ser ampliado por el usuario
desarrollando sus propios archivos-m e integrándolos dentro del acervo de programas de
MATLAB. La manera de desarrollar programas en MATLAB es muy intuitiva y
permite generar código de una manera muy rápida. MATLAB trabaja con una memoria
dinámica que no requiere que se le declaren las variables que se van a usar durante el
programa, sino que estas se definen al usarlas por primera vez. Esta es una gran ventaja
ya que el usuario está en libertad de definir sus variables según lo requiere al escribir el
código.
MATLAB es un entorno de computación técnica que posibilita la ejecución del
cálculo numérico y simbólico de forma rápida y precisa, acompañado de características
gráficas y de visualización avanzadas aptas para el trabajo científico y la ingeniería.
MATLAB es un entorno interactivo para el análisis y el modelado que implementa más
de 500 funciones para el trabajo en distintos campos de la ciencia.
Por otra parte, MATLAB presenta un lenguaje de programación de muy alto
nivel basado en vectores, arrays y matrices. Además el entorno básico de MATLAB se
complementa con una amplia colección de toolboxes que contienen funciones
específicas para determinadas aplicaciones en diferentes ramas de las ciencias y la
ingeniería. En este curso de matemática aplicada se comenzara tratando el módulo
básico de MATLAB y sus aplicaciones en materias como la programación, el análisis
matemático, el álgebra lineal y el cálculo numérico.
MATLAB es óptimo para cálculos matriciales. Además MATLAB se actualiza
regularmente u algo que es muy importante es que se usa ampliamente en la ingeniería.
Sin duda alguna la idea clave es que siempre use una estrategia sistemática de
resolución de problemas.
Bibliografía
Pérez López César. (2002). MATLAB y sus aplicaciones en las ciencias y la ingeniería.
Prentice Hall. Páginas: 6 – 14.
Báez López David. (2006). MATLAB con aplicaciones a la ingeniería, física y finanzas.
Alfaomega. Páginas: 9 – 32.
Moore Holly. (2007). Matlab para ingenieros. Pearson Prentice Hall. Paginas: 1 – 53.
Escalante Fernández René. CURSO INTRODUCTORIO DE MATLAB. Editorial
Equinoccio. Venezuela 2006
Gilat Amos. MATLAB: UNA INTRODUCCIÓN CON EJEMPLOS PRÁCTICOS.
Editorial Reverté. España 2006.
Javier García de Jalón, José Ignacio Rodríguez, Jesús Vidal. APRENDA MATLAB 7.0
COMO SI ESTUVIERA EN PRIMERO. Escuela Técnica Superior de Ingenieros
Industriales. Universidad Politécnica de Madrid. España 2005
Tomás Aranda y J. Gabriel García. Tomás Aranda y J. Gabriel García. NOTAS SOBRE
MATLAB. Servicio de publicaciones de la Universidad de Oviedo. España 1999.