Sunteți pe pagina 1din 33

PRACTICA Nº 1:

INTRODUCCION A MATLAB

1. El entorno de trabajo de MATLAB


2. Operaciones con números
3. Variables, funciones y expresiones numéricas
4. Operaciones con polinomios
5. Operaciones con vectores y matrices
PRACTICAS
1.1. MATLAB. SOFTWARE BASICO Y TOOLBOXES
SECTORES DE APLICACION
REGULACION
Economía y anzahl () AeroespaAcUiTaOlMATICA
finanzas
float zae
begin
if wert > 0
begom
zae = zae + 1
end
end

Motor ein
Ventil geschlossen
Klappe zu

Automatización
industrial

Automoción

Electrónica e
Informática

Comunicaciones Industria
Protokolle
Protokolle Industria
Energética Biotecnológica
Farmacéutica
Química
1.2. EL ENTORNO DE TRABAJO DE MATLAB
VENTANAS
Pantalla de Inicio en MATLAB 7 :
La pantalla de entrada de MATLAB constituye el marco de trabajo general del programa.
Esta es la vista que aparece por defecto. Puede cambiarse con la opción
de menú View/Desktop Layout. Los elementos principales de esta pantalla son:
Ventana de directorio Ventana de comandos
actual
 Ventana de comandos: Ejecuta las
instrucciones y los programas MATLAB
a continuación del prompt >>
Ventana del historial de comandos:
Presenta los últimos comandos
introducidos en la Ventana de Comandos
y permite recuperarlos y ejecutarlos
Ventana de directorio actual: Muestra
los ficheros del directorio o carpeta
actual. Este directorio se puede cambiar
desde la propia ventana Ventana del historial
Ventana de espacio de trabajo: de comandos
Permite ver las variables almacenadas en
memoria mostrando su tipo, tamaño y
clase

P1. 3
1.3. OPERACIONES CON NUMEROS
CONSTANTES NUMÉRICAS
Los elementos básicos de MATLAB son: constantes, variables, operaciones,
funciones y expresiones numéricas.
Constantes :
Una constante numérica es cualquier número que se utiliza en un cálculo sin que varíe
durante una sesión de trabajo. Pueden ser números enteros, racionales, reales y complejos.
 Números enteros: -2 , 14 , 980
 Números reales: Se pueden escribir de 2 maneras
-Con un máximo de 16 cifras significativas y el punto decimal en cualquier
posición. Ej: 14.7958
-Utilizando la notación exponencial. Permite simplificar la escritura de
constantes reales muy grandes o muy pequeñas. Ej: 0.34e7(equivale a 0.34 ×107)
 Números complejos: 3+4i , 3+4*j .
En Matlab, las variables i, j están predefinidas como i  j   1
Operaciones aritméticas : + Suma
- Resta
MATLAB permite las operaciones habituales * Producto + PRIORIDAD
de suma, resta, producto, división, potencia, / División
con la jerarquía habitual entre ellas. ^ Potencia
1.3. OPERACIONES CON NUMEROS
EJEMPLOS
Ejemplo 1.1: Calcular las siguientes expresiones aritméticas
(1  23 )
a) 10  4 b) (25) 7
c) d ) (1  2i) 4
(4  2)
1.3. OPERACIONES CON NUMEROS
FORMATOS
Una primera aplicación de MATLAB es su uso como una calculadora
científica, con la ventaja de poseer una gran precisión de cálculo. El usuario
puede especificar el grado de precisión que desea. A continuación, se citan los
comandos más usuales que permiten determinar el formato de los resultados:
format short Ofrece los resultados con 4 cifras decimales.
Es el formato por defecto de MATLAB
format short e Ofrece los resultados con 4 cifras decimales más
la potencia de 10 necesaria
format long Ofrece los resultados con 16 cifras significativas

format long e Ofrece los resultados con 16 cifras significativas


más la potencia de 10 necesaria
format bank Ofrece los resultados con 2 decimales

format rat Permite operar con números racionales y


presentar los resultados en forma racional

P1. 6
1.3. OPERACIONES CON NUMEROS
EJEMPLOS
Ejemplo 1.2: Obtener una aproximación numérica de 167 con distintos formatos
14

P1. 7
1.4. VARIABLES, FUNCIONES Y EXPRESIONES NUMERICAS
VARIABLES

Variables :
Una variable es una etiqueta que identifica una porción de memoria; en ella se pueden
guardar datos de tipo numérico o alfanumérico (caracteres) y se pueden modificar
durante la vida de la variable en la sesión de trabajo.
MATLAB no requiere ningún tipo de comando para declarar variables. Simplemente, se
crea la variable mediante la asignación directa de su valor.

