Está en la página 1de 12

%% Curso MatLab basico %%

% UNIVERSIDAD
% "LOYOLA"
% 2014

%% MATRICES Y VECTORES %%
% Introduccion.

%% Asignacion de matrices

a=[1 2 3 4 5] % Asignacion directa de una matriz [1 x n]
% Una fila por "n" columnas
a1=[1,2,3,4,5]
a(1,2) % manejo de los componentes de una matriz con indices numerados
desde 1(fila,columna)
b=[1;2;3;4;5] % creamos una matriz [m x 1]
% Una Columna por "m" filas

x=[7 4 1] % definimos una matriz
a=[x;x] % Matrix remplazando valores definidos en una variable
b=a' % la comilla simple transpone una matriz
c=[1 2 3 4 5;6 7 8 9 0]
d=c(:,1) % asigna a d la fila sealada por n en la forma c(:,n)
e=c(1,:) % asigna a e la columna sealada por m en la forma c(m,:)
c(:,2)=[] % elimine la segunda columna de c
c(:,3)=[0;0] % remplaza la columna sealada por la matriz definida
c(2,:)=[2 2 2 2] % remplaza la fila sealada por la matriz definida

%% Asignacion indirecta de matrices

X=[1 5 3 9 7 15;5 1 8 0 3 16]
P=[2 5 12] % VECTOR Q DIRECCIONA AL VECTOR X
T=X(P) % T contiene los elementos indicados en P del vector X
Y=[4 12 67;-96 78 32;-6 3 18]
Q=[1 3] % vector para direccionar las filas en el vector Y
R=[2 1] % vector para direccionar las columnas en el vector Y
S=Y(Q,R) % S contiene las filas 1 y 3 y las columnas 2 y 1 del vector Y

%% Matrices especiales

A=ones(5) % matriz iniciada con unos de 5x5
A=ones(4,8) %matriz iniciada con unos de (m x n)
A=zeros(6) % matriz iniciada con ceros 6x6
A=zeros(7,8) % matriz iniciada con ceros de (m x n)
A=eye(5) % matriz identidad 5x5
A=magic(6) %matriz de cubo magico de 6x6
A=hilb(4) %matriz de hilberth de 4x4
X=[3,5,1,8]
A=vander(X) %matriz de vandermonde usando al vector X
A=[] % matriz vacia
A=rand(4,5) % matriz de numeros aleatorios de (m x n)

%% Operaciones con matrices

a=[3 5 7;2 4 6]
b=[10 8 7; 12 65 -5]
c=a+b % suma de matrices
c=a-b %diferencia de matrices
c=a*b' % producto de matrices
c=a.*b % producto elementeo por elemento de matrices
c=2*a % producto escalar por vector
d=a^2 % matriz al cuadrado equivalente de a*a
d=a.^2 % matriz elevando al cuadrado elemento a elemento
d=a==b % compara igualdad entre matrices del mismo tamao, en resultado
binario donde la igualdad esta represenada por 1
d=a~=b % compara desigualdad en matrices con resultado binario de
desigualdad en 1
d=a<3 % compara si cada elemento de la matriz es menos al numero asignado

%% Funciones para operar con matrices

Z=[6 33 2;7 8 -3;5 -4 -7]
[m,n]= size(Z) %tamao de la matriz Z
isempty(Z)% analisa si un vector o matriz esta vacio
any(Z) % analisa si un vector o matriz esta vacio pero por columnas de la
matriz
[f,c]=find(Z) % obtiene los indices de filas y columnas de la matriz
cuyos elementos no sean cero
k=rank(Z) % rango de Z
t=trace(Z) % traza de Z
d=det(Z) % determinante de Z
i=inv(Z) % inversa de Z
h=norm(Z,1)
c=cond(Z) % numero de condicion de la matriz
help matfun
%% Funciones adicionales para manejo de matrices

