SlideShare uma empresa Scribd logo
1 de 13
                        Universidad Centroccidental                      <br />   “Lisandro Alvarado”<br />Decanato de Agronomía<br />Programa de Ingeniería y Tecnología Agroindustrial<br />                                                                             <br />Integrantes:<br />Martínez, Ana Maribel C.I: 17.814.003<br />Montero, Yohana C.I: 16.403.153<br />Yépez, Henry C.I: 18.137.083<br />Abril 2011<br />Introducción<br />En la actualidad se goza de un gran número de avances tecnológicos que han permitido mejoras en diferentes ámbitos de la vida, en especial en el campo laboral, ahora es posible realizar cálculos prototipos y simulaciones a través de programas especiales que se adaptan a la vida real, uno de estos programas es MATLAB que nace como una solución a la necesidad de mejores y poderosas herramientas de cálculos para resolver problemas complejos en donde se necesita manipular una gran cantidad de datos.<br />El nombre MATLAB viene de quot;
matrix laboratoryquot;
 (laboratorio matricial). MATLAB fue originalmente escrito para proveer acceso fácil al software matricial desarrollado por los proyectos LINPACK y EISPACK, que juntos  representan el estado del arte e software para computación matricial.<br /> MATLAB dispone también en la actualidad de un amplio abanico de programas de apoyo especializado, denominados Toolboxes, que extienden significativamente el número de funciones incorporadas en el programa principal. Estos Toolboxes cubren en la actualidad prácticamente casi todas las áreas principales en el mundo de la ingeniería y la simulación, destacando entre ellos el 'toolbox' de proceso de imágenes, señal, control robusto, estadística, análisis financiero, matemáticas simbólicas, redes neurales, lógica difusa, identificación de sistemas, simulación de sistemas dinámicos, etc. es un entorno de cálculo técnico, que se ha convertido en estándar de la industria, con capacidades no superadas en computación y visualización numérica.<br />Que es MATLAB?<br />Matlab® es un lenguaje de alto funcionamiento para computación técnica, Este integra computación, visualización, y programación, en un entorno fácil de usar donde los problemas y las soluciones son expresados en la más familiar notación matemática. Los usos más familiares de Matlab son:<br />• Matemática y Computación• Desarrollo de algoritmos• Modelamiento , simulación y prototipado• Análisis de datos, exploración y visualización• Graficas científicas e ingenieriles• Desarrollo de aplicaciones, incluyendo construcción de interfaces graficas de usuario<br />MATLAB es un sistema interactivo cuyo elemento básico de almacenamiento de información es la matriz, que tiene una característica fundamental y es que no necesita dimensionamiento. Esto le permite resolver varios problemas de computación técnica (especialmente aquellos que tienen formulaciones matriciales y vectoriales) en una fracción de tiempo similar al que se gastaría cuando se escribe un programa en un lenguaje no interactivo como C o FORTRAN<br />El nombre MATLAB simboliza Matriz Laboratorio o Laboratorio de Matrices. Matlab fue originalmente escrito para proveer fácil acceso el softrware de matrices desarrollado por los proyectos LINPACK y EISPACK, hoy, los mores de matlab incorporan las librerías LINPACK y BLAS, <br />Matlab se ha desarrollado sobre un periodo de años con entradas provenientes de muchos usuarios, en los entornos universitarios, matlab es la herramienta instructiva estándar para cursos avanzados e introductorios en matemáticas, ingeniería y ciencia. En la industria Matlab es la herramienta escogida para investigación de alta productividad, desarrollo y análisis.<br />Matlab presenta una familia de soluciones a aplicaciones específicas de acoplamiento rápido llamadas ToolBoxes. Los toolboxes son colecciones muy comprensibles de funciones MATLAB, o archivos de matlab (M-files) que extienden el entorno de MATLAB para resolver clases particulares de problemas, Algunas áreas en las cuales existen toolboxes disponibles son:<br />• Procesamiento de señales• Sistemas de control• Redes neuronales• Lógica difusa• Wavelets• Simulación<br />Funciones De  MATLAB<br />Manipulación  y Reducción de DatosMATLAB tiene un rango completo de funciones para preprocesar datos para análisis, incluyendo:<br />• y decimando• secciones de datos• y promediando• y procesando umbrales• y filtrando<br />Numerosas operaciones para manipular arreglos multidimensionales, incluyendo reticulación e interpolación de datos, están también disponibles.<br />Descriptivos Gráficos Para Explorar y Presentar Sus DatosGráficos de propósitos generales y de aplicación específica le permiten visualizar al instante señales, superficies paramétricas, imágenes y más. Todos los atributos de los gráficos de MATLAB son personalizables, desde los rótulos de ejes al ángulo de la fuente de luz en las superficies 3-D . Los gráficos están integrados con las capacidades de análisis, de modo que usted puede mostrar gráficamente cualquier conjunto de datos sin editar, ecuación o resultado funcional.<br />I/O Directo de DatosUsted puede ingresar y sacar datos de f MATLAB rápidamente. Las funciones están disponibles para leer y escribir archivos de datos formateados en  MATLAB, llamados archivos MAT. Funciones adicionales ejecutan programas ASCII e I/O binario de bajo nivel desde los archivos de programas M, C, y Fortran, permitiéndole trabajar con todos los formatos de datos. MATLAB también incluye soporte incorporado para formatos populares de archivos estándar.<br />Computación Simbólica IntegradaIntegrando el motor simbólico Maple V® con MATLAB, los Symbolic Math Toolboxes le permiten mezclar libremente computación simbólica y numérica una sintaxis simple e intuitiva.<br />Análisis de Datos Confiable, Rápido y Exacto Los métodos usados comúnmente para el análisis de datos multidimensionales generalizados 1-D, 2-D están incorporados en MATLAB. Interfaces gráficas fáciles de usar, específicas para aplicaciones, la línea de comando interactiva y herramientas de programación estructuradas le permiten elegir el mejor camino para sus tareas de análisis.<br />Análisis de Datos para DSPMATLAB ofrece muchas herramientas para realizar la funcionalidad indispensable en procesamiento de señales, tales como Transformadas Rápidas Fourier y Transformadas Rápidas Inversas de Fourier. La visualización de datos de procesamiento de señales está soportada por funciones tales como gráficos stem  y periodogramas. El lenguaje de MATLAB, inherentemente orientado a matrices hace que la expresión de coeficientes de filtros y demoras de buffers sean muy simples de expresar y comprender.<br />Análisis de Datos en Aplicaciones de ImágenesMATLAB y la Image Processing Toolbox ofrece un amplio conjunto de herramientas que le permite fácilmente manipular, procesar y analizar datos de imágenes, interactivamente mostrar pantallas de imágenes 2-D o 3-D, visualizar datos temporarios cuando es necesario, y comentar sus resultados para publicaciones técnicas. La orientación basada en matrices del lenguaje de  MATLAB le permite expresar en forma compacta operaciones matemáticas de forma similar a cómo las expresaría sobre papel. Como resultado, es fácil e intuitivo efectuar procesamiento de imágenes  y operaciones de análisis tales como FFTs, filtrado 2-D, morfología binaria, manipulación geométrica, conversión de espacios de colores, compresión, análisis de componentes conectados y más.<br />Algorithm Development (Desarrollo de Algoritmos) Sea que usted esté usando los algoritmos del sistema o esté inventando los suyos propios, MATLAB le provee un ambiente en el que usted puede experimentar. A diferencia de C y C++, MATLAB le permite desarrollar  algoritmos desde cero o trabajar con interfaces complicadas a bibliotecas externas. Las poderosas fundaciones de computación, el lenguaje técnico, y cientos de funciones en cajas de herramientas (toolboxes) convierten a MATLAB en lo más adecuado para aplicaciones matemáticamente intensivas que requieran análisis de datos, procesamiento de señales e imágenes, modelado de sistemas o técnicas numéricas avanzadas.<br />Operaciones Matemáticas de MatricesMatrices TranspuestasEl caracter ' (apóstrofe) denota la transpuesta de la matriz. Si tenemos la matriz A y llamamos B = A', B es la transpuesta de la matriz A.Sumando y Restando MatricesLas operaciones suma (+) y resta (-) son definidas para las matrices siempre y cuando éstas tengan la misma dimensión. Es decir, si A y B son matrices 3 x 3, entonces A + B se puede calcular.Las operaciones suma y resta también están definidas si uno de los operando es un escalar, es decir, una matriz 1 x 1.<br />Multiplicando MatricesLa operación de multiplicación de matrices está definida siempre que el número de columnas de la primera matriz sea igual a el número de filas de la segunda matriz.<br />Ejemplo.<br />>>C=A*B<br />C =<br />5 13<br />7 22<br />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,<br />>>size(A)<br />ans =<br />2 2<br />Que quiere decir, evidentemente, 2 _las y 2 columnasProducto escalar El producto interior (producto escalar o producto punto) se consigue de la siguiente manera:x' * yasumiendo que x y y son vectores columnas. Note que y' * x produce el mismo resultado. Producto de una matriz por un vector El producto de una matriz y un vector es un caso especial del producto matrizmatriz y naturalmente, un escalar como pi, puede multiplicar, o ser multiplicado por, cualquier matriz.<br /> Dividiendo Matrices En división de matrices, si A es una matriz cuadrada no-singular, entonces A y B/A corresponden a la multiplicación izquierda y derecha de B por el inverso de A, esto es, inv(A) * B y B * inv(A) respectivamente. El resultado es obtenido directamente sin la computación del inverso.X = A es una solución a A * X = BX = B/A es una solución a X * A = BA es definido cuando B tiene la misma cantidad de filas que A. Si A es cuadrada, el método usado es la Eliminación Gaussiana. El resultado es una matriz X con las mismas dimensiones que B.Si A no es cuadrada, se factoriza utilizando la ortogonalización de Householder con pivoteo de columnas.Los factores son usados para resolver sistemas de ecuaciones sub-determinados y sobre -determinados. El resultado es una matriz X m-por-n donde m es el número de columnas de A y n es el número de columnas de B. Cada columna de X tiene, al menos, k componentes diferentes de cero, donde k es el rango efectivo de A.B/A esta definido en términos de A por B/A = (A' ') '.Usando Exponentes con MatricesLa expresión A^n eleva A a la n-ésima potencia y esta definido si A es una matriz cuadrada y n un escalar.Funciones Matriciales Trascendentales y ElementalesMATLAB considera expresiones como exp(A) y sqrt(A) como operaciones de arreglos, definidas en los elementos individuales de A. También puede calcular funciones trascendentales de matrices, como la matriz exponencial y la matriz logarítmica. Estas operaciones especiales están definidas solamente para matrices cuadradas.Otras funciones elementales de matrices son:poly - polinomio característicodet - determinantetrace - trazakron - producto tensorial de Kroneckereig - calcula los valores propios de la matriz<br />Operaciones Relacionales y Lógicas<br /> Además de las operaciones matemáticas tradicionales, MATLAB nos permite realizar operaciones relacionales y lógicas. El objetivo de estos operadores es proporcionar respuestas a cuestiones verdadero/falso. MATLAB responde a este tipo de preguntas con 1 (verdadero) ó 0 (falso). <br />Operadores relacionales<br />   Los operadores relacionales de MATLAB son las comparaciones comunes: <br /><      Menor que <br /><=    Menor o igual <br />>      Mayor que <br />>=    Mayor o igual <br />==    Igual a <br />~=    Distinto a<br />   Podemos usar estos operadores para comparar arrays del mismo tamaño o comparar un array con un escalar (entonces se compara cada elemento del array con el escalar)   <br />EDU» A=[[1:2:8] [0 3 -2 5 1 -7]] A =      1     3     5     7     0     3    -2     5     1    -7 EDU» B=round(-5+10*rand(1,length(A))) B =     -3     1    -2     5     2    -1     2    -2    -1     4 EDU» x=A>5 % Buscamos los elementos de A mayores que 5 x =      0     0     0     1     0     0     0     0     0     0 EDU» x=A==B % Buscamos los elementos de A iguales a los correspondientes de B x =      0     0     0     0     0     0     0     0     0     0 EDU» x=A+2*(B<0) x =      3     3     7     7     0     5    -2     7     3    -7 EDU» %Sustituimos los valores nulos de A por el valor eps. EDU» %Puede ser útil para evitar divisiones por 0 EDU» A=A+eps*(A==0)  A =   Columns 1 through 7      1.0000    3.0000    5.0000    7.0000    0.0000    3.0000   -2.0000   Columns 8 through 10      5.0000    1.0000   -7.0000<br />Operadores lógicos<br />  Los operadores lógicos que proporciona MATLAB son: <br />&       AND <br />|         OR <br />~        NOT <br />xor    EXCLUSIVE OR<br />EDU» x=(A>2)|(B<0) x =      1     1     1     1     0     1     0     1     1     0 EDU» y=~(A>4) y =      1     1     0     0     1     1     1     0     1     1 EDU» xor(x,y) ans =      0     0     1     1     1     0     1     1     0     1<br />   Finalizamos el capítulo con un ejemplo de cómo usar estas técnicas para representar señales discontinuas o compuestas, la idea básica es multiplicar los valores que deseamos que permanezcan 1 y el resto por 0.   <br />x=linspace(0,10,100); EDU» y=sin(x); EDU» z=(y>=0).*y; %Fijamos los valores negativos a cero EDU» z=z+0.5*(y<0); %Sumamos 0.5 a los valores negativos de sin(x) EDU» z=(x<=8).*z; %Hacemos cero los valores mayores que x=8 EDU» plot(x,z) EDU» xlabel('Eje x'),ylabel('z=f(x)') EDU» title('Una señal discontinua')<br />Ingresar Una Matriz<br />MATLAB trabaja esencialmente con matrices numéricas rectangulares. La manera más fácil de entrar matrices pequeñas es enumerando los elementos de ésta de tal manera que:• los elementos estén separados por espacios o comas.• los elementos estén cerrados entre corchetes, [ ].• muestre el final de cada fila con ; (punto y coma).Ejemplo:A = [ 1 2 3; 4 5 6; 7 8 9 ]resultaría en la matrizA =1 2 34 5 67 8 9MATLAB guarda esta matriz para utilizarla luego bajo el nombre de A.Si la matriz a introducir es muy grande se puede utilizar el siguiente formato:A = [1 2 34 5 67 8 9]El comando load y la función fread pueden leer matrices generadas en sesiones anteriores ó generadas por otros programas.Ya que MatLab se basa en el álgebra de matrices como ejemplo crearemos una matriz. Estas pueden estar formadas por un sólo elementos (escalar), por una fila o una columna (vector) o por una serie de filas y columnas (matriz propiamente dicha).<br />>>A=1define A como un escalar de valor 1. Al definir A automáticamente MATLAB presenta en pantalla su valor.A =1Para no presentar el valor de la variable creada, debe agregarse punto y coma (;) al final del comando.Después de crear una variable, puede presentarse su valor en pantalla escribiendo la variable después del prompt (>>).>>A<br />Acceso A Posiciones De Las Matrices<br />Se citara un ejemplo para explicar la siguiente acción<br />Los componentes del siguiente vector o matriz <br />>> vectorfila= [ 1 2 3 4 5 6 7] vectorfila = 1 2 3 4 5 6 7 >> vectorcolumna = [1; 2; 3; 4] vector columna=   1   2   3   4<br />Las filas<br />>> Matriz= [1 2 3; 4 5 6; 7 8 9] matriz=   1 2 3   4 5 6   7 8 9<br />Para posicionarse en el valor 6 de la variable Matriz determinada en el ejemplo anterior y que corresponde a la segunda fila con tercera columna tres, se indica entre paréntesis la posición. En el siguiente ejemplo se asigna el valor de la posición iniciada a la variable posición.<br />>>posición=Matriz (2,3) ans = 6<br />Si se deseara asignar toda la tercera fila como un solo vector entonces se cambiaría el parámetro correspondiente a la columna por el carácter: con lo cual se indica que corresponde a todas las columnas.<br />>> fila=Matriz(3,:) ans = 7 8 9<br />Similar al caso anterior, si se desea la tercera columna en su totalidad entonces se reemplaza el parámetro de la fila por el carácter: con lo cual se indica que corresponde a todas las filas.<br />>> Columna=Matriz(:,3) ans =   3   6   9<br />Conclusión<br />Una vez revisada las funciones que puede desarrollar MATLAB, se ha podido notar que este ofrece una variedad de beneficios tales como: Aumentar la productividad dentro de las empresas, permitiendo automatizar procesos rutinarios, las cuales pueden replicarse cuantas veces se requiera con el cambio de las variables de entrada. Además de ellopermite también una mayor organización de la información, al separar la programación de los procesos de las bases de datos utilizadas como insumos. <br />En cuanto a finanzas presenta un amplio espectro de aplicaciones entre las que se encuentran: • Optimización de la relación riesgo – retorno de portafolios de inversión. • Cuantificación y administrar el riesgo de mercado de portafolios de inversión. • Valoración de activos de renta fija• Construcción de la curva cero cupón • Cálculo de indicadores técnicos• Programación de procesos que utilizan redes neuronales artificiales y algoritmos genéticos, para la toma de decisiones de inversión con base en indicadores técnicos.• Automatización de procesos de compra y venta de activos financieros y realizar cálculos de backtesting, sobre el indicador técnico que mejor predice el cálculo futuro de dichos activos. • Valoración futuros y opciones.• Inmunización de portafolios.<br />Como puede verse, el saber manipular MATLAB puede ofrecer enormes ventajas en muchas aéreas de allí la importancia de desarrollar habilidades que permitan su uso apropiado  de modo que se pueda aprovechar al máximo. Sin embargo no se deben dejar de lado otras opciones en cuanto la adquisición de programas puesto que cada uno posee ventajas y desventajas que van a depender de las necesidades de cada usuario. <br />Citas Bibliográficas<br />http://www.roberto-acevedo.cl/wp-content/uploads/2011/02/practica1.pdf<br />http://matlabxsiemprexd.blogspot.com/2007/11/3-funciones-de-matlab.html<br />http://musica.unq.edu.ar/personales/ebonnier/cam2/matlab/tutorial2a47.html?page=matlabbasico2<br />http://www.nebrija.es/~mjgarbayo/seminario_matlab/matlab7.html<br />
