La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Optimización para Ingenieros

Presentaciones similares


Presentación del tema: "Optimización para Ingenieros"— Transcripción de la presentación:

1 Optimización para Ingenieros
La Universidad del Zulia Facultad de Ingeniería División de Estudios para Graduados Programa: Computación Aplicada Asignatura: Optimización para Ingenieros Repaso de algebra matricial usando Matlab Prof. Luis Zerpa, M.Sc.

2 Introducción a MATLAB MATLAB (LABoratorio de MATrices) es un sistema interactivo que utiliza matrices como elemento básico de datos Permite resolver muchos problemas numéricos sin necesidad de construir programas complejos Proporciona una serie de comandos que permiten escribir instrucciones en el lenguaje matemático corriente Permite visualizar los resultados mediante sencillas y poderosas herramientas de graficación

3 Introducción a MATLAB Ventana de comandos: es la ventana principal en la cual el usuario se comunica con el interpretador MATLAB

4 Introducción a MATLAB Espacio de trabajo (Workspace): Es el conjunto de variables que se mantienen en la memoria del computador durante una sesión de MATLAB Se pueden utilizar los comandos who y whos para ver contenido y descripción de las variables almacenadas en el espacio de trabajo Para eliminar las variables almacenadas en el espacio de trabajo se utiliza el comando clear all

5 Introducción a MATLAB Símbolos: Todos los caracteres alfabéticos y numéricos y el símbolo de subrayado “_” son válidos para formar nombres (de constantes, variables, archivos, etc), los cuales pueden tener cualquier número de caracteres El sistema es sensible a minúsculas y mayúsculas, siendo obligatorio escribir los comandos en minúsculas. Los nombres pueden ser escritos en cualquier tipo de letra a discreción del usuario

6 Introducción a MATLAB Línea de comandos: Es un conjunto de códigos MATLAB, separados por coma (,) o punto y coma (;) que se ejecutan secuencialmente según aparecen en la línea una vez que se pulsa la tecla ENTER Ejemplo >> X = 1 + 1, Y = 2 * 2; Z = sin(pi/2) X = 2 Z = 1 Una línea de comandos puede ser editada y modificada usando las teclas de desplazamiento ← ↑ → ↓

7 Introducción a MATLAB Caracteres especiales: A algunos símbolos se ha asignado una función particular para facilitar la escritura de instrucciones, los de uso más común son los siguientes: [ ] - definir input de vectores y matrices ( ) - asignar precedencia en operaciones aritméticas - referir elementos de matrices - pasar argumentos a funciones o subprogramas = - asignar valores - indica transposición de matrices ; - dentro de [ ] para separar líneas - separar comandos - suprimir impresión % - indica comentario, el texto que le sigue es ignorado : - para indicar iteraciones o generar vectores en secuencias

8 Operadores aritméticos
Introducción a MATLAB Operadores: Ya que MATLAB está diseñado para trabajar con matrices, todos los operadores realizan operaciones con matrices, de modo que un escalar puede verse como una matriz 1 x 1 y un vector como una matriz de 1 x n ó de n x 1 según sea el caso Operadores aritméticos + - Suma, A + B suma los elementos de A a los correspondientes de B. A y B deben tener el mismo tamaño. Un escalar se le puede sumar a una matriz de cualquier tamaño - - Resta, A – B resta los elementos de A a los correspondientes de B. A y B deben tener el mismo tamaño. Un escalar se le puede restar a una matriz de cualquier tamaño * Multiplicación de matrices, C = A * B es el producto algebraico lineal de las matrices A y B. Para matrices, el número de columnas de A debe ser igual al número de filas de B. Un escalar se puede multiplicar a una matriz de cualquier tamaño

