mat lab00

55
MatLab

Upload: pierkross

Post on 10-Jul-2015

113 views

Category:

Education


0 download

TRANSCRIPT

MatLab

Metodología para resolver problemas

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.

Es importante tener una estrategia consistente para resolver los problemas

Metodología para resolver problemas

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.

La metodología que usaremos consta de cinco pasos:

Metodología para resolver problemas

1. Plantear el problema claramente2. Describir la información de entrada y

de salida3. Resolver el problema a mano (o con

una calculadora) para un conjunto de datos sencillo

4. Crear una solución con MatLab5. Probar la solución con diversos datos

Metodología para resolver problemas

Analizaremos estos pasos utilizando datos recolectados de un experimento de laboratorio de física.

Suponga que hemos recabado una serie de temperaturas de un sensor de cierto equipo que se está utilizando en un experimento.

Se tomaron mediciones de temperatura cada 30 segundos, durante 5 minutos, en el curso del experimento.

Metodología para resolver problemas

Queremos calcular la temperatura media y también graficar los valores de temperatura.

1. Planteamiento del problema

El primer paso es plantear el problema claramente.

Es en extremo importante preparar un enunciado claro y conciso del problema para evitar malentendidos.

Para el presente ejemplo, el enunciado es el siguiente:

1. Planteamiento del problema

Calcular la media de una serie de temperaturas. Después graficar los valores de tiempo y temperatura

2. Descripción de Entradas y Salidas

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.

Estos elementos representan las entradas y salidas del problema, y pueden llamarse colectivamente entrada/salida o E/S.

2. Descripción de Entradas y Salidas

En muchos problemas resulta útil hacer un diagrama que muestre las entradas y las salidas.

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.

2. Descripción de Entradas y Salidas

Este es el diagrama de E/S para el presente problema:

3. Ejemplo a mano

El tercer paso es resolver el problema a mano o con una calculadora, empleando un conjunto sencillo de datos.

Se trata de un paso muy importante y no debe pasarse por alto, ni siquiera para problemas sencillos.

Este es el paso en que se detalla la solución del problema

3. Ejemplo a mano

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.

3. Ejemplo a mano

Para nuestro ejemplo, el único cálculo consiste en calcular la media de una serie de valores de temperatura.

Supongamos que usamos los siguientes datos para el ejemplo a mano:

Tiempo (minutos) Temperatura (Grados F)0.0 1050.5 1261.0 119

3. Ejemplo a mano

Calculamos a mano la media de las temperaturas:

(105 + 126 + 119) / 3 La media es 116.67 grados F

4. Solución MatLab

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

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.

4. Solución MatLab

Si la solución es sencilla, puede escribirse de inmediato el algoritmo utilizando comandos MatLab

Una de las ventajas de MatLab es que sus comandos coinciden notablemente con los pasos seguidos para resolver problemas de ingeniería

4. Solución MatLab

El siguiente gráfico muestra el programa MatLab para nuestro problema:

4. Solución MatLab

Las palabras que siguen a los caracteres de porcentaje son comentarios que ayudan a entender las instrucciones MatLab

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 (;)

4. Solución MatLab

Los valores de tiempo y temps no se imprimen porque las instrucciones que les asignan valores terminan con caracteres punto y coma.

El valor promedio se calculará y luego se imprimirá en la pantalla porque la instrucción no termina con el carácter ;

Por último, se genera una gráfica de los datos de tiempo y temperatura

5. Prueba

El paso final es probar la solución Primero probamos con los datos del

ejemplo a mano porque ya probamos la solución antes

Al ejecutarse las instrucciones anteriores, la computadora exhibe la salida:

5. Prueba

También se genera una gráfica de los puntos dados.

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:

5. Prueba

5. Prueba

Cuando se ejecutan estos comandos, la computadora exhibe la siguiente salida:

La gráfica siguiente también aparece en pantalla

5. Prueba

Escalares, Vectores y Matrices

Escalares, Vectores y Matrices

Matriz: Conjunto de números dispuestos en una retícula rectangular de filas y columnas.

Un solo valor puede considerarse como una matriz de una fila y una columna

Una coordenada x,y puede considerarse como una matriz de una fila y dos columnas

Escalares, Vectores y Matrices

Un conjunto de cuatro coordenadas x,y,z puede considerarse como una matriz de cuatro filas y tres columnas

Escalares, Vectores y Matrices

Los datos contenidos dentro de una matriz se escriben dentro de corchetes

Si la matriz tiene una fila y una columna, se denomina Escalar al número

Si una matriz tiene sólo una fila o una columna se denomina vector fila o vector columna

