Академический Документы
Профессиональный Документы
Культура Документы
Anlisis Numrico
(Aplicaciones con MATLAB)
Fundamentos
de MATLAB
pi Nmero = 3,1415926
exp(1) Nmero e = 2,7182818
Inf Infinito (por ejemplo 1/0)
NaN Indeterminacin (por ejemplo 0/0)
realmin Menor nmero real positivo utilizable
realmax Mayor nmero real positivo utilizable
>> (1-5i)*(1-i)/(-1+2i)
ans =
-1.6000 + 2.8000i
Nmeros aleatorios: MATLAB proporciona la funcin rand
para generar nmeros aleatorios distribuidos uniformemente
y la funcin randn para generar nmeros aleatorios
distribuidos normalmente.
rand Devuelve un nmero decimal aleatorio distribuido uniformemente
en el intervalo [0,1]
rand(n) Devuelve una matriz de dimensin nxn cuyos elementos son
nmeros decimales aleatorios distribuidos uniformemente en el
intervalo [0,1]
rand(m,n) Devuelve una matriz dimensin mxn cuyos elementos son
nmeros decimales aleatorios distribuidos uniformemente en
intervalo [0,1]
randn Devuelve un nmero decimal aleatorio distribuido segn una
normal de media 0 y varianza 1
randn(n) Devuelve una matriz de dimensin nxn cuyos elementos son
nmeros decimales aleatorios distribuidos segn una normal de
media 0 y varianza 1
randn(m,n) Devuelve una matriz de dimensin mxn cuyos elementos son
nmeros decimales aleatorios distribuidos segn una normal de
media 0 y varianza 1
Operadores aritmticos: Existen en MATLAB dos tipos de
operaciones aritmticas: las operaciones aritmticas
matriciales, que se rigen por las reglas del lgebra lineal, y las
operaciones aritmticas con vectores, que se realizan
elemento a elemento:
e t dt Loga
a et t a 1dt x, a
gamma (A) 1 x t a 1
gammainc(X,A) 0
a 0
gammaln Funcin gamma gamma incompleta Log de gamma
(A y X vectores)
beta(Z,W) z w
z, w 1 t w1 t z 1dt I x z , w 1 t t z 1dt
1 1 x
w 1
betainc(X,Z,W) 0 z w z , w 0
betaln(X,Z,W) Funcin Beta Log z, w Beta incompleta
1
Funciones elpticas de Jacobi u
[SN,CN,DN] = d
ellipj(U,M) 0
1 m sin
2
0 1 t 2
dt 0
1 t2 /2
k m d F / 2, m
1 1
0 1 mt 2
dt 0
1 m sin 2
erf(X) =
erf x
2
t 2
funcin de error e dt 2 FN 0,1 / 2, ( x)
erfc(X) = 0 F = dist. normal
erfcx e t dt 1 erf x
complementaria de 2
2
funcin de error
erfcx(X) =
x
erfcxx e erfcx
complementaria de 1 1
x2
escalada de error x
x erfinv y y erf x
erfinv(X) =
inversa de error
e 1
expint(X)
Exponencial integral expint(x) = x t
dt
factorial(n) Funcion factorial n! nn 1n 23.2.1
P = legendre(n,X) Funciones asociadas de Legendre
x con P x x n n
1
2
Pm.n x 1 1 x
m 2 m/2 m
S =Legendren(n,X,sch)
Pn n
n!2 n
Funciones de Smith seminormalizadas
S m , n x 1 2n m !/ n m ! Pm , n x m 0
m 1/ 2
pow2(Y) 2y
pow2(F,Y) f*2y
[N,D] = rat(X) Devuelve los arrays N y D tales que N./D aproxima X
S = rats(X) con una tolerancia por defecto de 1.e-6*norm(X(:),1)
Devuelve X en formato racional
Funciones de anlisis de datos y anlisis estadstico
Anlisis de datos
cumprod(A) Vector de productos acumulados de las columnas de la matriz A
cumprod(A,2) Vector de productos acumulados de las filas de la matriz A
max(A) Vector con los valores mximos de las filas de la matriz A
max(A,[ ], 2) Vector con los valores mximos de las columnas de la matriz A
max(A,B) Matriz con los mximos de los trminos correspondientes de A y B
mean(A) Vector con las medias de las columnas de la matriz A
mean(A,2) Vector con las medias de las filas de la matriz A
median(A) Vector con las medianas de las columnas de la matriz A
median(A,2) Vector con las medianas de las filas de la matriz A
min(A) Vector con los valores mnimos de las filas de la matriz A
min(A,[ ],2) Vector con los valores mnimos de las columnas de la matriz A
min(A,B) Matriz con los mnimos de los trminos correspondientes de A y B
std(A) Vector con las cuasidesviaciones tpicas de las columnas de A
std(A,1) Vector con las desviaciones tpicas de las columnas de la matriz A
std(A,0,2) Vector con las cuasidesviaciones tpicas de las filas de la matriz A
std(A,1,2) Vector con las desviaciones tpicas de las filas de la matriz A
var(A) Vector con las cuasivarianzas de las columnas de la matriz A
var(A,1) Vector con las varianzas de las columnas de la matriz A
var(A,W) Vector con las varianzas de las columnas de la matriz A ponderados
por las frecuencias absolutas incluidas en el vector W
sum(A) Vector con las sumas de las columnas de la matriz A
sum(A,2) Vector con las sumas de las filas de la matriz A
perms(V) Matriz cuyas filas son las posibles permutaciones de los n
elementos del vector fila V
primes(n) Genera un vector con los nmeros primos menores o iguales que n
factor(n) Genera un vector con los factores primos de n
prod(V) Producto de los elementos del vector V
prod(A) Vector cuyos elementos son los productos de las columnas de A
prod(A,2) Vector cuyos elementos son los productos de las filas de la matriz A
sort(V) Ordena los elementos de V en orden ascendente
sort(A) Ordena cada columna de la matriz A
sort(A,2) Ordena cada fila de la matriz A
sortrows(A) Ordena las filas A como un grupo en orden ascendente
sortrows(A,V) Ordena la matriz A segn los nmeros de columna del vector V
Diferencias finitas
del2(U) Laplaciana discreta del vector U (d2u/dx2 + d2u/dy2)/4
del2(U,h) Laplaciana discreta del vector U con intervalo h
del2(U,hx,hy) Laplaciana discreta del array rectangular U con interv. hx y hy
del2(U,hx,hy,) Laplaciana discreta del array multidimensional U con interv. h
FX = Gradiente numrica de la matriz F en la direccin de la columna
gradient(F) x (dF/dx)
[FX,FY] = Gradiente numrica de la matriz F en las direcciones de la
gradient(F) columna x (dF/dx) y de la fila y (dF/dx)
[Fx,Fy, Fz,] = Gradiente numrico de la matriz F en las direcciones de la
gradient(F) todas las componentes (dF/dx, dF/dx, dF/dz, )
Y = diff(F) Vector de diferencias del vector X. Si X es una matriz diff(X)
devuelve los vectores de diferencias por filas
Y = diff(F,n) Diferencias sucesivas de orden n
Correlacin
corrcoef(X) Matriz de correlaciones, donde X es una matriz cuyas columnas
son variables y cuyas filas son los valores de estas variables
corrcoef(x,y) Coeficiente de correlacin de los vectores columna x e y
cov(X) Matriz de covarianzas, donde X es una matriz cuyas columnas
son variables y cuyas filas son los valores de estas variables
cov(x,y) Covarianza de los vectores columna x e y
Lmites y Continuidad
>> syms x a
>> limit(sin(x)/x,x,0)
ans =
1
Derivadas e Integrales
>> syms x
>> int((x^3+5*x^2-4)/(x^2))
ans =
(x^3 + 10*x^2 + 8)/(2*x)
>> syms x
>> f=(exp(-x)*sin(x))/x;
>> int(f,0,inf)
ans =
pi/4
Ecuaciones Diferenciales
En MATLAB para describir una ecuacin diferencial, la
primera derivada se escribe como Dy y la segunda derivada
como D2y. Por ejemplo la solucin de la ecuacin diferencial
d2y(t)/dt2 + y(t) = 4; usando la instruccin dsolve, es:
>> y=dsolve('D2y+y=4')
y=
C5*cos(t) + C6*sin(t) + 4
0.8
A continuacin se presenta
un grfico de barras definidas 0.6
0.2
0
-3 -2 -1 0 1 2 3
Grfico de errores para la funcin
de densidad de una distribucin 0.6
normal (0,1), entre -4 y 4, siendo 0.5
definidos los errores por 40
0.4
valores aleatorios uniformes
(0,10): 0.3
0.2
>> x=-4:.2:4;
0.1
>> y=(1/sqrt(2*pi))*exp(-(x.^2)/2);
>> e=rand(size(x))/10; 0
la siguiente sintaxis:
>> x=0:0.05:10; 0.2
>> y=sin(x).*exp(-0.4*x);
>> plot(x,y) 0
0.5
Grfico sobre los mismos ejes de las
curvas sen(x), sen(2x) y sen(3x);
0
usando trazos diferentes, mediante la
siguiente sintaxis:
-0.5
>>fplot('[sin(x),sin(2*x),sin(3*x)]',[0,2*pi])
-1
0 1 2 3 4 5 6
90 0.5
120 60
>> t=0:0.1:2*pi;
>> r=sin(2*t).*cos(2*t); 210 330
>> polar(t,r)
240 300
270
1
Funcin compleja :
0.8
0.4
0.2
p=0:0.05:8*pi; Im(z)
0
z=(cos(p)+i*sin(2*p)).*exp(-
0.05*p)+0.01*p; -0.2
plot(real(z),imag(z)) -0.4
xlabel('Re(z)');ylabel('Im(z)') -0.6
-0.8
-1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Re(z)
Ttulos, Etiquetas y Texto en Grficos
>> x=0:0.01:3;
>> y=abs(exp(-0.5*x).*sin(5*x)); normal logaritmica
0
>> subplot(2,2,1) 1 10
>> plot(x,y)
-2
>> title('normal') 0.5 10
>> hold on
>> subplot(2,2,2) -4
0 10
>> loglog(x,y) 0 1 2 3 10
-2
10
0
10
2
3
10
exp(t.*t)
2
10
1
10
0
10
0 0.5 1 1.5 2 2.5 3
t
k
Grfico de Relacin de Presin Vs. Nmero P0 k 1 2 k 1
de Mach. M
P 2
Se recomienda generar un archivo M:
Relacion de Presion, P(estancamiento)/P(estatica)
clear;clf;hold off; 1.9
M=[0:0.01:1]';
k=1.4; 1.8
rp=(1+(k-1)/2*M.^2).^(k/(k-1)); 1.7
hold on
axis('square'); 1.6
compresible
plot(M,rp) 1.5
Po/P
xlabel('M,numero de Mach')
ylabel('Po/P') 1.4
title('Relacion de Presion,
1.3
P(estancamiento)/P(estatica)')
text(0.45,1.55,'compresible') 1.2
Mb=[0:0.01:0.7]';
1.1 Incompresible
rpb=1+k/2*Mb.^2;
plot(Mb,rpb,'--') 1
0 0.2 0.4 0.6 0.8 1
text(0.5,1.1,'Incompresible') M,numero de Mach
Grfico de Lneas 3D:
Grfico de la hlice paramtrica 40
x(t) = sen(t), y(t) = cos(t), z(t) = t,
30
para valores de t entre 0 y 10
separados /50: 20
10
>> t=0:pi/50:10*pi;
0
>> plot3(sin(t),cos(t),t) 1
1
>> grid on 0
0
>> axis square
-1 -1
>> X=linspace(0,1,10);
>> Y=X./2;
>> Z=sin(X)+cos(Y);
>> stem3(X,Y,Z,'fill')
Superficies Explcitas, Paramtricas y Lneas de Contorno
z
Sen x 2 y 2 1
x2 y 2 0.5
>> [X,Y]=meshgrid(-7.5:0.5:7.5);
0
>> Z=sin(sqrt(X.^2+Y.^2))./sqrt(X.^2+Y.^2);
>> meshc(X,Y,Z) -0.5
10
10
0 5
0
-5
-10 -10
>> [X,Y]=meshgrid(-7.5:0.5:7.5); 1
>> Z=sin(sqrt(X.^2+Y.^2))./sqrt(X.^2+Y.^2);
0.5
>> surf(X,Y,Z)
0
-0.5
10
10
0 5
0
-5
-10 -10
Curvas de nivel bidimensional y tridimensional para el grfico del
ejemplo anterior 30
25
20
>> [X,Y]=meshgrid(-7.5:0.5:7.5);
15
>> Z=sin(sqrt(X.^2+Y.^2))./sqrt(X.^2+Y.^2);
>> contour(Z) 10
5 10 15 20 25 30
>> [X,Y]=meshgrid(-7.5:0.5:7.5); 1
>> Z=sin(sqrt(X.^2+Y.^2))./sqrt(X.^2+Y.^2);
0.5
>> contour3(Z,50)
0
-0.5
30
30
20
20
10 10
Grfica de un cilindro en coordenadas
paramtricas siguientes: x(t)=t, 4
y(t)=Sen(t), z(t)=u cuando t varia en
[0.2] y u varia en [0.4]. 3
>> t=(0:0.1:2*pi)';
1
>> r=(0:0.1:4);
>> X=sin(t)*ones(size(r)); 0
1
>> Y=cos(t)*ones(size(r)); 1
0 0.5
>> Z=ones(1,size(t))'*r; -0.5
0
>> mesh(X,Y,Z) -1 -1
Z xe 1
0
>> [X,Y]=meshgrid(-2:.2:2,-2:.2:3);
>> Z=X.*exp(-X.^2-Y.^2); -1
>> contour(X,Y,Z,50)
-2
-2 -1 0 1 2
1
0.2
>>t=0:pi/10:2*pi; 0
>>cylinder(2+cos(t)); 5
5
>>axis square 0
0
-5 -5
0.5
Evaluacin y Grfica de la funcin
en el rango [-2 , 2]; [-2, 2]:
x2 y 2 0
f ( x, y) xe
-0.5
>> [x,y]=ndgrid(-2:.2:2,-2:.2:2); 30
30
20
>> z=x.*exp(-x.^2-y.^2); 10
20
10
>> mesh(z) 0 0