AB=[4 5 6;24 12 4;-3 5 -1]
BC=max(AB) % muestra el mayor valor por columna de la matriz AB
BC=sum(AB) % suma de componentes por culumnas da la matriz AB
BC=prod(AB) % producto escalar por columnas
BC=cumsum(AB) % suma acumulada por columnas
BC=cumprod(AB) %producto acumulado
BC=mean(AB) % media aritmetica por columnas
BC=median(AB) % mediana por columnas
BC=std(AB) % desviacion estandar por columnas
T=sort(AB) % ordena de manera ascendente las columnas de la matriz AB
T=dsort(AB) % ordena de manera descendente la matriz AB


%% Curso MatLab basico %%
% UNIVERSIDAD
% "LOYOLA"
% 2014

%% MATEMATICA SIMBOLICA Y NUMERICA %%
% Introduccion.

%% Entorno de trabajo Symbolic math toolbox

syms x y % define variables simbolicas independientes
syms w z real % especifica que las variables deben ser reales
syms x y clear %borra las variables sealadas
syms f(x,y) % crea una funcion f(x,y) dependiente de las variables
simbolicas admitidas
f(x,y)=(x*y^2/x) %muestra la funcion dependiente de (x,y)
f(2,3) % asigna valores respectivos de 2 y 3 a x e y, remplaza y calcula
la solucion
syms f(alpha,betha,tetha,iota)
f(alpha,betha,tetha,iota)=[alpha*betha,tetha;tetha/iota,alpha*2*iota] %
crea matrices simbolicas
f(2.5,4,1.5,8)
syms f(x,y)
f(x,y)=[x + y, sin(x)*cos(y); x^3 - y^3, exp(x*y^2)]

%% Algebra

syms % define variables dependientes
factor % factoriza una expresion
expand % expande al maximo una expresion
simplify % simplifica al maximo una expresion
pretty % imprime un formato agradable de expresion
symvar % muestra las variables simbolicas de una expresion
subs % substitucion simbolica
compose % composision funcional
finverse % calculo de la funcion inversa
solve % solucionador de sistemas de ecuaciones

% algebra simbolica
syms a b c
A1=((a+b+c)/(2*(a*b*c)))+((a+2*b+3*c)/(2*(a*b*c)))+((a^2+b+(b*c))/(2*(a*b
*c)))
sol=factor(A1)
pretty(sol) % visualiza (sol) de forma comnvencional de escritura
matematica
syms x
A2=(x-2)*(x-4)
expand(A2) % expande la expresion algebraica a su maximo
syms a b c
A3=log((a^2*b^2)/c^2)
expand(A3, 'IgnoreAnalyticConstraints', true)
syms x a b c
A4=sin(x)^2 + cos(x)^2
simplify(A4) %simplifica a la maxima expresion
A5=exp(c*log(sqrt(a+b)))
simplify(A5)
syms x
A6=[(x^2 + 5*x + 6)/(x + 2), sin(x)*sin(2*x) + cos(x)*cos(2*x);
(exp(-x*2)*2)/2 - (exp(x*2)*2)/2, sqrt(16)]
simplify(A6)
syms x
A7 = (log(x^2 + 2*x + 1) - log(x + 1))*sqrt(x^2);
simplify(A7)
simplify(A7, 'IgnoreAnalyticConstraints', true)

syms x;
primera_funcion = x^2;
segunda_funcion = x^3+1;
f2_o_f1 = compose(segunda_funcion, primera_funcion)
f1_o_f2 = compose(primera_funcion, segunda_funcion)
pretty(expand(f1_o_f2))

uno= sym( ' 3*x + 2*y -z = 10 ' ) ;
dos= sym ( ' -x + 3*y + 2 * z = 5');
tres= sym ( ' x -y -z = -1 ' ) ;
[x , y , z] =solve (uno , dos, tres)

ec='x+(25-x^2)^(1/2)=7'; % este tipo de ecuaciones no sequieren de
declaracion de variable simbolica
solve (ec)


