Documentos de Académico
Documentos de Profesional
Documentos de Cultura
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
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
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
GValor de p en x:
polyval(p,x)
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
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
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
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.
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