Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Practica2 PDF
Practica2 PDF
2 Objetivos
Al finalizar esta práctica se deberán haber adquirido conocimientos sobre los siguientes temas de programación
en MATLAB:
• Estructuras de datos en MATLAB
3 Introducción
MATLAB trabaja esencialmente con matrices de números reales o complejos como estructura de datos principal.
Las matrices 1 × 1 son interpretadas como escalares y las matrices fila o columna como vectores. Por defecto
todas las variables son matriciales y nos podemos referir a un elemento con dos ı́ndices o con uno en caso de
vectores.
>> w = [4 5 6];
El operador ’ es el de trasposición:
>> w0
ans =
4
5
6
1
Si queremos declarar un vector de elementos equiespaciados entre dos extremos, por ejemplo, que el primero
valga 0, el último 20 y la distancia entre elementos sea 2, basta poner:
>> vect1 = 0 : 2 : 20
vect1 =
0 2 4 6 8 10 12 14 16 18 20
Equivalentemente, si lo que conocemos del vector es que la primera coordenada vale 0, la última 20 y que tiene
11 en total, escribiremos:
A los elementos de un vector se accede sin más que escribir el nombre del vector y, entre paréntesis, su ı́ndice:
>> vect2(3)
ans =
4
>> vect2(2 : 5)
ans=
2468
>> vect1(: 5)
ans=
0
2
4
6
8
>> vect1(5 :)
ans=
10
12
14
16
18
20
Las matrices se escriben como los vectores, pero separando las filas mediante un punto y coma; ası́ una matriz
3x3:
>> M = [1 2 3; 4 5 6; 7 8 9]
M=
123
456
2
789
A los elementos de una matriz se accede escribiendo el nombre de la matriz y, entre paréntesis, los respectivos
ı́ndices:
>> mat(2 : 3, [1 3]) % Submatriz formada por los elementos que están en
% ”todas” las filas que hay entre la segunda y la tercera y
% en las columnas primera y tercera
3
ans =
46
01
la matriz nula,
>> zeros(3)
ans =
000
000
000
>> ones(4)
ans =
1111
1111
1111
1111
El argumento enviado a las 3 funciones anteriores (el numero entre paréntesis) especificaba las dimensiones de
la matriz a generar. Se puede conocer el tamaño de una matriz y la longitud de un vector mediante:
>> size(v)
ans =
13
Existen comandos que permiten crear de forma sencilla matrices. Por ejemplo:
4
100
020
003
Las funciones matemáticas elementales están definidas de forma que se pueden aplicar sobre un vector. El
resultado es el vector formado por la aplicación de la función a cada elemento del vector. Ası́:
>> log(v)
ans =
0 0.6931 1.0986
>> x = sin(p)
x=
Columns 1 through 7
0 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511
Columns 8 through 11
0.8090 0.5878 0.3090 0.0000
Las operaciones habituales entre vectores (suma, resta y producto escalar de vectores; suma, resta, producto y
potencia de matrices) se representan con los operadores habituales:
5
v=
123
w=
456
También pueden efectuarse multiplicaciones, divisiones y potencias de arrays, entendiéndolas como elemento a
elemento (como, de hecho, se realizan la suma y la resta). El operador utilizado para ellas es el habitual
precedido por un punto; es decir:
>> v. ∗ w % Vector formado por los productos de los respectivas elementos: % ans(i)=v(i)*w(i)
ans =
4 10 18
>> w./v % Vector formado por el cociente de cada elementos de w entre el elemento correspondiente de v:
ans =
4.0000 2.5000 2.0000
6
149
16 25 36
001
>> det(mat)
ans =
-3
y resolverse sistemas de ecuaciones lineales del estilo Ax = b. Por ejemplo si generamos la siguiente matriz A y
el vector columna b:
>> A = [2 − 1 1; 1 1 0; 0 1 − 3]
A=
2 -1 1
110
0 1 -3
>> b = [3 3 − 7]0
b=
3
3
-7
una forma de resolver este sistema de ecuaciones lineales seria utilizar la formula x = A−1 b:
>> x = inv(A) ∗ b
x=
1
2
3
>> Ab = [A b]
Ab =
2 -1 1 3
1103
0 1 -3 -7
7
5 Ejercicios
5.1 Ejercicio 1
Resolver
el siguiente
sistema
utilizando
dos procedimientos distintos y comprobar que sale la misma solución:
1 1 0 3 x1 4
2 1 −1 1 x2 1
3 −1 −1 2 × x3 = −3
−1 2 3 −1 x4 4
5.2 Ejercicio 2
1 2
Dados dos vectores fila v y w, v =2 w = 2
3 1
explicar cual es la diferencia entre realizar estas operaciones en matlab:
>> v 0 ∗ w
>> v. ∗ w
5.3 Ejercicio 3
Realizad las siguientes tareas (utilizad el comando help si fuera necesario):
1. Definid la matriz/vector columna
2
3
5
mediante dos notaciones diferentes: una que use ’,’ para separar los elementos, y otra que emplee ’;’
2. Construid una matriz de dimensión 4 x 3 con 0 en todas las posiciones.
3. Construid una matriz de dimensión 3 x 2 con 1 en todas las posiciones.
4. Construid una matriz de dimensión 5 x 5 con 1 en la diagonal y ceros fuera de ella.
5. Construid una matriz de dimensión 3 x 5 con números aleatorios entre 0 y 1 siguiendo una distribución
uniforme.
6. Construid una matriz de dimensión 3 x 5 con números aleatorios de media 0 y desviación tı́pica 1 siguiendo
una distribución normal.
5.4 Ejercicio 4
Dada la matriz A:
1 2 3
1 4 2
1 2 1
1. Introducid los datos de la matriz A en una variable con el mismo nombre
2. Obtened la matriz transpuesta de A y guardarla en una variable A t.
8
3. Hallad la inversa de la matriz A, y asignad el resultado a una variable A inv.
4. Calculad el determinante de la matriz A, y almacenarla en una variable A det.
5. Realizad las siguientes operaciones matriciales, e interpretad los resultados en cada caso:
A*A A.*A A2 A.2 A/A A./A
6. Añadid una columna compuesta por 1, 4 y 8 al final de la matriz A, y guardad la matriz resultante en
una variable B.
6 Material a entregar
La práctica se debe entregar de forma electrónica Y por escrito antes de la fecha de finalización indicada al
comienzo del enunciado en el laboratorio 208 de la escuela politécnica o bien durante la practica correspondiente
a la fecha limite de entrega. No se admitirán practicas con retraso. En general, las prácticas tienen fecha lı́mite
un viernes y por lo tanto pueden entregarse hasta la hora de la clase de la fecha limite.
Se enviará un único fichero zip a través del sistema de entrega de prácticas de la Escuela Politécnica Superior,
para el periodo: ”SEGUNDO CUATRIMESTRE”, la categorı́a: ”TITULACIÓN INGENIERÍA TÉCNICA
INDUSTRIAL” y el nombre de la asignatura: ”INFORMÁTICA APLICADA”.
http://docenciaweb.ii.uam.es/esp/alumnos/practicas/envio_practicas.php
La pagina para el envió de practicas tiene una protección para que ninguna persona que no tenga relación con
la Escuela Politécnica pueda acceder a la misma. En la ventana de autentificación donde se tiene que introducir
un login y una password, los valores a introducir son: practicas y entrega.
El nombre del fichero será PN X YY.zip, donde ’N’ se deberá reemplazar por el número de practica (2,3,4
o 5), ’X’ se deberá reemplazar por el grupo de prácticas (A o B) e ’YY’ por el número de pareja. Ası́ por
ejemplo, la pareja 1 del grupo A deberá enviar su práctica 2 en el fichero P2 A 01.zip. El numero de grupo lo
podréis encontrar en la pagina web de las practicas de la asignatura en el enlace ”Tabla de Excel con las notas
de practicas de los grupos A y B”, es el numero a la izquierda de los nombres de los componentes de la pareja.
El fichero Excel lo podéis encontrar en la página de practicas de la asignatura en:
http://arantxa.ii.uam.es/~drozado/fund_info.html
No se admitirán practicas con retraso. En general, las prácticas tienen fecha lı́mite un viernes y por lo tanto
pueden entregarse hasta la hora de la clase de la fecha limite.