Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Mat lab00

190 views

Published on

computacion para ing

Published in: Education
  • Be the first to comment

  • Be the first to like this

Mat lab00

  1. 1. MatLab
  2. 2. Metodología para resolver problemas <ul><li>La resolución de problemas es una parte clave de los cursos de ingeniería, y también de los de ciencias de computación, matemáticas, física, química, estadística. </li></ul><ul><li>Es importante tener una estrategia consistente para resolver los problemas </li></ul>
  3. 3. Metodología para resolver problemas <ul><li>Es importante que la estrategia sea lo bastante general para funcionar con todas estas distintas áreas, para no tener que aprender una técnica para los problemas de matemáticas, una técnica diferente para los problemas de física, etc. </li></ul><ul><li>La metodología que usaremos consta de cinco pasos: </li></ul>
  4. 4. Metodología para resolver problemas <ul><li>Plantear el problema claramente </li></ul><ul><li>Describir la información de entrada y de salida </li></ul><ul><li>Resolver el problema a mano (o con una calculadora) para un conjunto de datos sencillo </li></ul><ul><li>Crear una solución con MatLab </li></ul><ul><li>Probar la solución con diversos datos </li></ul>
  5. 5. Metodología para resolver problemas <ul><li>Analizaremos estos pasos utilizando datos recolectados de un experimento de laboratorio de física. </li></ul><ul><li>Suponga que hemos recabado una serie de temperaturas de un sensor de cierto equipo que se está utilizando en un experimento. </li></ul><ul><li>Se tomaron mediciones de temperatura cada 30 segundos, durante 5 minutos, en el curso del experimento. </li></ul>
  6. 6. Metodología para resolver problemas <ul><li>Queremos calcular la temperatura media y también graficar los valores de temperatura. </li></ul>
  7. 7. 1. Planteamiento del problema <ul><li>El primer paso es plantear el problema claramente. </li></ul><ul><li>Es en extremo importante preparar un enunciado claro y conciso del problema para evitar malentendidos. </li></ul><ul><li>Para el presente ejemplo, el enunciado es el siguiente: </li></ul>
  8. 8. 1. Planteamiento del problema <ul><li>Calcular la media de una serie de temperaturas. Después graficar los valores de tiempo y temperatura </li></ul>
  9. 9. 2. Descripción de Entradas y Salidas <ul><li>El segundo paso consiste en describir cuidadosamente la información que se da para resolver el problema y luego identificar los valores que se deben calcular. </li></ul><ul><li>Estos elementos representan las entradas y salidas del problema, y pueden llamarse colectivamente entrada/salida o E/S. </li></ul>
  10. 10. 2. Descripción de Entradas y Salidas <ul><li>En muchos problemas resulta útil hacer un diagrama que muestre las entradas y las salidas. </li></ul><ul><li>En este punto, el programa es una abstracción (caja negra) porque no estamos definiendo los pasos para determinar las salidas; sólo estamos mostrando la información que se usará para calcular la salida. </li></ul>
  11. 11. 2. Descripción de Entradas y Salidas <ul><li>Este es el diagrama de E/S para el presente problema: </li></ul>
  12. 12. 3. Ejemplo a mano <ul><li>El tercer paso es resolver el problema a mano o con una calculadora, empleando un conjunto sencillo de datos. </li></ul><ul><li>Se trata de un paso muy importante y no debe pasarse por alto, ni siquiera para problemas sencillos. </li></ul><ul><li>Este es el paso en que se detalla la solución del problema </li></ul>
  13. 13. 3. Ejemplo a mano <ul><li>Si no podemos tomar un conjunto sencillo de números y calcular la salida (ya sea a mano o con calculadora), no estamos preparados para continuar con el siguiente paso; debemos releer el problema y tal vez consultar material de referencia. </li></ul>
  14. 14. 3. Ejemplo a mano <ul><li>Para nuestro ejemplo, el único cálculo consiste en calcular la media de una serie de valores de temperatura. </li></ul><ul><li>Supongamos que usamos los siguientes datos para el ejemplo a mano: </li></ul><ul><ul><ul><li>Tiempo (minutos) Temperatura (Grados F) </li></ul></ul></ul><ul><ul><ul><li>0.0 105 </li></ul></ul></ul><ul><ul><ul><li>0.5 126 </li></ul></ul></ul><ul><ul><ul><li>1.0 119 </li></ul></ul></ul>
  15. 15. 3. Ejemplo a mano <ul><li>Calculamos a mano la media de las temperaturas: </li></ul><ul><li>(105 + 126 + 119) / 3 </li></ul><ul><li>La media es 116.67 grados F </li></ul>
  16. 16. 4. Solución MatLab <ul><li>Una vez que podemos resolver el problema para un conjunto sencillo de datos, estamos listos para desarrollar un algoritmo : un bosquejo paso a paso de la solución del problema </li></ul><ul><li>Si el problema es complicado, puede ser necesario escribir a grandes rasgos los pasos y luego descomponer esos pasos en otros más pequeños. </li></ul>
  17. 17. 4. Solución MatLab <ul><li>Si la solución es sencilla, puede escribirse de inmediato el algoritmo utilizando comandos MatLab </li></ul><ul><li>Una de las ventajas de MatLab es que sus comandos coinciden notablemente con los pasos seguidos para resolver problemas de ingeniería </li></ul>
  18. 18. 4. Solución MatLab <ul><li>El siguiente gráfico muestra el programa MatLab para nuestro problema: </li></ul>
  19. 19. 4. Solución MatLab <ul><li>Las palabras que siguen a los caracteres de porcentaje son comentarios que ayudan a entender las instrucciones MatLab </li></ul><ul><li>Si una instrucción MatLab asigna o calcula un valor, también imprime el valor en la pantalla si la instrucción no termina en el carácter punto y coma (;) </li></ul>
  20. 20. 4. Solución MatLab <ul><li>Los valores de tiempo y temps no se imprimen porque las instrucciones que les asignan valores terminan con caracteres punto y coma. </li></ul><ul><li>El valor promedio se calculará y luego se imprimirá en la pantalla porque la instrucción no termina con el carácter ; </li></ul><ul><li>Por último, se genera una gráfica de los datos de tiempo y temperatura </li></ul>
  21. 21. 5. Prueba <ul><li>El paso final es probar la solución </li></ul><ul><li>Primero probamos con los datos del ejemplo a mano porque ya probamos la solución antes </li></ul><ul><li>Al ejecutarse las instrucciones anteriores, la computadora exhibe la salida: </li></ul>
  22. 22. 5. Prueba <ul><li>También se genera una gráfica de los puntos dados. </li></ul><ul><li>El promedio coincide con el ejemplo a mano, así que ahora podemos sustituir esos datos por los datos del experimento de física, dando el siguiente programa: </li></ul>
  23. 23. 5. Prueba
  24. 24. 5. Prueba <ul><li>Cuando se ejecutan estos comandos, la computadora exhibe la siguiente salida: </li></ul><ul><li>La gráfica siguiente también aparece en pantalla </li></ul>
  25. 25. 5. Prueba
  26. 26. Escalares, Vectores y Matrices
  27. 27. Escalares, Vectores y Matrices <ul><li>Matriz : Conjunto de números dispuestos en una retícula rectangular de filas y columnas. </li></ul><ul><li>Un solo valor puede considerarse como una matriz de una fila y una columna </li></ul><ul><li>Una coordenada x,y puede considerarse como una matriz de una fila y dos columnas </li></ul>
  28. 28. Escalares, Vectores y Matrices <ul><li>Un conjunto de cuatro coordenadas x,y,z puede considerarse como una matriz de cuatro filas y tres columnas </li></ul>
  29. 29. Escalares, Vectores y Matrices <ul><li>Los datos contenidos dentro de una matriz se escriben dentro de corchetes </li></ul><ul><li>Si la matriz tiene una fila y una columna, se denomina Escalar al número </li></ul><ul><li>Si una matriz tiene sólo una fila o una columna se denomina vector fila o vector columna </li></ul>
  30. 30. Escalares, Vectores y Matrices <ul><li>Para referirnos s los elementos de la matriz, debemos mencionar la fila y la columna donde se encuentra dicho número. </li></ul><ul><li>Por ejemplo C 4,3 indica que nos referimos al valor de la cuarta fila y tercera columna. 4 y 3 se denomina subíndices </li></ul><ul><li>Para referirnos a toda la matriz, utilizamos el nombre de la matriz sin subíndices </li></ul>
  31. 31. Escalares, Vectores y Matrices <ul><li>El tamaño de la matriz se especifica en el número de filas y columnas </li></ul><ul><li>Si una matriz tiene m filas y n columnas, tiene entonces m*n elementos </li></ul><ul><li>Si una matriz tiene igual número de filas y de columnas, se denomina matriz cuadrada </li></ul>
  32. 32. Escalares, Vectores y Matrices <ul><li>Conteste las siguientes preguntas acerca de esta matriz: </li></ul><ul><li>¿Qué tamaño tiene G? </li></ul><ul><li>Dé las referencias de subíndices de todas las posiciones que contienen el valor 0.5 </li></ul>
  33. 33. Escalares, Vectores y Matrices <ul><li>En los programas MatLab, se asigna nombres a los escalares, vectores y matrices. Las siguientes reglas se aplican a estos nombres de variables: </li></ul><ul><li>Los nombres de variables deben comenzar con una letra </li></ul><ul><li>Los nombres de variables pueden contener letras, dígitos y el carácter de subrayado (_) </li></ul><ul><li>Los nombres de variables pueden tener cualquier longitud, pero deben ser únicos dentro de los 19 primeros caracteres </li></ul>
  34. 34. Escalares, Vectores y Matrices <ul><li>MatLab es sensible a la diferencia entre mayúsculas y minúsculas. Así los nombres Tiempo, TIEMPO y tiempo representan tres variables distintas </li></ul><ul><li>Asegúrese de escoger nombres que le ayuden a recordar lo que se está almacenando en la variable </li></ul>
  35. 35. Inicialización <ul><li>Métodos para inicializar variables: </li></ul><ul><li>Lista explícita de valores </li></ul><ul><li>Operador de dos puntos </li></ul><ul><li>Uso de funciones MatLab </li></ul><ul><li>Lectura de datos desde el teclado </li></ul>
  36. 36. Listas Explícitas <ul><li>La forma más sencilla de definir una matriz es usar una lista de números: </li></ul>
  37. 37. Listas Explícitas <ul><li>Estas instrucciones son ejemplos de la instrucción de asignación . </li></ul><ul><li>Esta consiste de un nombre de variable seguido de un signo igual y de los valores de datos que se asignarán a la variable </li></ul><ul><li>Dichos valores se encierran entre corchetes en orden por fila, separados por caracteres punto y coma ( ; ) y los valores de cada fila se separan mediante comas o espacios </li></ul>
  38. 38. Listas Explícitas <ul><li>Un valor puede contener un signo mas o un sigo menos y un punto decimal, pero no una coma. </li></ul><ul><li>Si una instrucción de asignación termina con el carácter punto y coma, no se exhibe en la pantalla la asignación </li></ul><ul><li>El comando who lista las matrices que se han definido </li></ul><ul><li>El comando whos lista las matrices y sus tamaños </li></ul>
  39. 39. Listas Explícitas <ul><li>También se puede definirse una matriz listando cada fila en una línea aparte: </li></ul>
  40. 40. <ul><li>Si hay demasiado números en una fila de una matriz para que quepan en una línea, podemos continuar la instrucción en la siguiente línea, pero se requiere de una coma y tres puntos ( , … ) al final de la línea para indicar que la fila debe continuar </li></ul>Listas Explícitas
  41. 41. Listas Explícitas <ul><li>También puede definirse una matriz usando otras matriz, previamente definida. Por ejemplo: </li></ul><ul><li>Es equivalente a: </li></ul>
  42. 42. Listas Explícitas <ul><li>Podemos modificar los valores de una matriz usando la referencia a un elemento específico. </li></ul><ul><li>S(2) = -1.0; </li></ul><ul><li>Cambia el segundo valor de la matriz S de 1.5 a -1.0 </li></ul>
  43. 43. Listas Explícitas <ul><li>El comando: </li></ul><ul><li>S(4) = 5.5; </li></ul><ul><li>Añade un elemento a la matriz S. </li></ul><ul><li>Si ejecuta el siguiente comando: </li></ul><ul><li>S(8) = 9.5; </li></ul><ul><li>La matriz S tendrá 8 elementos. Los elementos 5, 6 y 7 tendrán valor cero </li></ul>
  44. 44. Operador Dos Puntos ( : ) <ul><li>Es un operador muy potente para crear nuevas matrices </li></ul><ul><li>Puede usarse para crear vectores a partir de matrices. </li></ul><ul><li>Si usa un signo dos puntos en lugar de un subíndice específico, el signo dos puntos representa toda la fila o la columna </li></ul>
  45. 45. Operador Dos Puntos ( : ) <ul><li>Por ejemplo, después de definir una matriz C, los siguientes comandos almacenan la primera columna de C en el vector columna X, la segunda en el vector columna Y y la tercera en el vector columna Z </li></ul>
  46. 46. Operador Dos Puntos ( : ) <ul><li>También puede usarse para generar nuevas matrices. </li></ul><ul><li>Si usa el carácter dos puntos para separar dos enteros, el operador dos puntos genera todos los enteros entre los enteros especificados. </li></ul><ul><li>Por ejemplo: </li></ul>
  47. 47. Operador Dos Puntos ( : ) <ul><li>H = 1 : 8; </li></ul><ul><li>Genera un vector llamado H con los enteros entre 1 y 8 como valores </li></ul><ul><li>tiempo = 0.0 : 0.5 : 5.0 </li></ul><ul><li>Genera un vector llamado tiempo que contiene los números de 0.0 a 5.0 con incrementos de 0.5 </li></ul>
  48. 48. Operador Dos Puntos ( : ) <ul><li>valores = 10 : -1 : 0; </li></ul><ul><li>Genera un vector llamado valores con los números 10, 9, … 0. </li></ul>
  49. 49. Operador Dos Puntos ( : ) <ul><li>Puede también usarse para seleccionar una submatriz de otra matriz </li></ul><ul><li>Suponga que se definió la matriz C como sigue: </li></ul>
  50. 50. Operador Dos Puntos ( : ) <ul><li>Si ejecutamos los comandos: </li></ul><ul><ul><li>c_parcial_1 = C(:, 2:3); </li></ul></ul><ul><ul><li>C_parcial_2 = C(3:4, 1:2); </li></ul></ul><ul><li>Habremos definido las siguientes matrices: </li></ul>
  51. 51. Operador Dos Puntos ( : ) <ul><li>Si la notación de signo de dos puntos define una matriz con subíndices no válidos, como C(5:6, :) se exhibe un mensaje de error. </li></ul>
  52. 52. Matriz vacía <ul><li>Los siguientes comandos generan una matriz vacía: </li></ul><ul><ul><li>A = []; </li></ul></ul><ul><ul><li>B = 4: -1: 5; </li></ul></ul><ul><li>Una matriz vacía es diferente a tener una matriz de ceros </li></ul>
  53. 53. Columna Larga <ul><li>La expresión C(:) equivale a una matriz de columna larga que contiene la primera columna de C seguida de la segunda columna de C, y así sucesivamente </li></ul>
  54. 54. Operador de Transponer <ul><li>La transpuesta de la matriz A se denota por A’ </li></ul><ul><ul><li>x = 0:4; </li></ul></ul><ul><ul><li>y = 5:5:25; </li></ul></ul><ul><ul><li>[x’ y’] </li></ul></ul><ul><li>La salida generada por estas instrucciones es: </li></ul>
  55. 55. Operador de Transponer <ul><ul><li>0 5 </li></ul></ul><ul><ul><li>1 10 </li></ul></ul><ul><ul><li>2 15 </li></ul></ul><ul><ul><li>3 20 </li></ul></ul><ul><ul><li>4 25 </li></ul></ul>

×