%% ejercicio 1 libro matematicas pag 87 ejercicio 4

A=sym('(a*(b-c)^2/((c-a)*(a-b)))')
B=sym('(b*(c-a)^2/((a-b)*(b-c)))')
C=sym('(c*(a-b)^2/((b-c)*(c-a)))')

B1=expand(A)
simplify(A)
pretty(B1)
B2=expand(B)
pretty(B2)
B3=expand(C)
pretty(B3)

A1=expand(B1+B2+B3)
pretty(A1)
X=factor(A1)

%% ejercicio 2

syms a b
E1=a^2*(a-b)+a*b*(a-b)
E2=a^2*(a^2-b^2)
E11=factor(E1)
E21=factor(E2)
Esol=simplify(E11/E21)

%% ejrcicio 3 pag 86 ejericcio 2
syms x a b
T=(((x-1)/(x+1))-((x+1)/(x-1)))/(((x+1)/((x-1)))+((x-1)/(x+1)))
factor(T)
U=((x^2+1)/(2*a^2-2*b^2))
W=((x)/(b^2-a^2))
pretty(T), pretty(U),pretty(W)
sol=(((T)*(U))/(W))
SOL=factor(sol)


%% Curso MatLab basico %%
% UNIVERSIDAD
% "LOYOLA"
% 2014

%% MATEMATICA SIMBOLICA Y NUMERICA %%
% Introduccion.

%% Limites

% indeterminaciones en MatLab son presentadas como NaN

0/0
inf/inf
0*inf
inf^0
inf-inf
1^inf
0^0

syms x y a b c h
expr= (sen(x)/(7-cos(x)))
limit(expr,x,a)
limit(expr,a)
limit(expr)
limit(expr,x,a,'left')
limit(expr,x,a,'right')

syms x h
limit(sin(x)/x)
limit((sin(x + h) - sin(x))/h, h, 0)

syms x
limit(1/x, x, 0, 'right')
limit(1/x, x, 0, 'left')

syms x f(x)
f(x)=(x^2+3*x-10)/(x-2)
pretty(f(x))
limit(f(x),x,2)

g=((log(1-x))/(x))
pretty(g)
limit(g,x,0)

h=(x-sin(5*x))/(x-sin(3*x))
pretty(h)
limit(h,x,0)

l=(sin(x))/(6*x)
pretty(l)
limit(l,x,0)

syms x h
f=((x+h)^2 - (x^2) )/(h)
pretty(f)
limit(f,h,0)
g=((sqrt(x^2-4*x+3))-x)
pretty(g)
limit(g,x,-inf)


syms x
f=(((1+x)^(1/2))-((1+x)^(1/4)))/x
pretty(f)
limit(f,x,0)

syms x a
T=((sqrt(1+sin(x)))-(sqrt(1+tan(x))))/(x)
h=(cos(x))^(1/x)
g=(sin(x)-sin(a))/(x-a)
s=(1+3*x)^(1/x)
r=(((a+x)^(n))-((a)^(n)))/(((a+x)^(m))-((a)^(m)))


%% Curso MatLab basico %%
% UNIVERSIDAD
% "LOYOLA"
% 2014

%% MATEMATICA SIMBOLICA Y NUMERICA %%
% Introduccion.

%% Derivadas

diff % codigo para derivar por medio de matlab

f=sym('4*x^2-9*x^3+6^3')
derivada=diff(f)

syms x
f=(x^6)
diff(f,3) % deriva 3 veces la funcion especificada.
syms x
f=(x^2+6*x-12*x^3+sin(x)-220124)
derivada=diff(f)
pretty(derivada)

syms x y z
g=(x^3+y^3+z^3)
derivada=diff(g)
derivada1=diff(g,y)
derivada2=diff(g,z)

f=(sin(x))/(x^4)
pretty(f)
f1=diff(f)
factor(f1)
% derivacion implicita