Los nombres de las variables pueden tener hasta 31 caracteres, letras y números. Sólo se
requiere que el primer carácter sea una letra. Para nombrar variables no pueden
utilizarse caracteres especiales como + , - , * , / , ^ , < , > , …

P1. 8
1.4. VARIABLES, FUNCIONES Y EXPRESIONES NUMERICAS
FUNCIONES MATEMATICAS
Funciones :
Una función tiene la forma: nombre (argumento)
donde nombre identifica la función a utilizar y argumento el valor donde queremos
evaluarla.
Matlab dispone de numerosas funciones predefinidas, lo que proporciona una gran
potencia a este paquete. En este apartado, veremos las funciones reales de argumento real.
Matlab ofrece un conjunto completo de funciones trigonométricas, hiperbólicas,
exponenciales, logarítmicas y otras funciones específicas de variable numérica:
FUNCION SIGNIFICADO FUNCION SIGNIFICADO
abs(x) Valor absoluto fix(x) Elimina la parte decimal de x
acos(x) Arcocoseno floor(x) Redondeo hacia el entero inferior a x
acosh(x) Arcocoseno hiperbólico imag(x) Parte imaginaria compleja
asin(x) Arcoseno log10(x) Logaritmo común
asinh(x) Arcoseno hiperbólico log (x) Logaritmo neperiano
atan(x) Arcotangente rats(x) Aproxima x por una fracción
atanh(x) Arcotangente hiperbólica rem(x,y) Resto de la división (resto al dividir x/ y)
ceil(x) Redondeo hacia el entero superior a x round(x) Redondeo al entero más cercano
conj(x) Complejo conjugado sin(x) Seno
cos(x) Coseno sinh(x) Seno hiperbólico
cosh(x) Coseno hiperbólico sqrt(x) Raiz cuadrada
exp(x) Exponencial e =2.7183 tan(x) Tangente
tanh(x) Tangente hiperbólica
P1. 9
1.4. VARIABLES, FUNCIONES Y EXPRESIONES NUMERICAS
EXPRESIONES NUMÉRICAS
Expresiones numéricas :
Una expresión numérica es un conjunto de números, variables y funciones previamente
definidas, relacionados todos ellos por operadores aritméticos.
Se permite el uso de espacios en blanco para separar las unidades básicas de la expresión,
mejorando su presentación y lectura posterior.
Si una expresión es demasiado larga puede seguirse escribiendo en la línea siguiente. Se
indica por “ … “ seguido por “Enter”
Ejemplo 1.3: Un termistor NTC tiene una característica resistencia-temperatura
representada por R  R Oe
0.1T
siendo Ro=10000  y T la temperatura en grados
Celsius. Obtener el valor de la resistencia (en ohmios) para una temperatura T=20 ºC

P1. 10
1.4. VARIABLES, FUNCIONES Y EXPRESIONES NUMERICAS
EJEMPLOS

Ejemplo 1.4: Resolver numéricamente la ecuación de segundo grado x 2  4x  13  0


Aplicar la conocida fórmula
 b  b 2  4ac
x1,2 
2a

P1. 11
1.5. OPERACIONES CON POLINOMIOS
DEFINICION
Definición de Polinomios :
Un polinomio en MATLAB se representa como un vector fila con los coeficientes del
polinomio ordenados en orden decreciente de la potencia de la variable entre corchetes.
Todos los coeficientes que sean nulos deben incluirse.
Ejemplo 1.5: Introducir en MATLAB los polinomios p( x)  2 x 2  7 x  1 y q( x)  x 3  3 x

P1. 12
1.5. OPERACIONES CON POLINOMIOS
CALCULO DEL VALOR
Cálculo del valor de un polinomio en un punto :
Para evaluar el valor de un polinomio p en un punto x se utiliza la instrucción
polyval(p,x)
Ejemplo 1.6: Calcular el valor del polinomio p( x)  x 3  5 x 2  8x  1 en el punto x = 2

P1. 13
1.5. OPERACIONES CON POLINOMIOS
RAICES
Raices de un polinomio :
Para calcular las raíces de un polinomio p se utiliza la instrucción roots(p)
Ejemplo 1.7: Calcular las raíces del polinomio p( x)  x 3  3 x 2  9 x  13

Para reconstruir un polinomio a partir de sus raíces se utiliza la instrucción poly


Ejemplo 1.8: Reconstruir el polinomio cuyas raíces son -1, 2 + 3i