Escalares, Vectores y Matrices Para referirnos s los elementos de la

matriz, debemos mencionar la fila y la columna donde se encuentra dicho número.

Por ejemplo C4,3 indica que nos referimos al valor de la cuarta fila y tercera columna. 4 y 3 se denomina subíndices

Para referirnos a toda la matriz, utilizamos el nombre de la matriz sin subíndices

Escalares, Vectores y Matrices

El tamaño de la matriz se especifica en el número de filas y columnas

Si una matriz tiene m filas y n columnas, tiene entonces m*n elementos

Si una matriz tiene igual número de filas y de columnas, se denomina matriz cuadrada

Escalares, Vectores y Matrices Conteste las siguientes preguntas acerca

de esta matriz:

6. ¿Qué tamaño tiene G?7. Dé las referencias de subíndices de todas

las posiciones que contienen el valor 0.5

Escalares, Vectores y Matrices En los programas MatLab, se asigna

nombres a los escalares, vectores y matrices. Las siguientes reglas se aplican a estos nombres de variables:

2. Los nombres de variables deben comenzar con una letra

3. Los nombres de variables pueden contener letras, dígitos y el carácter de subrayado (_)

4. Los nombres de variables pueden tener cualquier longitud, pero deben ser únicos dentro de los 19 primeros caracteres

Escalares, Vectores y Matrices

MatLab es sensible a la diferencia entre mayúsculas y minúsculas. Así los nombres Tiempo, TIEMPO y tiempo representan tres variables distintas

Asegúrese de escoger nombres que le ayuden a recordar lo que se está almacenando en la variable

Inicialización

Métodos para inicializar variables:2. Lista explícita de valores3. Operador de dos puntos4. Uso de funciones MatLab5. Lectura de datos desde el teclado

Listas Explícitas

La forma más sencilla de definir una matriz es usar una lista de números:

Listas Explícitas Estas instrucciones son ejemplos de la

instrucción de asignación. 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

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

Listas Explícitas Un valor puede contener un signo mas o un

sigo menos y un punto decimal, pero no una coma.

Si una instrucción de asignación termina con el carácter punto y coma, no se exhibe en la pantalla la asignación

El comando who lista las matrices que se han definido

El comando whos lista las matrices y sus tamaños

Listas Explícitas

También se puede definirse una matriz listando cada fila en una línea aparte:

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

Listas Explícitas

Listas Explícitas

También puede definirse una matriz usando otras matriz, previamente definida. Por ejemplo:

Es equivalente a:

Listas Explícitas

Podemos modificar los valores de una matriz usando la referencia a un elemento específico.

S(2) = -1.0; Cambia el segundo valor de la matriz

S de 1.5 a -1.0

Listas Explícitas

El comando:S(4) = 5.5;

Añade un elemento a la matriz S. Si ejecuta el siguiente comando:

S(8) = 9.5; La matriz S tendrá 8 elementos. Los

elementos 5, 6 y 7 tendrán valor cero

Operador Dos Puntos (:)

Es un operador muy potente para crear nuevas matrices

Puede usarse para crear vectores a partir de matrices.

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

Operador Dos Puntos (:) 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

Operador Dos Puntos (:)

También puede usarse para generar nuevas matrices.

Si usa el carácter dos puntos para separar dos enteros, el operador dos puntos genera todos los enteros entre los enteros especificados.

Por ejemplo:

Operador Dos Puntos (:)H = 1 : 8;

Genera un vector llamado H con los enteros entre 1 y 8 como valores

tiempo = 0.0 : 0.5 : 5.0 Genera un vector llamado tiempo que

contiene los números de 0.0 a 5.0 con incrementos de 0.5

Operador Dos Puntos (:)valores = 10 : -1 : 0;

Genera un vector llamado valores con los números 10, 9, … 0.

Operador Dos Puntos (:)

Puede también usarse para seleccionar una submatriz de otra matriz

Suponga que se definió la matriz C como sigue:

Operador Dos Puntos (:)

Si ejecutamos los comandos:c_parcial_1 = C(:, 2:3);C_parcial_2 = C(3:4, 1:2);

Habremos definido las siguientes matrices:

Operador Dos Puntos (:)

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.

Matriz vacía

Los siguientes comandos generan una matriz vacía:A = [];B = 4: -1: 5;

Una matriz vacía es diferente a tener una matriz de ceros

Columna Larga

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

Operador de Transponer

La transpuesta de la matriz A se denota por A’x = 0:4;y = 5:5:25;[x’ y’]

La salida generada por estas instrucciones es:

Operador de Transponer0 51 102 153 204 25