You are on page 1of 28

MATLAB

… una introducción

Guión
G ¿Por Qué Matlab? G Comandos básicos G Constantes. Operaciones. G Variables. Asignar. Eliminar. Guardar. Recuperar. G Funciones. G Vectores. Matrices. G Gráficas.

¿Por qué MATLAB? G Calidad científica G Potencia G Flexibilidad G Facilidad de uso G Interactividad G Transparencia G Gráficos .

help topic G dir G diary fichero G Comentarios: % G Edición de líneas de comando G Funciones de edición de Windows .Comandos básicos G help.

Constantes G Matrices de números complejos ➧ A = [2+3i. escalares. 2i] ➧ Vectores. 4. 5-i. números reales. G Cadenas de caracteres ➧ 'Esto es una cadena' ➧ Esto no es una cadena .

^ G Precisión aparente ➧ format long ➧ format short ./ .* . cociente y potencia: * / ^ ➧ Uso del punto: .Operaciones G Suma y resta: + G Producto.

Variables GAsignar ➧ a=3. b=4 GGuardar ➧ save fichero GListar ➧ ans ➧ who ➧ whos GRecuperar ➧ load fichero GEliminar ➧ clear b .

Funciones G help G sin G cos G tan G exp elfun ❚ asin ❚ acos ❚ atan ❚ log G ezplot sin(x) .

z' Módulo y argumento ➧ abs(z) ---> 5 ➧ angle(z) Representación gráfica ➧ compass(z) .Números Complejos Forma binómica ➧ z = 3 + 4i Parte real e imaginaria ➧ real(z) ---> 3 ➧ imag(z) ---> 4 Complejo conjugado ➧ conj(z).

6 -0.2 0 -0.4 0.y) -0.8 -1 -1 -0.2 0.8 0.6 0.inf) 1 0.2 0 0.01 : 1 y = sin(2*pi*x) plot(x.4 -0.2 -0.4 Valores de funciones x = 0 : 0.8 1 .Vectores ➧ v = [1 9 9 8] Normas ➧ norm(v.8 -0.6 -0.2) ➧ norm(v.6 0.4 0.1) ➧ norm(v.

'*') ¡Ojo!: x*x Prod.x2) ➧ plot(x2.*x ➧ sum(x2) Voltear ➧ fliplr(x) ➧ flipud(x') . escalar: x*x' Cuadrado: x2=x.x) ➧ plot(x.Operaciones ➧ n=5.x2. ➧ x=1:n Transpuesta: x' ➧ 2*x Matriz rango 1: x'*x Gráficos ➧ plot(x.

Ejercicio: 1+2+. end suma MATLAB n=5. x=1:n.. suma=0..+np ... suma=sum(x) Ejercicio: 1p+2p+.+n Lenguaje programación n=5. for k=1:n suma=suma+k.

q) [q.d) .x) G Multiplicación: G División con resto: conv(p.r] = deconv(p.Polinomios p ( x ) = x − x + 5x − 1 G p=[1 -1 5 0 -1] 4 3 2 ¡De mayor a menor grado! G Valor de p en x: polyval(p.

4) ➧ ones(1. 8] ➧ eye(2) ➧ eye(size(A)) ➧ zeros(3. 9.10) ➧ A' ➧ fliplr(A) ➧ flipud(A) ➧ det(A) ➧ inv(A) ➧ rank(A) .10) ➧ rand(1.Matrices ➧ A = [1. 9.

Gráficos G Vectores G Funciones de una variable Coordenadas cartesianas Coordenadas polares Ecuaciones paramétricas G Matrices G Funciones de dos variables .

y. ➧ plot(x. xlabel('Septiembre 1998') . ➧ y = [695 750 705 720 690]. title('Indice general de la Bolsa de Madrid').Gráficos de vectores ➧ x = [11 14 15 16 17].’r*:’).

2 -0.Coordenadas cartesianas Tabla de valores ➧ x = 0:0.y) ➧ label('y=sin(x)') 1 0.6 -0.8 -1 0 y=sin(x) Orden de MATLAB 1 2 3 4 5 6 ➧ fplot('sin(x)'. ➧ plot(x.4 0.6 0.2 0 -0.1:2*pi.[0 2*pi]) .4 -0. ➧ y = sin(x).8 0.

25 180 0 60 30 210 240 300 330 270 .5 0. ➧ r = sin(5*z).1:2*pi.Coordenadas polares Diagramas de radiación de antenas ➧ z = 0:0. ➧ polar(z.r) 150 120 90 1 0.75 0.

➧ plot(y. ➧ y =sin(3*t).Ecuaciones paramétricas Curvas de Lisajoux ➧ t = 0:2*pi/100:2*pi. ➧ x =sin(2*t).x) .

Gráficos de matrices ➧ mesh(A) ➧ surf(A) ➧ contour(A) 10 8 6 4 2 0 40 30 20 10 0 0 10 20 30 40 .

surf(Z) mesh.Funciones de dos variables ➧ help grafxyz ➧ ➧ ➧ ➧ ➧ x = -1:0.1:1. surfc . y = x.y).Y] = meshgrid(x.* Y. [X. Z = X . contour.

.m G Se editan y graban como ficheros ASCII. o desde otro archivo.m G Contienen órdenes de MATLAB G Se invocan desde la ventana de órdenes.Archivos.

. G Permiten el paso de parámetros.m de Función G Empiezan por function y = nomdefun(x) G Las variables definidas no modifican las existentes en el espacio de trabajo. G Extienden las funciones de MATLAB.Archivos.

.La instrucción WHILE G Bucle controlado por una condición. G Sintaxis: while condición instrucciones end G Las instrucciones se repiten mientras la condición se verifique.

G Sintaxis: for x = array instrucciones end G Las instrucciones se ejecutan una vez para cada columna en el array.La instrucción FOR G Bucle que se repite un número de veces. G Podemos anidar sentencias for. .

G Sintaxis: if condición instrucciones end G Las instrucciones se realizan si la condición se verifica. .La instrucción IF G Bifurcación condicional.

Operadores lógicos y relacionales G Operadores de comparación: ➧ Mayor. menor ➧ Mayor o igual ➧ Menor o igual ➧ Igual ➧ Distinto G Operadores lógicos: ➧ Conjunción & ➧ Disyunción | ➧ O exclusiva xor ➧ Negación ~ Nota: ~ es [Alt] + 126 <. > >= <= == ~= .

m function a = pfijo(fun. % Calcula la variación fprintf(1.x0. 'iter= %i. % Itera la función g incr = abs(a-x0). iter. a= %x0.maxiter) % Aproxima por el método del punto fijo una raíz de la ecuación fun(x)=x %cercana a x0. % % Variables de entrada: % fun(x): función a iterar. incr=1. 'Método del punto fijo \n').Archivo pfijo.iter=1. 'g') % x0: estimación inicial para el proceso de iteración % tol: tolerancia en error absoluto para la raíz % maxiter: máximo numero de iteraciones permitidas % % Variables de salida: % a: valor aproximado de la raíz fprintf(1.tol. x0 =a. incr). % Salida . iter = iter + 1. % Cuenta los pasos y actualiza x0 end. while (incr>tol) & (iter<maxiter) a = feval(fun. se debe introducir con notación simbólica (eg. tomando como criterio de parada abs(fun(x)-x)<tol o la cota sobre % el numero de iteraciones dada por maxiter. incr= %e \n'. a.x0).