Trabajo matlab
Trabajo matlab
Trabajo matlab
Trabajo matlab
Trabajo matlab
Trabajo matlab
Trabajo matlab
Trabajo matlab
Trabajo matlab
Trabajo matlab
Trabajo matlab
Trabajo matlab

Mais conteúdo relacionado

Mais procurados

Spss por Alexandra Vasco
Spss por Alexandra VascoSpss por Alexandra Vasco
Spss por Alexandra Vasco
Alexia Vasco
 
TALLER UNO
TALLER UNOTALLER UNO
TALLER UNO
dtbjoby
 
Introducción a la Programación en R
Introducción a la Programación en RIntroducción a la Programación en R
Introducción a la Programación en R
Rosa E Padilla
 

Mais procurados (20)

Spss por Alexandra Vasco
Spss por Alexandra VascoSpss por Alexandra Vasco
Spss por Alexandra Vasco
 
TALLER UNO
TALLER UNOTALLER UNO
TALLER UNO
 
Apuntes scilab
Apuntes scilabApuntes scilab
Apuntes scilab
 
Pia grupo12 equipo1
Pia grupo12 equipo1Pia grupo12 equipo1
Pia grupo12 equipo1
 
Uv maple
Uv mapleUv maple
Uv maple
 
Curso de R: 1.1. introducción al lenguaje (Objetos y operadores básicos)
Curso de R: 1.1. introducción al lenguaje (Objetos y operadores básicos)Curso de R: 1.1. introducción al lenguaje (Objetos y operadores básicos)
Curso de R: 1.1. introducción al lenguaje (Objetos y operadores básicos)
 
