trabajo matlab 5% respuestas
Post on 18-May-2015
1.646 Views
Preview:
TRANSCRIPT
Universidad CentroccidentalLisandro Alvarado
Decanato de AgronomíaPrograma de Ingeniería Agroindustrial
Desechos Agroindustriales I
Bachilleres:González María E. C.I:18.656.797
Sosa Jorge C.I:18.104.057Prof.: Juan Molina
Computación Aplicada
29/04/2011
INTRODUCCIONINTRODUCCION
MATLAB es un lenguaje de alto nivel desarrollado para realizar cálculos técnicos. Su
nombre deriva de Matrix Laboratory (Laboratorio de Matrices). Por su capacidad
MATLAB es un sistema interactivo ideal para aplicaciones de ingeniería. Los distintos usos
que se le pueden dar son: Matemáticas y cálculos, Desarrollo de algoritmos, Modelado y
simulación, Análisis y visualización de datos, Gráficos científicos e ingenieriles,
Desarrollos aplicados, incluyendo la construcción de interfaces gráficas.
MATLAB nace como una solución a la necesidad de mejores y más poderosas
herramientas de cálculo para resolver problemas de cálculo complejos en los que es
necesario aprovechar las amplias capacidades de proceso de datos de grandes
computadores.
Fue creado por Cleve Moler en 1984, surgiendo la primera versión con la idea de
emplear paquetes de subrutinas escritas en Fortran en los cursos de álgebra lineal y análisis
numérico, sin necesidad de escribir programas en dicho lenguaje. El lenguaje de
programación MATLAB fue creado en 1970 para proporcionar un sencillo acceso al
software de matrices LINPACK y EISPACK sin tener que usar Fortran. En 2004, se
estimaba que MATLAB era empleado por más de un millón de personas en ámbitos
académicos y empresariales.
El Lenguaje de Computación Técnica MATLAB es un ambiente de computación
técnica integrada que combina computación numérica, gráficos y visualización avanzada y
un lenguaje de programación de alto nivel. Combina computación numérica, gráficos 2D y
3D y capacidades de lenguaje en un único ambiente fácil de usar. Con su amplio rango de
herramientas para modelar sistemas de control, análisis, simulación y procesamiento de
prototipos, es además el sistema ideal para desarrollar sistemas avanzados de control.
Que es MATLAB
Es un lenguaje de alto desempeño diseñado para realizar cálculos técnicos. MATLAB
integra el cálculo, la visualización y la programación en un ambiente fácil de utilizar donde
los problemas y las soluciones se expresan en una notación matemática. MATLAB es un
sistema interactivo cuyo elemento básico de datos es el arreglo que no requiere de
dimensionamiento previo. Esto permite resolver muchos problemas computacionales,
específicamente aquellos que involucren vectores y matrices, en un tiempo mucho menor al
requerido para escribir un programa en un lenguaje escalar no interactivo tal como C o
Fortran.
Funcionalidad de MATLAB
En el ámbito académico y de investigación, es la herramienta estándar para los cursos
introductorios y avanzados de matemáticas, ingeniería e investigación. En la industria
MATLAB es la herramienta usada para el análisis, investigación y desarrollo de nuevos
productos tecnológicos.
La ventaja principal de MATLAB es el uso de familias de comandos de áreas
específicas llamadas toolboxes. Lo más importante para los usuarios de MATLAB es que
los toolboxes le permiten aprender y aplicar la teoría. Los toolboxes son grupos de
comandos de MATLAB (archivos M) que extienden el ambiente de MATLAB para
resolver problemas de áreas específicas de la ciencia e ingeniería. Por ejemplo, existen
toolboxes para las áreas de Procesamiento Digital de Señales, Sistemas de Control, Redes
Neuronales, Lógica Difusa, Wavelets, etc.
Como realizar operaciones matemáticas, lógicas y relacionales en Matlab.
(Plantear ejemplos de sumas, restas, comparaciones con desigualdades,
operaciones lógicas and, or, etc entre dos valores).
Funciones Matemáticas:
Orden de evaluación: se evalúan primero las potencias, a continuación los productos y
divisiones y finalmente las sumas y restas. Cuando aparezcan operaciones con el mismo
orden de precedencia a la hora de ser evaluadas (productos y divisiones o bien sumas y
restas) se efectúan las operaciones de izquierda a derecha.
OPERACIÓN SÍMBOLO EJEMPLOSuma + 5+3
Resta - 32-12
Multiplicación * 3.4*0.85
División / ó \ 56/8 = 8 \56
Potencia ^ 5^2
También:
3^2-5-6/3*2=0 4*3^2+1=37
Se pueden utilizar paréntesis para alterar el orden de las operaciones:
3^2-5-6/ (3*2)=3 (4*3) ^2+1=145
Funciones Lógica y Relacional
Matlab dispone de tres operadores lógicos
& (y)
| (o)
~ (No)
... y las únicas respuestas posibles con las operaciones lógicas son:
Cierto = 1 y Falso = 0.
El resultado de C = A & B es una matriz cuyos elementos son unos donde A y B sean
ambos distintos de cero, y ceros donde A ó B sean cero. A y B deben ser matrices con las
mismas dimensiones, a menos que una de ellas sea un escalar.
El resultado de C = A| B es una matriz cuyos elementos son unos donde A ó B tienen un
elemento diferente de cero, y ceros donde ambas tienen elementos cero. A y B deben ser de
matrices con las mismas dimensiones, a menos que una sea un escalar.
El Resultado de B = ~ A es una matriz cuyos elementos son uno donde A tiene un elemento
cero, y ceros donde A tiene elementos diferentes de cero.
Asimismo, se dispone de 6 operadores relacionales:
> Mayor que
< Menor que
>= Mayor o igual a
<= Menor o igual a
== Igual a
Ejemplo funciones y, o, no (&,|, ¯)
(1 < 2) & (2 < 3) Verdadero (1)
(1 < 2) & (2 < 1) Falso (0)
(1 < 2) | (2 < 1) Verdadero (1)
~ (2 < 1) Verdadero (1)
Ingresar una matriz
Como en casi todos los lenguajes de programación, en MATLAB las matrices y
vectores son variables que tienen nombres.
Para definir una matriz no hace falta establecer de antemano su tamaño (de hecho, se
puede definir un tamaño y cambiarlo posteriormente). MATLAB determina el número de
filas y de columnas en función del número de elementos que se proporcionan (o se
utilizan). Las matrices se definen por filas; los elementos de una misma fila están
separados por blancos o comas, mientras que las filas están separadas por pulsaciones intro
o por caracteres punto y coma.
Para introducir una matriz en Matlab se procede de la forma siguiente. Si por ejemplo
tenemos la matriz
A=(1 2 35 6 7
48)
Se introduce como:
>> A = [1 2 3 4; 5 6 7 8]
A =
1 2 3 4
5 6 7 8
O bien,
>> A = [1, 2, 3,4; 5, 6, 7,8]
Observemos que unas matrices especiales son los vectores, de esta forma, el vector fila v =
(1.0, 1.1, 1.2, 1.3,...,1.9, 2.0)
Operaciones con Matrices
MATLAB puede operar con matrices por medio de operadores y por medio de
funciones.
Se han visto ya los operadores suma (+), producto (*) y traspuesta ('), así como la función
invertir inv( ).
Los operadores matriciales de MATLAB son los siguientes:
+ Adición o suma
– sustracción o resta 16
* Multiplicación
' Traspuesta
^ Potenciación
\ división-izquierda
/ división-derecha
.* Producto elemento a elemento
/. y.\ división elemento a elemento
^. Elevar a una potencia elemento a elemento
Estos operadores se aplican también a las variables o valores escalares, aunque con
algunas diferencias. Todos estos operadores son coherentes con las correspondientes
operaciones matriciales: no se puede por ejemplo sumar matrices que no sean del mismo
tamaño. Si los operadores no se usan de modo correcto se obtiene un mensaje de error.
Los operadores anteriores se pueden aplicar también de modo mixto, es decir con un
operando escalar y otro matricial. En este caso la operación con el escalar se aplica a cada
uno de los elementos de la matriz. Considérese el siguiente ejemplo:
» A=[1 2; 3 4]
A =
1 2
3 4
» A*2
ans =
2 4
6 8
» A-4
ans =
-3 -2
-1 0
Los operadores de división requieren una cierta explicación adicional. Considérese el
siguiente sistema de ecuaciones lineales,
Ax = b (1)
En donde x y b son vectores columna, y A una matriz cuadrada invertible. La resolución de
este sistema de ecuaciones se puede escribir en las 2 formas siguientes:
x = inv(A)*b (2a)
x = A\b (2b)
Así pues, el operador división-izquierda por una matriz (barra invertida \) equivale a
premultiplicar por la inversa de esa matriz. En realidad este operador es más general de lo
que aparece en el ejemplo anterior: el operador división-izquierda es aplicable aunque la
matriz no tenga inversa e incluso no sea cuadrada, en cuyo caso la solución que se obtiene
(por lo general) es la que proporciona el método de los mínimos cuadrados. En algunos
casos se obtiene la solución de mínima norma sub-1. Por ejemplo, considérese el siguiente
ejemplo de matriz (1x2) que conduce a un sistema de infinitas soluciones:
» A= [1 2], b= [2]
A =
1 2
b =
2
» x=A\b
x =
0
1
Que es la solución cuya suma de valores absolutos de componentes (norma sub-1) es
mínima. Por otra parte, en el caso de un sistema de ecuaciones redundante (o sobre
determinado) el resultado de MATLAB es el punto más “cercano” -en el sentido de los
mínimos cuadrados- a las ecuaciones dadas (aunque no cumpla exactamente ninguna de
ellas). Véase el siguiente ejemplo de tres ecuaciones formadas por una recta que no pasa
por el origen y los dos ejes de coordenadas:
» A= [1 2; 1 0; 0 1], b= [2 0 0]'
A =
1 2
1 0
0 1
b =
2
0
0
» x=A\b, resto=A*x-b
x =
0.3333
0.6667
resto =
-0.3333
0.3333
0.6667
Aunque no es una forma demasiado habitual, también se puede escribir un sistema de
ecuaciones lineales en la forma correspondiente a la traspuesta de la ecuación (1):
yB = c (3)
Donde y y c son vectores fila (c conocido). Si la matriz B es cuadrada e invertible, la
solución de este sistema se puede escribir en las formas siguientes:
y = c*inv(B) (4a)
y = c/B (4b)
En este caso, el operador división-derecha por una matriz (/) equivale a postmultiplicar por
la inversa de la matriz. Si se traspone la ecuación (3) y se halla la solución aplicando el
operador división-izquierda de obtiene:
y’ = (B’)\c’ (5)
Comparando las expresiones (4b) y (5) se obtiene la relación entre los operadores división
izquierda y división-derecha (MATLAB sólo tiene implementado el operador
división-izquierda):
c/B = ((B’)\c’)’ (6)
En MATLAB existe también la posibilidad de aplicar elemento a elemento los operadores
matriciales (*, ^, \ y /). Para ello basta precederlos por un punto (.). Por ejemplo:
» [1 2 3 4] ^2
??? Error using ==> ^
Matrix must be square.
» [1 2 3 4]. ^2
ans =
1 4 9 16
» [1 2 3 4]*[1 -1 1 -1]
??? Error using ==> *
Inner matrix dimensions must agree.
» [1 2 3 4].*[1 -1 1 -1]
ans =
1 -2 3 -4
Acceder a una posición de la matriz
Se accede a los elementos de un vector poniendo el índice entre paréntesis (por ejemplo
x (5) ó x (i)). Los elementos de las matrices se acceden poniendo los dos índices entre
paréntesis, separados por una coma (por ejemplo A (1,2) ó A (i, j)). Las matrices se
almacenan por columnas (aunque se introduzcan por filas, como se ha dicho antes), y
teniendo en cuenta esto puede accederse a cualquier elemento de una matriz con un sólo
subíndice. Por ejemplo, si A es una matriz (3x3) se obtiene el mismo valor escribiendo A
(1,2) que escribiendo A (4).
Cambiar un valor de una posición especifica en una matriz.
Al igual que sucede con los vectores, es posible cambiar el valor de un solo
elemento de la matriz asignándole un nuevo valor. Asimismo, los elementos se pueden
utilizar individualmente como variables en expresiones matematicas y funciones. He
aquí algunos ejemplos:
>>MAT = [3 11 6 5; 4 7 10 2; 13 9 0 8] crea una matriz 3 x 4
MAT =
3 11 6 5
4 7 10 2
13 9 0 8
>> MAT(3,1) = 20 asigna un nuevo valor al elemento (3,1)
MAT =
3 11 6 5
4 7 10 2
20 9 0 8
>>MAT(2,4) – MAT(1,2) utilización de los elementos de la matriz en
ans = expresiones matematicas
-9
>>
Multiplicación de Matrices.
La multiplicación de matrices en MATLAB se expresa usando el operador para la
multiplicación:
>> a = [1 2;4 3;0 2];
>> b = [5; 1];
>> c = a * b
Produce:
c = 7
232
A continuación se muestran las matrices que se pueden generar con MATLAB:
Matrices Elementales Descripción
Eye (n) Matriz identidad
Ones (m, n) Arreglo m x n de unos
Rand (m, n) Aleatoria unif. m x n
Randn (m, n) Aleatoria norm. m x n
zeros (n) Matriz n x n nula
zeros (m, n) Matriz m x n nula
Matrices Especiales Descripción
Gallery Matrices de prueba de Higham
Hadamard (n) Matriz de Hadarmard
Hankel (n) Matriz de Hankel
Hilb (n) Matriz de Hilbert
Invhilb (n) Inversa de hilb(n)
Magic (n) Cuadro Mágico
Pascal (n) Matrices de Pascal
Rosser Matriz deprueba para el problema de los
autolavadores (caso simetrico)
Sparse Crea una matriz dispersa
Spiral (n) Sigue un patrón en esperial
Toeplitz (c, r) Matriz de Toeplitz
Vander Matriz de Vandermonde
Wilkinson (n) Matriz de prieba de Winkinson
Determinar una matriz Transpuesta.
Se puede determinar la transpuesta de un vector o de una matriz así.
x'
Si deseo crear una matriz z con el valor del transpuesto de y solo hay que asignarle la
transpuesta de x a z así:
z = x'
Si A = [1 2 3; 4 5 6] tiene dos filas
A = [12 3
4 5 6] También genera la matriz A, pero es más difícil de escribir.
B = [1 2 3; 4 5 6]' es la transpuesta de A. Así pues, AT es A' en MATLAB.
Ejemplos de operaciones con matrices.
Suma:
a. » x=[10 20 30]
x =
10 20 30
» y=[11; 12; 13]
y =
11
12
13
» x+y'
ans =
21 32 43
b. >>A=[2 1;3 2]
A =
2 1
3 2
>>B=[3 4;-1 5]
B =
3 4
-1 5
>>A+B
ans =
5 5
2 7
Resta:
a. » A=[1 2; 3 4]
A =
1 2
3 4
» A-4
ans =
-3 -2
-1 0
b. >> A = [1 2 3; 4], B = [5, 6, 7, 8]
A =
1 2 3 4
B =
5 6 7 8
>> A - B
ans =
-4 -4 -4 -4
Multiplicación:
a. A=[1 2 3; -2 3 5; 3 4 17]
x=[1 -3 7]
Ax=A*x
Ax =
16
24
110
b. » A=[1 2; 3 4]
A =
1 2
3 4
» A*2
ans =
2 4
6 8
División:
a. » A=[1 2], b=[2]
A =
1 2
b =
2
» x=A\b
x =
0
1
b. >> A = [1 2 3; 4], B = [5, 6, 7, 8]
A =
1 2 3 4
B =
5 6 7 8
>> A / B
ans =
0.2000 0.3333 0.4286 0.5000
Transpuesta:
a. >>A=[2 1;3 2]
A =
2 1
3 2
>>B=[3 4;-1 5]
B =
3 4
-1 5
>>A'
ans =
2 3
1 2
b. A =[2 4;6 8];
A =
2 4
6 8
C = A'
C =2 6 4 8
CONCLUSIONCONCLUSION
MATLAB ha pasado de ser algo creado simplemente para dar apoyo en cursos
relacionados con Teoría de Matrices a convertirse en una poderosa herramienta tanto en el
ámbito educativo como en el industrial.
A nivel educativo se ha convertido en la principal herramienta de los cursos
relacionados con el Álgebra Matricial, tanto a nivel básico como a nivel superior. A nivel
industrial, tiene una gran cantidad de aplicaciones en muchos problemas prácticos de
ingeniería y matemáticas. Es altamente utilizado en geofísica, en el diseño de sistemas de
control, en procesamiento de señales, en inteligencia artificial y redes neuronales, en
simulación de sistemas dinámicos, en optimización, en problemas de modelaje y sistemas
dinámicos (con Simulink, que puede considerarse como una extensión o un anexo de
MATLAB), etc. Otro aspecto importante hoy en día es su capacidad gráfica, en 2 y en 3
dimensiones.
Es importante resaltar que para programar en MATLAB lo que se necesita es visualizar
el esquema de lo que se quiere realizar, es decir del programa que se quiere hacer y
prácticamente traducirlo al lenguaje inglés con muy pocos detalles de sintaxis. Para
personas que tengan nociones básicas de programación, puede aprender las cosas más
elementales de MATLAB de manera autodidacta siempre y cuando tenga las nociones
matemáticas elementales del manejo de las matrices.
MATLAB es un entorno interactivo que utiliza como tipos de datos básicos vectores y
matrices de flotantes que no requieren ser dimensionados. Permite distinguir vectores fila
de vectores columna y calcular la transpuesta de un vector, admite tres opciones distintas de
formato: format long: muestra los valores con la mayor precisión posible para format
short: la opción por defecto. Format rat (o format rational): muestra los valores en forma
de racionales. Es posible sumar vectores, multiplicarlos por un escalar, calcular su módulo
o calcular su producto escalar; como se ha descrito anteriormente permite definir matrices y
acceder a sus componentes elementales; también es posible extraer fácilmente submatrices
así como multiplicar matrices y vectores
Por todo lo anterior se puede decir que el objetivo además de conocer los comandos en
un lenguaje de instrucciones se busca en general el entendimiento del proceso, las
funciones que ejercen los comandos digitados por el usuario tienen una función
determinada, lo que se busca es facilitar estos procesos que requieren que se resuelvan a
papel y lápiz, pero con solo entender lo que se necesita realizar, podemos lograr estos
cálculos utilizando de manera esencial la herramienta MATLAB.
BIBLIOGRAFIABIBLIOGRAFIA
Matlab e Interfaces Gráficas. Universidad Autónoma de Baja California, Unidad
Tijuana
Ambrosio.Operaciones con matrices y vectores. Capitulo 2. Ambrosio.
Introducción a Matlab: Conceptos Básicos. Luis Pedauga y Francisco Sáez. Julio 4,
2005
Gilat Amos. Matlab una introducción con ejemplos practicos. Segunda Edicion.
Editorial Reverté. Barcelona España. 2005.
Escalante Fernández Rene. Curso introductorio de Matlab. Editorial Equinoccio.
Caracas Venezuela. 2006.
http://mit.ocw.universia.net/18.06/f02/related-resources/matlab.pdf
http://www.roberto-acevedo.cl/wp-content/uploads/2011/02/practica1.pdf
http://www.di.uniovi.es/~dani/asignaturas/transparencias-leccion20.pdf
http://www.math.utah.edu/~eyre/computing/matlab-intro/math.html
top related