P1. 14
1.5. OPERACIONES CON POLINOMIOS
OPERACIONES
Operaciones con polinomios :
Los polinomios admiten las operaciones de suma, resta, multiplicación y división
Suma y resta: Para sumar o restar polinomios deben tener el mismo grado o bien
debe completarse el polinomio de menor grado con los ceros necesarios a la
izquierda para que tengan el mismo número de coeficientes
Ejemplo 1.9: Sumar y restar los polinomios p1( x)  2 x 2  3 x  4 y p2( x)  9x  16

P1. 15
1.5. OPERACIONES CON POLINOMIOS
OPERACIONES
Operaciones con polinomios :
 Multiplicación y división:
Para multiplicar los polinomios p1 y p2 se utiliza el comando conv(p1,p2)
Para dividir los polinomios p1 y p2 se utiliza el comando deconv(p1,p2). Si la división no
es exacta, podemos obtener el cociente y el resto mediante [coc, res]=deconv(p1,p2)
Ejemplo 1.10: Multiplicar y dividir los polinomios p1(x)  x 2  2 x  1 y p2( x)  x  1

P1. 16
1.6. OPERACIONES CON VECTORES Y MATRICES
VECTORES
Tipos de datos :
Las matrices m×n son el tipo de dato fundamental en MATLAB, de ahí su nombre
de MATrix LABoratory.
Los vectores son tratados como un caso particular de matriz de una fila 1×n
(vector fila) o de una columna m×1 (vector columna) .
Los números o variables escalares son tratados como una matriz 1×1 .
Definición de vectores :
Un vector fila se define escribiendo entre corchetes sus componentes separados por
blancos o comas :
>> vector_fila= [v1 v2 v3 …vn]
Un vector columna se define escribiendo sus componentes separados por intro o “; “
>> vector_columna= [v1; v2; v3; … ;vn] o bien:
>> vector_columna= [v1
v2

vn]
P1. 17
1.6. OPERACIONES CON VECTORES Y MATRICES
EJEMPLOS

4
6
Ejemplo 1.11: Introducir en MATLAB los vectores v  (2 3 4) y w
8
 
9

P1. 18
1.6. OPERACIONES CON VECTORES Y MATRICES
GENERACION DE VECTORES
Generación de vectores :
Existen varias formas de definir una variable vectorial sin tener que teclear por
pantalla todos sus elementos. Se presentan en la siguiente tabla:

variable=[a:b] Define un vector fila cuyo primer elemento es a y el último es b,


estando los intermedios separados de uno en uno
variable=[a: p :b] Define un vector fila cuyo primer elemento es a y el último es b,
estando los intermedios separados por el incremento p
variable=linspace(a,b,n) Define un vector fila cuyo primer elemento es a y el último es b, que
tiene un total de n elementos uniformemente espaciados entre sí
variable=logspace(a,b,n) Define un vector fila de n elementos logarítmicamente espaciados
entre 10a y 10b

 La dimensión de un vector v puede obtenerse con el comando length(v)

La notación “ : ” es muy utilizada en todas las aplicaciones de MATLAB

P1. 19
1.6. OPERACIONES CON VECTORES Y MATRICES
SELECCIÓN DE ELEMENTOS DE VECTORES
Selección de componentes de vectores :
Podemos seleccionar un elemento de un vector o un subconjunto de elementos
del mismo. Las reglas se presentan en la siguiente tabla:
x(n) Devuelve el n-ésimo elemento del vector x

x(i:j) Devuelve los elementos del vector x situados entre el i-ésimo y el


j-ésimo, ambos inclusive
x(i: p :j) Devuelve los elementos del vector x situados entre el i-ésimo y el
j-ésimo, separados de p en p unidades
Ejemplo 1.14: Dado un vector con los números naturales de 1 a 10, a) seleccionar los elementos
situados entre el segundo y el octavo, b) de éstos, seleccionar sólo los pares

P1. 20
1.6. OPERACIONES CON VECTORES Y MATRICES
OPERACIONES CON VECTORES
Operaciones con vectores :
Operaciones con escalares: suma, resta, multiplicación, división y exponenciación.
Dado un vector v y un número real k :
v+k Suma k a cada componente de v
v–k Resta k a cada componente de v
v*kók*v Multiplica por k cada componente de v
v/k Divide por k cada componente de v
v. ^ k Genera un nuevo vector donde cada componente se obtiene de elevar a k la
correspondiente componente de v

Operaciones entre vectores: Cuando 2 vectores v1 y v2 sean de la misma dimensión