La importancia de los paquetes estadísticos en la administración
La importancia de los paquetes estadísticos en la administraciónLa importancia de los paquetes estadísticos en la administración
La importancia de los paquetes estadísticos en la administración
 
Ntics ii
Ntics iiNtics ii
Ntics ii
 
Paquete estadistico
Paquete estadisticoPaquete estadistico
Paquete estadistico
 
Visualización de Redes: Herramientas y Técnicas para la Creación y Evaluación...
Visualización de Redes: Herramientas y Técnicas para la Creación y Evaluación...Visualización de Redes: Herramientas y Técnicas para la Creación y Evaluación...
Visualización de Redes: Herramientas y Técnicas para la Creación y Evaluación...
 
Diseño del software
Diseño del softwareDiseño del software
Diseño del software
 
Matlab (1)
Matlab (1)Matlab (1)
Matlab (1)
 
Paq estad757uptp losadministradoresuptp
Paq estad757uptp losadministradoresuptpPaq estad757uptp losadministradoresuptp
Paq estad757uptp losadministradoresuptp
 
Spss power point.
Spss power point.Spss power point.
Spss power point.
 
Tutorial de labview
Tutorial de labviewTutorial de labview
Tutorial de labview
 
El software estadistico en las cc.ss. ccesa007
El software estadistico en las cc.ss.  ccesa007El software estadistico en las cc.ss.  ccesa007
El software estadistico en las cc.ss. ccesa007
 
