Está en la página 1de 28

MATLAB

una introduccin

Guin
G Por Qu Matlab? G Comandos bsicos G Constantes. Operaciones. G Variables. Asignar. Eliminar. Guardar. Recuperar. G Funciones. G Vectores. Matrices. G Grficas.

Por qu MATLAB?
GCalidad cientfica GPotencia GFlexibilidad GFacilidad de uso GInteractividad GTransparencia GGrficos

Comandos bsicos
Ghelp, help topic Gdir Gdiary fichero GComentarios: % GEdicin de lneas de comando GFunciones de edicin de Windows

Constantes
GMatrices de nmeros complejos
A = [2+3i, 4; 5-i, 2i] Vectores, escalares, nmeros reales.

GCadenas de caracteres
'Esto es una cadena' Esto no es una cadena

Operaciones
G Suma y resta: + G Producto, cociente y potencia: * / ^ Uso del punto: .* ./ .^ G Precisin aparente format long format short

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)

Nmeros Complejos
Forma binmica z = 3 + 4i Parte real e imaginaria real(z) ---> 3 imag(z) ---> 4 Complejo conjugado conj(z), z' Mdulo y argumento abs(z) ---> 5 angle(z) Representacin grfica compass(z)

Vectores
v = [1 9 9 8]

Normas
norm(v,2) norm(v,1) norm(v,inf)
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4

Valores de funciones
x = 0 : 0.01 : 1 y = sin(2*pi*x) plot(x,y)

-0.6 -0.8 -1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

Operaciones
n=5; x=1:n

Transpuesta: x'
2*x

Matriz rango 1: x'*x Grficos


plot(x,x2) plot(x2,x) plot(x,x2,'*')

Ojo!: x*x Prod. escalar: x*x' Cuadrado: x2=x.*x


sum(x2)

Voltear
fliplr(x) flipud(x')

Ejercicio: 1+2+...+n
Lenguaje programacin
n=5; suma=0; for k=1:n suma=suma+k; end suma

MATLAB
n=5; x=1:n; suma=sum(x)

Ejercicio: 1p+2p+...+np

Polinomios
p ( x ) = x x + 5x 1
G p=[1 -1 5 0 -1]
4 3 2

De mayor a menor grado!

GValor de p en x:
polyval(p,x)

GMultiplicacin: GDivisin con resto:

conv(p,q) [q,r] = deconv(p,d)

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

Grficos
GVectores GFunciones de una variable
Coordenadas cartesianas Coordenadas polares Ecuaciones paramtricas

GMatrices GFunciones de dos variables

Grficos de vectores
x = [11 14 15 16 17]; y = [695 750 705 720 690]; plot(x,y,r*:), title('Indice general de la Bolsa de Madrid'), xlabel('Septiembre 1998')

Coordenadas cartesianas
Tabla de valores
x = 0:0.1:2*pi; y = sin(x); plot(x,y) label('y=sin(x)')
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 y=sin(x)

Orden de MATLAB

fplot('sin(x)',[0 2*pi])

Coordenadas polares
Diagramas de radiacin de antenas
z = 0:0.1:2*pi; r = sin(5*z); polar(z,r)
150 120 90 1 0.75 0.5 0.25 180 0 60 30

210 240 300

330

270

Ecuaciones paramtricas
Curvas de Lisajoux
t = 0:2*pi/100:2*pi; x =sin(2*t); y =sin(3*t); plot(y,x)

Grficos de matrices
mesh(A) surf(A) contour(A)

10 8 6 4 2 0 40 30 20 10 0 0 10 20 30 40

Funciones de dos variables


help grafxyz x = -1:0.1:1; y = x; [X,Y] = meshgrid(x,y); Z = X .* Y; surf(Z) mesh, contour, surfc

Archivos.m

GContienen rdenes de MATLAB GSe invocan desde la ventana de rdenes, o desde otro archivo.m GSe editan y graban como ficheros ASCII.

Archivos.m de Funcin
GEmpiezan por
function y = nomdefun(x)

GLas variables definidas no modifican las existentes en el espacio de trabajo. GExtienden las funciones de MATLAB. GPermiten el paso de parmetros.

La instruccin WHILE
GBucle controlado por una condicin. GSintaxis: while condicin instrucciones end GLas instrucciones se repiten mientras la condicin se verifique.

La instruccin FOR
GBucle que se repite un nmero de veces. GSintaxis: for x = array instrucciones end GLas instrucciones se ejecutan una vez para cada columna en el array. G Podemos anidar sentencias for.

La instruccin IF
GBifurcacin condicional. GSintaxis: if condicin instrucciones end GLas instrucciones se realizan si la condicin se verifica.

Operadores lgicos y relacionales


G Operadores de comparacin: Mayor, menor Mayor o igual Menor o igual Igual Distinto G Operadores lgicos: Conjuncin & Disyuncin | O exclusiva xor Negacin ~ Nota: ~ es [Alt] + 126

<, > >= <= == ~=

Archivo pfijo.m
function a = pfijo(fun,x0,tol,maxiter) % Aproxima por el mtodo del punto fijo una raz de la ecuacin fun(x)=x %cercana a x0, tomando como criterio de parada abs(fun(x)-x)<tol o la cota sobre % el numero de iteraciones dada por maxiter. % % Variables de entrada: % fun(x): funcin a iterar, se debe introducir con notacin simblica (eg. 'g') % x0: estimacin inicial para el proceso de iteracin % tol: tolerancia en error absoluto para la raz % maxiter: mximo numero de iteraciones permitidas % % Variables de salida: % a: valor aproximado de la raz fprintf(1, 'Mtodo del punto fijo \n'); incr=1;iter=1; while (incr>tol) & (iter<maxiter) a = feval(fun,x0); % Itera la funcin g incr = abs(a-x0); % Calcula la variacin fprintf(1, 'iter= %i, a= %x0, incr= %e \n', iter, a, incr); iter = iter + 1; x0 =a; % Cuenta los pasos y actualiza x0

end;

% Salida

También podría gustarte