se puede realizar la suma, resta, multiplicación, división y exponenciación,
entendiendo que se hace componente a componente.
v1 + v2 Suma dos vectores componente a componente
v1 - v2 Resta dos vectores componente a componente
v1 .* v2 Multiplica dos vectores componente a componente
v1 ./ v2 Divide dos vectores componente a componente
v1 .^ v2 Genera un nuevo vector cuya componente i-ésima se obtiene de elevar la
componente i-ésima de v1 a la componente i-ésima de v2

P1. 21
1.6. OPERACIONES CON VECTORES Y MATRICES
EJEMPLOS

Ejemplo 1.15: Sea el escalar k=10 y los vectores v1=[1 2 3] y v2=[4 5 6] . Realizar las
siguientes operaciones observando los resultados: a) k*v1 ; b) v1+v2 ; c) v1.*v2 ; d) v1.^v2

P1. 22
1.6. OPERACIONES CON VECTORES Y MATRICES
FUNCIONES DE ARGUMENTO VECTORIAL
Funciones de argumento vectorial:
Todas las funciones matemáticas definidas para escalares admiten como argumento un
vector, dando como resultado la aplicación de la función sobre cada elemento del vector
Existen también funciones específicas de MATLAB definidas sobre vectores.
Algunas de ellas se muestran en la siguiente tabla:
sum(v) Suma de los componentes de un vector
prod(v) Producto de los componentes de un vector
´ Transposición de un vector. Cambia un vector fila en un vector
columna y viceversa
dot(v1,v2) Producto escalar de dos vectores v1 y v2
cross(v1,v2) Producto vectorial de dos vectores v1 y v2

max(v) Valor máximo de los componentes de v

min(v) Valor mínimo de los componentes de v

mean(v) Valor medio de los componentes de v

sort(v) Ordena de manera ascendente los componentes de v

P1. 23
1.6. OPERACIONES CON VECTORES Y MATRICES
EJEMPLOS
Ejemplo 1.16: a) Efectuar la operación raíz cuadrada sobre el vector x=[1 4 9 16]
b) Calcular el seno del vector de ángulos theta=[0 pi/4 pi/2 pi]

Ejemplo 1.17: Dados los vectores v1=[1 2 3] y v2=[4 5 6], realizar las siguientes operaciones:
a) Suma de los componentes de v1, b) Producto escalar de v1 y v2

P1. 24
1.6. OPERACIONES CON VECTORES Y MATRICES
DEFINICIÓN DE MATRICES. SUBMATRICES
Definición de matrices:
Las matrices se definen en MATLAB introduciendo sus vectores filas separados por
punto y coma. Por ejemplo, una matriz 3 × 3
A= [a11 a12 a13 ; a21 a22 a23; a31 a32 a33]
Los elementos de una matriz se identifican por 2 índices, el primero indica la
fila y el segundo la columna. Así A(m,n) define el elemento (m,n) de la matriz A.
 La dimensión de una matriz A puede obtenerse con la instrucción size(A)
Submatrices:
Para crear una submatriz podemos utilizar el comando A(i:j , k:l) que
extrae las filas desde la i hasta la j y las columnas desde la k a la l.
 Para extraer una fila, por ejemplo la i-ésima, se utiliza el comando A(i,:)
 Para extraer una columna, por ejemplo la j-ésima, se utiliza el comando A(:,j)
 Para extraer una serie de filas, por ejemplo la m y la n, se utiliza el comando A([m,n],:)
 Para extraer una serie de columnas, por ejemplo la m y la n, se utiliza el comando
A(:,[m,n])
P1. 25
1.6. OPERACIONES CON VECTORES Y MATRICES
EJEMPLOS
Ejemplo 1.18: Dada la matriz A 1 2 3 4
 
a)Seleccionar la submatriz formada 5 6 7 8
A 
por las tres primeras filas y columnas 9 10 11 12
 
b)Seleccionar la primera y la cuarta
columna 13 14 15 16 

P1. 26
1.6. OPERACIONES CON VECTORES Y MATRICES
MATRICES ESPECIALES
Generación de matrices especiales:
 Existen comandos MATLAB para generar matrices especiales.
zeros(m,n) Genera una matriz de orden m×n con todos sus elementos nulos
ones(m,n) Genera una matriz de orden m×n con todos sus elementos 1
eye(m,n) Genera una matriz de orden m×n con unos sobre la diagonal principal
y ceros en el resto.
eye(n) Crea la matriz identidad de orden n
rand(m,n) Genera un matriz de orden m×n con coeficientes aleatorios entre 0 y 1
Ejemplo 1.19: a) Generar una matriz de unos de dimensión 2×4 ; b) Generar una matriz
aleatoria de dimensión 3 ×4