9 Operadores aritméticos
Introducción a MATLAB Operadores aritméticos / - B/A es lo mismo que B * A-1 ; A-1 es la matriz inversa de A, y debe ser n x n \ - A\B, se conoce como división por la izquierda, si A es cuadrada, A\B es casi igual inv(A)*B, excepto por la forma de ser calculado. - Si B es un vector columna de n elementos y A es n x n, entonces X = A\B es la solución al sistema AX = B por el método de eliminación de Gauss ^ - Potencia de matrices. X^p es X elevado a la potencia de p, si p es un escalar. - Si p es un entero, la potencia se calcular elevando al cuadrado repetidas veces. Si el entero es negativo, se calcula primero la inversa de X - Si X y p son matrices, MATLAB arroja un error ' - A' es la transpuesta de A

10 Operadores aritméticos de Arreglos de datos
Introducción a MATLAB Operadores aritméticos de Arreglos de datos .* - A .* B, es la multiplicación elemento por elemento de los arreglos A y B, los cuales deben tener el mismo tamaño ./ - A ./ B, es la matriz con elementos A(i,j) / B(i,j). A y B deben tener el mismo tamaño, al menos que uno sea un escalar .\ - A .\ B, es la matriz con elementos B(i,j) / A(i,j). A y B deben tener el mismo tamaño, al menos que uno sea un escalar .^ - A .^B, es la matriz con elementos A(i,j) elevados a la potencia de B(i,j). A y B deben tener el mismo tamaño, al menos que uno sea un escalar

11 Notación matricial La mayor potencialidad de MATLAB es su capacidad para manejar matrices y vectores mediante un sistema de indexación flexible, que permite realizar numerosas operaciones con comandos sencillos que no requieren procedimientos iterativos MATLAB trabaja fundamentalmente con un solo tipo de elemento base: matrices Los escalares son matrices de un elemento por un elemento y los vectores son matrices de una fila o de una columna Ejemplos: 1. Generar un vector cuyos elementos son los número del 1 al 8 >> v = [1:8] v =

12 Notación matricial 1. Generar un vector cuyos elementos son los número del 1 al 8 >> v = [1:8] v = 2. Crear un vector con una parte de v >> u = v(3:6) u = 3. Construir otro vector con elementos de u y v >> w = [v(3:5) u(2:4)] w =

13 Notación matricial 4. Producto escalar de vectores de tres elementos
>> u(1:3)*v(1:3)' ans = 26 5. Producto vectorial de vectores de tres elementos >> m = u(1:3)'*v(1:3) 6. Extraer la 2da columna de la matriz anterior >> c2 = m(:,2) c2 = 6 8 10

14 Notación matricial 7. Multiplicación elemento por elemento de dos matrices >> X = [1 0 1; 2 1 2; 3 2 3], Y = [3 2 1; 4 1 1;5 2 1] X = Y = >> X.*Y ans =

15 Operadores relacionales
Símbolos relacionales para desigualdades < menor que > mayor que <= menor o igual que >= mayor o igual que == igual a ~= diferente a

16 Operaciones con matrices
Transpuesta de una matriz >> X X = >> X' ans = Matriz inversa >> inv(X) ans = Determinante >> det(X) 516

17 Operaciones con matrices
Rango >> rank(X) ans = 3 Norma >> norm(X) Matriz identidad >> eye(3) Valores propios >> eig(X) ans = 6.7869 4.5675 >> [V,D] = eig(X) V = D =

18 Gráficos Una de las facilidades más importantes que ofrece MATLAB es la capacidad de realizar gráficas fácilmente MATLAB gráfica directamente la salida en una ventana separada de la ventana de comando llamada ventana de figura Las funciones gráficas automáticamente crean una nueva ventana de figura si no existe ninguna. Si existe una ventana de figura, MATLAB usa esta ventana

19 Gráficos Comando plot >> hold on >> plot(5,100,'*r')
>> x = [1:10] x = >> y = 4 - x + 2.5*x.^2 y = Columns 1 through 6 Columns 7 through 10 >> plot(x, y, '-ob') >> hold on >> plot(5,100,'*r')