syms x y
f=x^3+y^3-6*x*y
yprima=-diff(f,x)/diff(f,y)

%% Curso MatLab basico %%
% UNIVERSIDAD
% "LOYOLA"
% 2014

%% MATEMATICA SIMBOLICA Y NUMERICA %%
% Introduccion.

%% Integrales

% infefinidas

int % codigo de integracion

syms x
f=x
integral=int(f)
pretty(integral)

syms x z
G=x/(1 + z^2)
int(G, x)
int(G, z)

syms x y
G=((sin(x))^2)*((cos(x))^3)
integral=int(G)
pretty(integral)
expand(integral)
pretty(ans)

syms x
F=(5*x-14)/((x^2) - 5*x + 4)
G=(1)/((4*sin(x)) + (3*cos(x)) + 5)
int(F)
pretty(ans)

% Integrales definidas

F=(x^2)
int(F,x,4,1)

syms x t
int(x^t, x, 'IgnoreSpecialCases', true)
int(1/(x - 1), x, 0, 2, 'PrincipalValue', true)
int(taylor(F, x, 'ExpansionPoint', 0, 'Order', 10), x)
int(acos(sin(x)), x, 'IgnoreAnalyticConstraints', true)


%% Curso MatLab basico %%
% UNIVERSIDAD
% "LOYOLA"
% 2014

%% MATEMATICA SIMBOLICA Y NUMERICA %%
% Introduccion.

%% Graficas

% Graficas 2D
% Funciones de la forma y = f(x)
x=0:pi/100:2*pi
x=linspace(0,2*pi,200);
y = sin(x);
plot(x,y)

x=-3:.01:3;
y=x.*exp(-x.^2);
plot(x,y)
plot(x,y,'r*')
axis([-2 2 -1 1])
zoom

x=linspace(0,2*pi,300);
y=sin(x);
z=sin(x+pi/3);
plot(x,y,'r-',x,z,'g--'),grid on

x=linspace(-3,3,500);y=exp(-x.^2);z=2*exp(-x.^2);
plot(x,y,'-',x,z,'--') % dibujamos dos funciones
title('Campanas de Gauss')
xlabel('Eje de Abscisas') % Etiqueta el eje horizontal
ylabel('Eje de Ordenadas') % Etiqueta el eje vertical
legend('exp(-x^2)', '2*exp(-x^2)') % Pone una leyenda
gtext('texto')
[x,y]=ginput(N)

x=1:7
x>4
(2<x)&(x<=6)

x=linspace(-2,3,3000);
y=(x.^2).*(x<0)+1.*((0<=x)&(x<1))+(-x+2).*(1<=x);
plot(x,y,'.'),grid on,title('Funcion definida a trozos')

% Curvas en parametricas

t=linspace(-5,5,1000);
plot((t.*(t.^2-1))./(t.^2+1),(2*(t.^2-1))./(t.^2+1))
comet((t.*(t.^2-1))./(t.^2+1),(2*(t.^2-1))./(t.^2+1))
t=linspace(0,2*pi,20);
quiver(cos(t),sin(t),-sin(t),cos(t)),axis square


% Curvas en polares

tetha=linspace(-pi,pi,100);
r=2-4*cos(tetha);
polar(tetha,r)

% Cambios de coordenadas polares-cartesianas

[x,y]=pol2cart(theta,r);
[theta,r]=cart2pol(x,y);

%GRAFICAS 3D

% Curvas en el espacio

t=linspace(0,8*pi,2000);
plot3(sin(t),cos(t),t),grid on
comet3(sin(t),cos(t),t)
t=linspace(0,8*pi,30);
quiver3(sin(t),cos(t),t,cos(t),-sin(t),t)

% Funciones de la forma z = f(x; y)

[x,y]=meshgrid(-2:.5:2);
z=exp(-x.^2-y.^2);
plot3(x,y,z)
mesh(x,y,z)
surf(x,y,z)
surf(x,y,z),shading flat %efecto de sombreado distinto