Introducción a la Programación en R
Introducción a la Programación en RIntroducción a la Programación en R
Introducción a la Programación en R
 
Software Libre para enseñar o aprender Matemática
Software Libre para enseñar o aprender MatemáticaSoftware Libre para enseñar o aprender Matemática
Software Libre para enseñar o aprender Matemática
 
Minitab
MinitabMinitab
Minitab
 
Diapositivas tablas dinamicas 1
Diapositivas tablas dinamicas 1Diapositivas tablas dinamicas 1
Diapositivas tablas dinamicas 1
 

Destaque (12)

5 herramienta aprendizaje algoritmos geneticos entorno matlab
5 herramienta aprendizaje algoritmos geneticos entorno matlab5 herramienta aprendizaje algoritmos geneticos entorno matlab
5 herramienta aprendizaje algoritmos geneticos entorno matlab
 
Int prog matlab
Int prog matlabInt prog matlab
Int prog matlab
 
Sesion4 matlab
Sesion4 matlabSesion4 matlab
Sesion4 matlab
 
Matlab-una-introduccion-con-ejemplos-practicos-Amos-Gilat
Matlab-una-introduccion-con-ejemplos-practicos-Amos-GilatMatlab-una-introduccion-con-ejemplos-practicos-Amos-Gilat
Matlab-una-introduccion-con-ejemplos-practicos-Amos-Gilat
 