20 Gráficos Comando contour, para funciones de dos variables
>> [x, y] = meshgrid(-5:0.1:5); >> f = -1./(1 + 2*(x - 1.5).^2 + (y… + 1).^2) /(1 + (x + 1).^2… + (y - 1.5).^2); >> contour(x,y,f,50) >> colorbar >> title('Curvas de nivel de la función f') >> xlabel('x') >> ylabel('y')) >> hold on >> plot([-3 -1],[3 1],'o-')

21 Gráficos Comando surf, para funciones de dos variables
>> [x, y] = meshgrid(-5:0.1:5); >> f = -1./(1 + 2*(x - 1.5).^2 + (y… + 1).^2) /(1 + (x + 1).^2… + (y - 1.5).^2); >> surf(x,y,f) >> colorbar >> title('Grafica 3D de la función f')

22 Programas Es posible combinar un lote de instrucciones que ejecuten una serie de cálculos y comparaciones para llegar a un resultado; un programa MATLAB permite guardar estos programas en archivos con extensión “.m” Estos archivos se ejecutan simplemente invocando su nombre sin la extensión, y pueden ser llamados desde otros programas a manera de rutinas o subprogramas Los archivos .m se puede crear usando un editor de texto cualquiera. MATLAB trae su propio editor de texto

23 Funciones (Functions)
Programas Tipos de archivos .m Escritos (Scripts) Funciones (Functions) No aceptan argumentos de entrada ni retornan argumentos de salida Pueden aceptar argumentos de entrada y retornan argumentos de salida Operan con datos existentes en el espacio de trabajo Operan con variables internas (locales) Usados principalmente para automatizar una serie de pasos que desean desarrollar en cualquier momento Usados principalmente para crear aplicaciones

24 function […] = NombreDeLaFuncion(…)
Programas Para declarar un archivo .m como una función es necesario escribir en la primera línea ejecutable el nombre de la función (debe ser igual al nombre del archivo), los argumentos de entrada y los argumentos de salida, según la siguiente estructura: function […] = NombreDeLaFuncion(…) Argumentos de salida Argumentos de entrada

25 Programas Comandos útiles para iniciarse en la programa en MATLAB:
pause Detiene la ejecución del programa hasta que una tecla activa sea presionada input Recibe datos por el teclado en tiempo de ejecución fprintf Permite que el programa escriba información en la pantalla (datos, resultados, mensajes)

26 Programas if,else, end Estor tres comandos permiten tomar decisiones y tomar caminos alternativos durante la ejecución del programa dependiendo del cumplimiento de una condición if condición instrucciones else end for, end Estas instrucciones permiten construir ciclos o lazos con un número de iteraciones previamente establecido for i = 1:10

27 Programas while, end Estas instrucciones permiten hacer ciclos que se repiten indefinidamente hasta que alguna condición impuesta deja de cumplirse while condición instrucciones end

28 Matemática simbólica en MATLAB
MATLAB cuenta con un toolbox de matemática simbólica, que permite realizar operaciones de cálculo sin el uso de valores numéricos Cálculo Diferenciación, integración, limites, sumatorias, series de Taylor Algebra lineal Inversas, determinantes, autovalores, formas canónicas de matrices simbólicas Simplificación Métodos de simplificación de expresiones matemáticas Solución de ecuaciones Soluciones simbólicas y numéricas a ecuaciones algebraicas y diferenciales Transformadas Fourier, Laplace, z-transform, y las correspondientes transformadas inversas

29 Matemática simbólica en MATLAB
Primero es necesario declarar las variables simbólicas >> syms x y Luego se puede realizar operaciones y construir las funciones, por ejemplo >> f = x^ *y -20 Derivada de f con respecto a x >> diff(f,x) ans = 2*x Integral de f entre 0 y pi >> int(f,0,pi) 1/3*pi^3+17/5*y*pi-20*pi


Descargar ppt "Optimización para Ingenieros"

Presentaciones similares


Anuncios Google