% Manipulacion de graficos 3D

[x,y]=meshgrid(0:.1:1,0:.1:3);
[x,y]=meshgrid(linspace(-1,1,50));
z=cos((x.*y)./(x.^2+y.^2+1));
surf(x,y,z),colorbar

[x,y]=meshgrid(-2:.1:2);
z=x.^2+y.^2;
contour(x,y,z,10) % dibuja 10 curvas de nivel
contour3(x,y,z,10) % lo mismo, pero en el espacio
pcolor(x,y,z),colorbar
contour(x,y,z,10)
cs=contour(x,y,z,30);
clabel(cs) % etiqueta algunas aleatoriamente
clabel(cs,'manual') % nos permite elegirlas con el raton

%Funciones complejas en graficos

z=cplxgrid(12);
cplxmap(z,z.^2)


%% Curso MatLab basico %%
% UNIVERSIDAD
% "LOYOLA"
% 2014

%% MATEMATICA SIMBOLICA Y NUMERICA %%
% Introduccion.

%% Matematica Avanzada

% Transformada De Laplace

laplace % laplace(Funcion,variable_de_transformada,puntos_de_evaluacion)

syms x y
f = 1/sqrt(x);
laplace(f, x, y)

syms a t y
f = exp(-a*t);
laplace(f, y)
laplace(f)

syms t s
laplace(dirac(t - 3), t, s)
laplace(heaviside(t - pi), t, s)

syms f(t) s
F = laplace(f, t, s)

% transformada inversa de laplace

ilaplace % codigo de transformada inversa

syms x y
F = 1/y^2;
ilaplace(F, y, x)

syms a s x
F = 1/(s - a)^2;
ilaplace(F, x)
ilaplace(F)

syms s t
ilaplace(1, s, t)
ilaplace(exp(-2*s)/(s^2 + 1) + s/(s^3 + 1), s, t)
syms F(s) t
f = ilaplace(F, s, t)
laplace(f, t, s)

% Transformada Z

ztrans % codigo de tranzformada sintaxis y tratamiento ...
ztrans(f,trans_index,eval_point)

syms k x
f = sin(k);
ztrans(f, k, x)

syms a n x
f = a^n;
ztrans(f, x)
ztrans(f)


syms n z
ztrans(heaviside(n - 3), n, z)

% transformada inversa z

iztrans % funcion encargada de realizar la transformada inversa de Z

syms k x
F = 2*x/(x - 2)^2;
iztrans(F, x, k)

syms z a k
F = exp(a/z);
iztrans(F, k)
iztrans(F)

syms n z
iztrans(1/z, z, n)
iztrans((z^3 + 3*z^2 + 6*z + 5)/z^5, z, n)

% Transformada De Fourier

fourier % Sintaxis de la funcion que nos entrega la transformada de
fourier.... fourier(f,trans_var,eval_point)

syms x y
f = exp(-x^2);
fourier(f, x, y)

syms x t y
f = exp(-x^2)*exp(-t^2);
fourier(f, y)
fourier(f)

syms t w
fourier(t^3, t, w)

syms t0
fourier(heaviside(t - t0), t, w)
assume(x,'real')
f = exp(-x^2*abs(t))*sin(t)/t;
fourier(f, t, w)

% transformada inversa de fourier

ifourier %codigo y funcion de la transformada inverza de fourier
ifourier(F,trans_var,eval_point)

syms x y
F = sqrt(sym(pi))*exp(-y^2/4);
ifourier(F, y, x)

syms a w t real
F = exp(-w^2/(4*a^2));
ifourier(F, t)
ifourier(F)

syms t w
ifourier(dirac(w), w, t)
ifourier(2*exp(-abs(w)) - 1, w, t)
ifourier(1/(w^2 + 1), w, t)

También podría gustarte