Algoritmica
AlgoritmicaAlgoritmica
Algoritmica
 
Tutorial funciones básicas Matlab
Tutorial funciones básicas MatlabTutorial funciones básicas Matlab
Tutorial funciones básicas Matlab
 
Matlab 2 Capitulo 2
Matlab 2 Capitulo 2Matlab 2 Capitulo 2
Matlab 2 Capitulo 2
 
Algoritmos genéticos con matlab
Algoritmos genéticos con matlabAlgoritmos genéticos con matlab
Algoritmos genéticos con matlab
 
Programacion en matlab
Programacion en matlabProgramacion en matlab
Programacion en matlab
 
Algoritmos para matlab
Algoritmos para matlabAlgoritmos para matlab
Algoritmos para matlab
 
Guia rapida de matlab (comandos basicos, graficacion y programacion)
Guia rapida de matlab (comandos basicos, graficacion y programacion)Guia rapida de matlab (comandos basicos, graficacion y programacion)
Guia rapida de matlab (comandos basicos, graficacion y programacion)
 
Matlab manual
Matlab manualMatlab manual
Matlab manual
 

Semelhante a Trabajo matlab (20)

matlab (2).pptx
matlab (2).pptxmatlab (2).pptx
matlab (2).pptx
 
Carmen
CarmenCarmen
Carmen
 
Carmen
CarmenCarmen
Carmen
 
Carmen
CarmenCarmen
Carmen
 
Carmen
CarmenCarmen
Carmen
 
Carmen
CarmenCarmen
Carmen
 
Asignacion computacion aplicada
Asignacion computacion aplicadaAsignacion computacion aplicada
Asignacion computacion aplicada
 
Informe matlab
Informe matlabInforme matlab
Informe matlab
 
Informe matlab
Informe matlabInforme matlab
Informe matlab
 
Matlab
MatlabMatlab
Matlab
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Tutorial de matlab [101 paginas en español]
Tutorial de matlab [101 paginas   en español]Tutorial de matlab [101 paginas   en español]
Tutorial de matlab [101 paginas en español]
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Tutorial matlab
Tutorial matlabTutorial matlab
Tutorial matlab
 
Laboratorio metodos-numericos-unsch-01
Laboratorio metodos-numericos-unsch-01Laboratorio metodos-numericos-unsch-01
Laboratorio metodos-numericos-unsch-01
 
Apuntes matlab
Apuntes matlabApuntes matlab
Apuntes matlab
 