P1. 27
1.6. OPERACIONES CON VECTORES Y MATRICES
OPERACIONES CON MATRICES
Operaciones con matrices:
 Operaciones con escalares: Son válidas todas las operaciones explicadas para vectores
 Operaciones entre matrices: Dados k, un número natural, y 2 matrices A y B
A+B Suma de matrices de la misma dimensión. La matriz suma se obtiene
sumando cada elemento de A con el correspondiente elemento de B
A-B Resta de matrices de la misma dimensión. La matriz suma se obtiene
restando cada elemento de A con el correspondiente elemento de B
A*B Producto de matrices en el sentido habitual. El número de filas de la
primera debe coincidir con el número de columnas de la segunda
A\B División a la izquierda. Realiza la operación B dividida por A,
entendiendo esto como A-1 B. La matriz A debe ser cuadrada y su
dimensión igual al número de columnas de B
A/B División a derecha. Realiza la operación A dividida por B,
entendiendo esto como AB -1. La matriz B debe ser cuadrada y su
dimensión igual al número de filas de A
A^k Exponenciación. Calcula el producto de la matriz por sí misma tantas
veces como indique el exponente k. La matriz debe ser cuadrada
A.* B , A ./ B Operación producto, división y exponenciación componente a
A .^ k componente
A’ Si la matriz A es real calcula la transpuesta cambiando filas por
columnas. Si la matriz es compleja calcula la transpuesta conjugada
P1. 28
1.6. OPERACIONES CON VECTORES Y MATRICES
EJEMPLOS
1 2 3 10 11 12
Ejemplo 1.20: Dadas las matrices A y B    
A  4 5 6 B  13 14 15
a) Realizar la suma de las matrices A y B 7 8 9 16 17 18 
b) Realizar el producto de las matrices A y B    
c) Multiplicar las matrices A y B componente a componente
d) Elevar la matriz A al cuadrado
e) Elevar cada componente de A al cuadrado

P1. 29
1.6. OPERACIONES CON VECTORES Y MATRICES
EJEMPLOS

Ejemplo 1.20 (sigue) :

P1. 30
1.6. OPERACIONES CON VECTORES Y MATRICES
RESOLUCION DE SISTEMAS DE ECUACIONES LINEALES
Determinante. Matriz inversa. Rango:
 El determinante de una matriz cuadrada A puede calcularse con la instrucción det(A)
Si la matriz A es no singular, es decir, si su determinante es no nulo, entonces se puede
calcular su inversa mediante el comando inv(A)
El rango de una matriz A, es decir el orden del mayor menor de determinante no nulo,
se puede calcular con la instrucción rank(A)
6 18 2 
  a) Calcular su determinante
Ejemplo 1.21: Dada la matriz C  7  2 4
4 b) Calcular su matriz inversa
 10  6

P1. 31
1.6. OPERACIONES CON VECTORES Y MATRICES
RESOLUCION DE SISTEMAS DE ECUACIONES LINEALES
Resolución de sistemas de ecuaciones lineales:
a11 x1  a12 x2  ...  a1nxn  b1

 Dado un sistema de ecuaciones lineales: a21 x1  a22 x2  ...  a 2n x n  b2


...
an1 x1  an2 x2  ...  annxn  bn
a a12 ... a1n x1  b 
 11    1 
Se puede poner en forma matricial como a21 a22 ... a2n  x2   b2 
AX=B :     
...   ...
  ...   
an1 an2 ... ann  xn  bn 
La solución clásica es por el método de Cramer. MATLAB permite resolver este
sistema de varias formas mucho más rápidas:
X=A \ B Dadas las matrices A y B, mediante la división a la
izquierda X=A-1 B , se resuelve el sistema AX=B
X=linsolve(A,B) Dadas las matrices A y B, resuelve el sistema AX=B
[x1,x2,…,xn]= solve(‘ec1, ec2, …, ecn’ , ’x1,x2, …,xn’) Resuelve n ecuaciones simultáneas ec1,ec2, …, ecn en
las variables x1, x2, …, xn . En la instrucción se
escriben las ecuaciones de manera explícita sin tener
que predefinir las matrices A y B
P1. 32
1.6. OPERACIONES CON VECTORES Y MATRICES
EJEMPLOS

Ejemplo 1.22: Resolver el sistema de ecuaciones lineales: x1  2x 2  3x 3  366


4x1  5x 2  6x 3  804
utilizando las posibilidades de MATLAB
7 x1  8x 2  0x 3  351

P1. 33

S-ar putea să vă placă și