1 / 53

PROGRAMACIÓN (2a PARTE) MATLAB

PROGRAMACIÓN (2a PARTE) MATLAB. INTRODUCCIÓN. ¿Que es MATLAB? ( MAT rix LAB oratory) Sistema basado en cálculo matricial Desarrollo de aplicaciones matemáticas y de ingeniería Integra: cálculo, visualización y programación Medio ambiente de fácil uso. ¿Que es MATLAB?. Usos típicos:

olin
Télécharger la présentation

PROGRAMACIÓN (2a PARTE) MATLAB

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PROGRAMACIÓN (2a PARTE) MATLAB

  2. INTRODUCCIÓN ¿Que es MATLAB? (MATrix LABoratory) • Sistema basado en cálculo matricial • Desarrollo de aplicaciones matemáticas y de ingeniería • Integra: cálculo, visualización y programación • Medio ambiente de fácil uso

  3. ¿Que es MATLAB? Usos típicos: • matemáticas y computación • desarrollo de algoritmos • modelado, simulación y prototipos • análisis, exploración y visualización de datos • graficos para ciencias e ingenierías • desarrollo de aplicaciones (GUI)

  4. ¿Que es MATLAB? • Elemento básico: matriz • Permite resolver muchos problemas técnicos • Usando una fracción del tiempo del usado con C o Fortran • Herramienta estándar en universidades (en cursos introductorios y avanzados)

  5. ¿Que es MATLAB? • En la industria, herramienta de investigación desarrollo y análisis • Contiene familias de soluciones de aplicaciones específicas: Toolboxes Los toolboxes: • Colecciones de funciones (archivos-m) • Extensiones hacia áreas y aplicaciones específicas

  6. ¿Que es MATLAB? • Permiten aprender y aplicar tecnología especializada • existen tooboxes en áreas como: procesamiento de señales, sistemas de control, redes neuronales, lógica difusa, wavelets, etc.

  7. Sistema MATLAB • Lenguaje MATLAB • Medio ambiente de trabajo • Manejo de graficos • Biblioteca de funciones matemáticas • Programa interfaz de applicaciones

  8. ¿Que es Simulink? • Es un programa compañero de MATLAB • Se maneja gráficamente vía ratón • Sistema interactivo para simular sistemas dinámicos • Modelar sistemas dibujando diagramas de bloques en la pantalla y manipularlos dinámicamente

  9. ¿Que es Simulink? • Trabaja con sistemas lineales, no lineales, de tiempo continuo, de tiempo discreto, multivariables y multirate • Blocksets son librerías adicionales de Simulink para aplicaciones • Real-time Workshop es un programa que permite generar código C a partir de los diagramas de bloques y ejecutarlos en sistemas de tiempo real.

  10. Matrices y Operaciones Básicas • Un solo tipo de datos: MATRIZ • Arreglo rectangular de números Introduciendo Matrices: •Introduciendo una lista de números •Cargandolas de archivos externos •Generandolas usando funciones

  11. Matrices y Operaciones Básicas Por ejemplo: A = [16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1] Después de oprimir enter, aparecerá:

  12. Matrices y Operaciones Básicas A = 16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1

  13. Matrices y Operaciones Básicas sum(A) ans = 34 34 34 34 Suma el contenido de las columnas

  14. Matrices y Operaciones Básicas A’ ans = 16 5 9 4 3 10 6 15 2 11 7 14 13 8 12 1 Que es la matriz transpuesta

  15. Matrices y Operaciones Básicas sum(A')' ans = 34 34 34 34 Que es la suma de los renglones

  16. Matrices y Operaciones Básicas diag(A) ans = 16 10 7 1 Que es la diagonal principal

  17. Matrices y Operaciones Básicas sum(diag(A)) ans = 34 Que es la suma de los elementos de la diagonal principal

  18. Matrices y Operaciones Básicas Subíndices El elemento en el renglón i y la columna j de A se denota como: A(i,j) Así, el elemento A(4,2) es 15 De modo que: A(1,4) + A(2,4) + A(3,4) + A(4,4) ans = 34 (No es la mejor forma de hacer esto)

  19. Matrices y Operaciones Básicas A(8) es otra forma de referirnos al valor 15 almacenado en A(4,2) Si se tratan de usar índices que excedan las dimensiones de la matriz, como con: t = A(4,5) Aparecerá el mensaje de error: Index exceeds matrix dimensions

  20. Matrices y Operaciones Básicas Pero si se almacena un valor en un elemento furera de los límites, las dimensiones se incrementan para acomodarlo. Así: X = A; X(4,5) = 17 X = 16 3 2 13 0 5 10 11 8 0 9 6 7 12 0 4 15 14 1 17

  21. Matrices y Operaciones Básicas El operador “dos puntos” Es uno de los operadores más importantes. Funciona de diferentes formas. • Así, 1:10 es un vector renglón conteniendo: 1 2 3 4 5 6 7 8 9 10

  22. Matrices y Operaciones Básicas 100:–7:50 = 100 93 86 79 72 65 58 51 0:pi/4:pi = 0 0.7854 1.5708 2.3562 3.1416

  23. Matrices y Operaciones Básicas Subíndices que involucran dos puntos, se refieren a porciones de una matriz, así: A(1:k,j) son los primeros k elementos de la columna j de A. Así: sum(A(1:4,4)) calcula la suma de los elementos de la cuarta columna (aunque no es la mejor forma de hacer esto)

  24. Matrices y Operaciones Básicas Los dos puntos por si mismos se refieren a todos los elementos en un renglón o columna La palabra end se refiere al último renglón o columna. De modo que: sum(A(:,end))=34 calcula la suma de los elementos de la última columna

  25. 2. EXPRESIONES Como la mayoría de los lenguajes de programación Pero se involucran matrices enteras •Variables •Números •Operadores •Funciones

  26. 2. Expresiones Variables • No se requiere algún tipo de declaración o indicación de dimensiones • Cuando se encuentra una variable nueva, se crea automáticamente • Si ya existía la variable, se cambia su contenido

  27. 2. Expresiones Por ejemplo: num_students = 25 crea una matriz de 1 por 1 Los nombres de las variables consisten de una letra seguida por cualquier número de letras, dígitos o símbolos.

  28. 2. Expresiones • MATLAB usa solo los primeros 31 caracteres del nombre de una variable • MATLAB distingue entre letras mayúsculas y minúsculas

  29. 2. Expresiones Números • MATLAB usa notación decimal convencional • Puede encabezar a un número un signo más (+) o menos (-) • Notación científica: e para especificar la potencia de 10 • Números imaginarios usan i o j

  30. 2. Expresiones Ejemplos: • 3 – 99 0.0001 • 9.6397238 1.60210e – 20 6.02252e23 • 1i –3.14159j 3e5i Todos los números almacenados usan el formato long (IEEE floating-point standard).

  31. 2. Expresiones Números flotantes: precisión finita de • 16 dígitos decimales significativos • rango finito de 10 e-308 a 10 e+308

  32. 2. Expresiones Operadores Las expresiones usan operadores aritméticos y reglas de precedencia familiares • + Suma • – Resta • * Multiplicación • / División • \ División izquierda • ^ Potencia • ' Transpuesta complejo conjugado

  33. 2. Expresiones Funciones • MATLAB, gran número de funciones matemáticas básicas • Como: abs, sqrt, exp, and sin. • Funciones avanzadas: Bessel and gamma functions. • Con help elfun se obtiene una lista de funciones elementales

  34. 2. Expresiones Con: • help specfun • help elmat Se obtienen funciones más avanzadas.

  35. 2. Expresiones Algunas funciones como sqrt ysin, son parte del núcleo de MATLAB (built in) • son muy eficientes • detalles computacionales no accesibles Otras funciones como gamma y sinh, están implementadas en archivos-m • Se puede ver el código y aún modificarlo

  36. 2. Expresiones Varias funciones especiales proporcionan valores constantes útiles: • pi 3.14159265… • i unidad imaginaria (también j) • eps precisión relativa en p. flotante, 2 e-52 • realmin número en p. Flot. más pequeño, 2 e-1022 • realmax número en p. Flot. más grande, 2e1023 • Inf Infinito • NaN No un número

  37. 2. Expresiones • rho = (1+sqrt(5))/2 rho = 1.6180 • a = abs(3+4i) a = 5

  38. 2. Expresiones • z = sqrt(besselk(4/3,rho–i)) z = 0.3730+ 0.3214i

  39. huge = exp(log(realmax)) huge = 1.7977e+308 toobig = pi*huge toobig = Inf

  40. 3. Matrices Generación de Matrices Se cuenta con 4 funciones para generar matrices: • Z = zeros(2,4) Z = 0 0 0 0 0 0 0 0

  41. 3. Matrices • F = 5*ones(3,3) F = 5 5 5 5 5 5 5 5 5 • N = fix(10*rand(1,10)) N = 4 9 4 4 8 5 2 6 8 0

  42. 3. Matrices • R = randn(4,4) R = 1.0668 0.2944 –0.6918 –1.4410 0.0593 –1.3362 0.8580 0.5711 –0.0956 0.7143 1.2540 –0.3999 –0.8323 1.6236 –1.5937 0.6900

  43. 3. Matrices • El comando load lee archivos binarios que contienen matrices generadas con anterioridad • El archivo texto tiene que estar organizado como una tabla rectangular de números separadas por espacios • Así, si se tiene el archivo magik.dat, entonces: load magik.dat lee el archivo y crea una variables magik conteniendo a la matriz.

  44. 3. Matrices Archivos-M Se pueden crear matrices usando archivos-m Por ejemplo: A = [ ... 16.0 3.0 2.0 13.0 5.0 10.0 11.0 8.0 9.0 6.0 7.0 12.0 4.0 15.0 14.0 1.0 ];

  45. 3. Matrices Almacenandolo en un archivo con nombre magik.m entonces, al escribir: magik se lee el archivo y es creada una variable A que contiene la matriz del ejemplo.

  46. 3. Matrices Concatenación • Es el proceso de unir matrices pequeñas para formar unas más grandes • Los paréntesis cuadrados [] son el operador de concatenación. Por ejemplo: • con la matriz A de 4-por-4 y haciendo: B = [A A+32; A+48 A+16] • Resulta en una matriz de 8X8

  47. 3. Matrices Borrando renglones y columnas Ejemplos: borrar la segunda columna de A. X = A; con lo que X queda: X(:,2) = [] X = 16 2 13 5 11 8 9 7 12 4 14 1

  48. 3. Matrices • Borrar un solo elemento de una matriz: X(1,2) = [] resulta en un error. • Usando solo un subíndice, se borra un elemento o una secuencia de elementos. El elemento resultante es un vector renglón. Así: X(2:2:10) = []; resulta en: X = 16 9 2 7 13 12 1

  49. 3. Matrices La ventana de comandos • Permite cambiar la fuente • Permite controlar el formato numérico de los valores desplegados • Se cambia solo la forma en que son desplegados los números y no la forma en que se realizan lols cálculos y se salvan

  50. 3. Matrices Elemplos: x = [4/3 1.2345e–6] • format short 1.3333 0.0000 • format short e 1.3333e+000 1.2345e–006 • format short g 1.3333 1.2345e–006

More Related