Trabajo matlab

  • 1. Universidad Centroccidental <br /> “Lisandro Alvarado”<br />Decanato de Agronomía<br />Programa de Ingeniería y Tecnología Agroindustrial<br /> <br />Integrantes:<br />Martínez, Ana Maribel C.I: 17.814.003<br />Montero, Yohana C.I: 16.403.153<br />Yépez, Henry C.I: 18.137.083<br />Abril 2011<br />Introducción<br />En la actualidad se goza de un gran número de avances tecnológicos que han permitido mejoras en diferentes ámbitos de la vida, en especial en el campo laboral, ahora es posible realizar cálculos prototipos y simulaciones a través de programas especiales que se adaptan a la vida real, uno de estos programas es MATLAB que nace como una solución a la necesidad de mejores y poderosas herramientas de cálculos para resolver problemas complejos en donde se necesita manipular una gran cantidad de datos.<br />El nombre MATLAB viene de quot; matrix laboratoryquot; (laboratorio matricial). MATLAB fue originalmente escrito para proveer acceso fácil al software matricial desarrollado por los proyectos LINPACK y EISPACK, que juntos  representan el estado del arte e software para computación matricial.<br /> MATLAB dispone también en la actualidad de un amplio abanico de programas de apoyo especializado, denominados Toolboxes, que extienden significativamente el número de funciones incorporadas en el programa principal. Estos Toolboxes cubren en la actualidad prácticamente casi todas las áreas principales en el mundo de la ingeniería y la simulación, destacando entre ellos el 'toolbox' de proceso de imágenes, señal, control robusto, estadística, análisis financiero, matemáticas simbólicas, redes neurales, lógica difusa, identificación de sistemas, simulación de sistemas dinámicos, etc. es un entorno de cálculo técnico, que se ha convertido en estándar de la industria, con capacidades no superadas en computación y visualización numérica.<br />Que es MATLAB?<br />Matlab® es un lenguaje de alto funcionamiento para computación técnica, Este integra computación, visualización, y programación, en un entorno fácil de usar donde los problemas y las soluciones son expresados en la más familiar notación matemática. Los usos más familiares de Matlab son:<br />• Matemática y Computación• Desarrollo de algoritmos• Modelamiento , simulación y prototipado• Análisis de datos, exploración y visualización• Graficas científicas e ingenieriles• Desarrollo de aplicaciones, incluyendo construcción de interfaces graficas de usuario<br />MATLAB es un sistema interactivo cuyo elemento básico de almacenamiento de información es la matriz, que tiene una característica fundamental y es que no necesita dimensionamiento. Esto le permite resolver varios problemas de computación técnica (especialmente aquellos que tienen formulaciones matriciales y vectoriales) en una fracción de tiempo similar al que se gastaría cuando se escribe un programa en un lenguaje no interactivo como C o FORTRAN<br />El nombre MATLAB simboliza Matriz Laboratorio o Laboratorio de Matrices. Matlab fue originalmente escrito para proveer fácil acceso el softrware de matrices desarrollado por los proyectos LINPACK y EISPACK, hoy, los mores de matlab incorporan las librerías LINPACK y BLAS, <br />Matlab se ha desarrollado sobre un periodo de años con entradas provenientes de muchos usuarios, en los entornos universitarios, matlab es la herramienta instructiva estándar para cursos avanzados e introductorios en matemáticas, ingeniería y ciencia. En la industria Matlab es la herramienta escogida para investigación de alta productividad, desarrollo y análisis.<br />Matlab presenta una familia de soluciones a aplicaciones específicas de acoplamiento rápido llamadas ToolBoxes. Los toolboxes son colecciones muy comprensibles de funciones MATLAB, o archivos de matlab (M-files) que extienden el entorno de MATLAB para resolver clases particulares de problemas, Algunas áreas en las cuales existen toolboxes disponibles son:<br />• Procesamiento de señales• Sistemas de control• Redes neuronales• Lógica difusa• Wavelets• Simulación<br />Funciones De MATLAB<br />Manipulación  y Reducción de DatosMATLAB tiene un rango completo de funciones para preprocesar datos para análisis, incluyendo:<br />• y decimando• secciones de datos• y promediando• y procesando umbrales• y filtrando<br />Numerosas operaciones para manipular arreglos multidimensionales, incluyendo reticulación e interpolación de datos, están también disponibles.<br />Descriptivos Gráficos Para Explorar y Presentar Sus DatosGráficos de propósitos generales y de aplicación específica le permiten visualizar al instante señales, superficies paramétricas, imágenes y más. Todos los atributos de los gráficos de MATLAB son personalizables, desde los rótulos de ejes al ángulo de la fuente de luz en las superficies 3-D . Los gráficos están integrados con las capacidades de análisis, de modo que usted puede mostrar gráficamente cualquier conjunto de datos sin editar, ecuación o resultado funcional.<br />I/O Directo de DatosUsted puede ingresar y sacar datos de f MATLAB rápidamente. Las funciones están disponibles para leer y escribir archivos de datos formateados en  MATLAB, llamados archivos MAT. Funciones adicionales ejecutan programas ASCII e I/O binario de bajo nivel desde los archivos de programas M, C, y Fortran, permitiéndole trabajar con todos los formatos de datos. MATLAB también incluye soporte incorporado para formatos populares de archivos estándar.<br />Computación Simbólica IntegradaIntegrando el motor simbólico Maple V® con MATLAB, los Symbolic Math Toolboxes le permiten mezclar libremente computación simbólica y numérica una sintaxis simple e intuitiva.<br />Análisis de Datos Confiable, Rápido y Exacto Los métodos usados comúnmente para el análisis de datos multidimensionales generalizados 1-D, 2-D están incorporados en MATLAB. Interfaces gráficas fáciles de usar, específicas para aplicaciones, la línea de comando interactiva y herramientas de programación estructuradas le permiten elegir el mejor camino para sus tareas de análisis.<br />Análisis de Datos para DSPMATLAB ofrece muchas herramientas para realizar la funcionalidad indispensable en procesamiento de señales, tales como Transformadas Rápidas Fourier y Transformadas Rápidas Inversas de Fourier. La visualización de datos de procesamiento de señales está soportada por funciones tales como gráficos stem  y periodogramas. El lenguaje de MATLAB, inherentemente orientado a matrices hace que la expresión de coeficientes de filtros y demoras de buffers sean muy simples de expresar y comprender.<br />Análisis de Datos en Aplicaciones de ImágenesMATLAB y la Image Processing Toolbox ofrece un amplio conjunto de herramientas que le permite fácilmente manipular, procesar y analizar datos de imágenes, interactivamente mostrar pantallas de imágenes 2-D o 3-D, visualizar datos temporarios cuando es necesario, y comentar sus resultados para publicaciones técnicas. La orientación basada en matrices del lenguaje de  MATLAB le permite expresar en forma compacta operaciones matemáticas de forma similar a cómo las expresaría sobre papel. Como resultado, es fácil e intuitivo efectuar procesamiento de imágenes  y operaciones de análisis tales como FFTs, filtrado 2-D, morfología binaria, manipulación geométrica, conversión de espacios de colores, compresión, análisis de componentes conectados y más.<br />Algorithm Development (Desarrollo de Algoritmos) Sea que usted esté usando los algoritmos del sistema o esté inventando los suyos propios, MATLAB le provee un ambiente en el que usted puede experimentar. A diferencia de C y C++, MATLAB le permite desarrollar  algoritmos desde cero o trabajar con interfaces complicadas a bibliotecas externas. Las poderosas fundaciones de computación, el lenguaje técnico, y cientos de funciones en cajas de herramientas (toolboxes) convierten a MATLAB en lo más adecuado para aplicaciones matemáticamente intensivas que requieran análisis de datos, procesamiento de señales e imágenes, modelado de sistemas o técnicas numéricas avanzadas.<br />Operaciones Matemáticas de MatricesMatrices TranspuestasEl caracter ' (apóstrofe) denota la transpuesta de la matriz. Si tenemos la matriz A y llamamos B = A', B es la transpuesta de la matriz A.Sumando y Restando MatricesLas operaciones suma (+) y resta (-) son definidas para las matrices siempre y cuando éstas tengan la misma dimensión. Es decir, si A y B son matrices 3 x 3, entonces A + B se puede calcular.Las operaciones suma y resta también están definidas si uno de los operando es un escalar, es decir, una matriz 1 x 1.<br />Multiplicando MatricesLa operación de multiplicación de matrices está definida siempre que el número de columnas de la primera matriz sea igual a el número de filas de la segunda matriz.<br />Ejemplo.<br />>>C=A*B<br />C =<br />5 13<br />7 22<br />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,<br />>>size(A)<br />ans =<br />2 2<br />Que quiere decir, evidentemente, 2 _las y 2 columnasProducto escalar El producto interior (producto escalar o producto punto) se consigue de la siguiente manera:x' * yasumiendo que x y y son vectores columnas. Note que y' * x produce el mismo resultado. Producto de una matriz por un vector El producto de una matriz y un vector es un caso especial del producto matrizmatriz y naturalmente, un escalar como pi, puede multiplicar, o ser multiplicado por, cualquier matriz.<br /> Dividiendo Matrices En división de matrices, si A es una matriz cuadrada no-singular, entonces A y B/A corresponden a la multiplicación izquierda y derecha de B por el inverso de A, esto es, inv(A) * B y B * inv(A) respectivamente. El resultado es obtenido directamente sin la computación del inverso.X = A es una solución a A * X = BX = B/A es una solución a X * A = BA es definido cuando B tiene la misma cantidad de filas que A. Si A es cuadrada, el método usado es la Eliminación Gaussiana. El resultado es una matriz X con las mismas dimensiones que B.Si A no es cuadrada, se factoriza utilizando la ortogonalización de Householder con pivoteo de columnas.Los factores son usados para resolver sistemas de ecuaciones sub-determinados y sobre -determinados. El resultado es una matriz X m-por-n donde m es el número de columnas de A y n es el número de columnas de B. Cada columna de X tiene, al menos, k componentes diferentes de cero, donde k es el rango efectivo de A.B/A esta definido en términos de A por B/A = (A' ') '.Usando Exponentes con MatricesLa expresión A^n eleva A a la n-ésima potencia y esta definido si A es una matriz cuadrada y n un escalar.Funciones Matriciales Trascendentales y ElementalesMATLAB considera expresiones como exp(A) y sqrt(A) como operaciones de arreglos, definidas en los elementos individuales de A. También puede calcular funciones trascendentales de matrices, como la matriz exponencial y la matriz logarítmica. Estas operaciones especiales están definidas solamente para matrices cuadradas.Otras funciones elementales de matrices son:poly - polinomio característicodet - determinantetrace - trazakron - producto tensorial de Kroneckereig - calcula los valores propios de la matriz<br />Operaciones Relacionales y Lógicas<br /> Además de las operaciones matemáticas tradicionales, MATLAB nos permite realizar operaciones relacionales y lógicas. El objetivo de estos operadores es proporcionar respuestas a cuestiones verdadero/falso. MATLAB responde a este tipo de preguntas con 1 (verdadero) ó 0 (falso). <br />Operadores relacionales<br />   Los operadores relacionales de MATLAB son las comparaciones comunes: <br /><      Menor que <br /><=    Menor o igual <br />>      Mayor que <br />>=    Mayor o igual <br />==    Igual a <br />~=    Distinto a<br />   Podemos usar estos operadores para comparar arrays del mismo tamaño o comparar un array con un escalar (entonces se compara cada elemento del array con el escalar)   <br />EDU» A=[[1:2:8] [0 3 -2 5 1 -7]] A =      1     3     5     7     0     3    -2     5     1    -7 EDU» B=round(-5+10*rand(1,length(A))) B =     -3     1    -2     5     2    -1     2    -2    -1     4 EDU» x=A>5 % Buscamos los elementos de A mayores que 5 x =      0     0     0     1     0     0     0     0     0     0 EDU» x=A==B % Buscamos los elementos de A iguales a los correspondientes de B x =      0     0     0     0     0     0     0     0     0     0 EDU» x=A+2*(B<0) x =      3     3     7     7     0     5    -2     7     3    -7 EDU» %Sustituimos los valores nulos de A por el valor eps. EDU» %Puede ser útil para evitar divisiones por 0 EDU» A=A+eps*(A==0)  A =   Columns 1 through 7      1.0000    3.0000    5.0000    7.0000    0.0000    3.0000   -2.0000   Columns 8 through 10      5.0000    1.0000   -7.0000<br />Operadores lógicos<br />  Los operadores lógicos que proporciona MATLAB son: <br />&       AND <br />|         OR <br />~        NOT <br />xor    EXCLUSIVE OR<br />EDU» x=(A>2)|(B<0) x =      1     1     1     1     0     1     0     1     1     0 EDU» y=~(A>4) y =      1     1     0     0     1     1     1     0     1     1 EDU» xor(x,y) ans =      0     0     1     1     1     0     1     1     0     1<br />   Finalizamos el capítulo con un ejemplo de cómo usar estas técnicas para representar señales discontinuas o compuestas, la idea básica es multiplicar los valores que deseamos que permanezcan 1 y el resto por 0.   <br />x=linspace(0,10,100); EDU» y=sin(x); EDU» z=(y>=0).*y; %Fijamos los valores negativos a cero EDU» z=z+0.5*(y<0); %Sumamos 0.5 a los valores negativos de sin(x) EDU» z=(x<=8).*z; %Hacemos cero los valores mayores que x=8 EDU» plot(x,z) EDU» xlabel('Eje x'),ylabel('z=f(x)') EDU» title('Una señal discontinua')<br />Ingresar Una Matriz<br />MATLAB trabaja esencialmente con matrices numéricas rectangulares. La manera más fácil de entrar matrices pequeñas es enumerando los elementos de ésta de tal manera que:• los elementos estén separados por espacios o comas.• los elementos estén cerrados entre corchetes, [ ].• muestre el final de cada fila con ; (punto y coma).Ejemplo:A = [ 1 2 3; 4 5 6; 7 8 9 ]resultaría en la matrizA =1 2 34 5 67 8 9MATLAB guarda esta matriz para utilizarla luego bajo el nombre de A.Si la matriz a introducir es muy grande se puede utilizar el siguiente formato:A = [1 2 34 5 67 8 9]El comando load y la función fread pueden leer matrices generadas en sesiones anteriores ó generadas por otros programas.Ya que MatLab se basa en el álgebra de matrices como ejemplo crearemos una matriz. Estas pueden estar formadas por un sólo elementos (escalar), por una fila o una columna (vector) o por una serie de filas y columnas (matriz propiamente dicha).<br />>>A=1define A como un escalar de valor 1. Al definir A automáticamente MATLAB presenta en pantalla su valor.A =1Para no presentar el valor de la variable creada, debe agregarse punto y coma (;) al final del comando.Después de crear una variable, puede presentarse su valor en pantalla escribiendo la variable después del prompt (>>).>>A<br />Acceso A Posiciones De Las Matrices<br />Se citara un ejemplo para explicar la siguiente acción<br />Los componentes del siguiente vector o matriz <br />>> vectorfila= [ 1 2 3 4 5 6 7] vectorfila = 1 2 3 4 5 6 7 >> vectorcolumna = [1; 2; 3; 4] vector columna=   1   2   3   4<br />Las filas<br />>> Matriz= [1 2 3; 4 5 6; 7 8 9] matriz=   1 2 3   4 5 6   7 8 9<br />Para posicionarse en el valor 6 de la variable Matriz determinada en el ejemplo anterior y que corresponde a la segunda fila con tercera columna tres, se indica entre paréntesis la posición. En el siguiente ejemplo se asigna el valor de la posición iniciada a la variable posición.<br />>>posición=Matriz (2,3) ans = 6<br />Si se deseara asignar toda la tercera fila como un solo vector entonces se cambiaría el parámetro correspondiente a la columna por el carácter: con lo cual se indica que corresponde a todas las columnas.<br />>> fila=Matriz(3,:) ans = 7 8 9<br />Similar al caso anterior, si se desea la tercera columna en su totalidad entonces se reemplaza el parámetro de la fila por el carácter: con lo cual se indica que corresponde a todas las filas.<br />>> Columna=Matriz(:,3) ans =   3   6   9<br />Conclusión<br />Una vez revisada las funciones que puede desarrollar MATLAB, se ha podido notar que este ofrece una variedad de beneficios tales como: Aumentar la productividad dentro de las empresas, permitiendo automatizar procesos rutinarios, las cuales pueden replicarse cuantas veces se requiera con el cambio de las variables de entrada. Además de ellopermite también una mayor organización de la información, al separar la programación de los procesos de las bases de datos utilizadas como insumos. <br />En cuanto a finanzas presenta un amplio espectro de aplicaciones entre las que se encuentran: • Optimización de la relación riesgo – retorno de portafolios de inversión. • Cuantificación y administrar el riesgo de mercado de portafolios de inversión. • Valoración de activos de renta fija• Construcción de la curva cero cupón • Cálculo de indicadores técnicos• Programación de procesos que utilizan redes neuronales artificiales y algoritmos genéticos, para la toma de decisiones de inversión con base en indicadores técnicos.• Automatización de procesos de compra y venta de activos financieros y realizar cálculos de backtesting, sobre el indicador técnico que mejor predice el cálculo futuro de dichos activos. • Valoración futuros y opciones.• Inmunización de portafolios.<br />Como puede verse, el saber manipular MATLAB puede ofrecer enormes ventajas en muchas aéreas de allí la importancia de desarrollar habilidades que permitan su uso apropiado de modo que se pueda aprovechar al máximo. Sin embargo no se deben dejar de lado otras opciones en cuanto la adquisición de programas puesto que cada uno posee ventajas y desventajas que van a depender de las necesidades de cada usuario. <br />Citas Bibliográficas<br />http://www.roberto-acevedo.cl/wp-content/uploads/2011/02/practica1.pdf<br />http://matlabxsiemprexd.blogspot.com/2007/11/3-funciones-de-matlab.html<br />http://musica.unq.edu.ar/personales/ebonnier/cam2/matlab/tutorial2a47.html?page=matlabbasico2<br />http://www.nebrija.es/~mjgarbayo/seminario_matlab/matlab7.html<br />