Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
book-website.com
Material de consulta, para los estudiantes del curso de Métodos Numéricos de acuer-
do al sílabus diseñado por la Facultad de Ciencias e Ingeniería de la Universidad de
ciencias y Humanidades.
Profesor
Marlo Carranza Purca
Lima - Perú
Marzo -2014
i
Índice general
1. Introducción al Matlab 2
1.1.1. Formato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.2. Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.5. Polinomios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
ii
iii
1.10. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Introducción
Entre otras de las ventajas que nos brindan los métodos numéricos, esta el ahorro
de recursos, por ejemplo, personal dedicados al cálculo, en instalaciones de ensayo,
donde el tiempo de cálculo ha sido tremendo. En segundo lugar, los métodos
numéricos y la simulación, en general, permiten realizar ensayos virtuales y probar
prototipos, incluso en condiciones extremas sin peligro y con un costo reducido. Si
bien la simulación no puede acabar con los estudios teóricos ni con la
experimentación, no cabe duda de que los complementa y nos ayuda a comprender
mejor la naturaleza.
Entonces podemos decir que los métodos numéricos tienen la ventaja de ofrecer
una solución a problemas muy complejos que no pueden resolverse analíticamente,
y en un entorno controlado de difícil manipulación experimental, pero tal vez su
debilidad esta, que es necesaria la capacidad critica para valorar los resultados
numéricos a pesar de que puedan ser muy vistosos y espectaculares hay que elegir
el apropiado pues podríamos llegar a resultados totalmente erróneos.
1
Marlo Carranza Purca
1 Introducción al
Matlab
2
Marlo Carranza Purca
1.1. Operaciones con variables 3
6. clear , borra todas las variables del espacio de trabajo, pero no la ventana de
trabajo.
7. clear x,y, borra solo las variables x, y del espacio de trabajo, pero no la
ventana de trabajo.
Además hay algunas variables y constantes especiales que se utilizan por defecto:
Adición + Potenciación ^
Multiplicación * División /
Ejemplo 1.
1.1.1. Formato
Ejemplo 2.
1.1.2. Variables
Ejemplo 3.
Matlab no hace diferencia si las variables son enteras reales o de doble precisión,
como suele ocurrir en otros lenguajes de programación como Pascal, C, C ++ o
Java entre los más destacados.
Matlab tiene definidos diversos tipos de funciones, todas ellas clasificadas según el
objeto o tipo de problema a resolver, los detalles de estas se irán desarrollando en
el transcurso de las siguientes páginas. Veamos una lista de las funciones
elementales mas usadas.
Ejemplo 4.
sen2 x + cos2 x = 1
>> x=0; r = 1
>> r=sin(x)^2+cos(x)^2
r =1 >> x=25;
>> r=sin(x)^2+cos(x)^2
>> x=1; r =1
>> r=sin(x)^2+cos(x)^2
Ejemplo 5.
Veamos, se tiene :
>> z=3+4*i 3
z =
3.0000 + 4.0000i >> Anglo=angle(z)
Anglo =
>> conjugada=conj(z) 0.9273
conjugada =
3.0000 - 4.0000i >> modulo=abs(z)
modulo =
>> Real=real(z) 5
Real =
Ejemplo 6.
>> z=1+i
z =
1.0000 + 1.0000i
>> theta=angle(z);
>> modulo=abs(z);
>> w=modulo*exp(theta*i)
w =
1.0000 + 1.0000i
Definición 1.
Notación 1.1.
Definición 2.
A + B = (cij )m,n
i,j=1 con cij = aij + bij
4. A es simétrica si A = AT .
Definición 3.
Teorema 7.
1. tra(AB) = tra(BA)
4. det(λA) = λn det(A)
Ejemplo 8.
>> a=[1 2 3 4 5 ]
>> u=1:5
a =
u =
1 2 3 4 5
1 2 3 4 5
para indicar la n-ésima compo-
nente de vector escribimos 3. Usaremos linspace para gene-
rar un vector
>> a(3)
ans = >> a=linspace(1,5,5)
3 a =
1 2 3 4 5
Observe que se muestra el arre-
glo a como un vector fila con
5 columnas, además cada ele- 4. Pero también se pueden definir
mento puede ser separado por vectores columna
comas o espacios como el ejem-
plo mostrado. >> v=[1; 2; 3; 4; 5 ]
Si usted desea ver los primeros v =
m elementos del vector a escri- 1
bimos 2
3
>> a(1:3) 4
ans = 5
1 2 3
Matrices
Para generar matrices tenemos que introducir vectores fila de la misma dimensión,
fila por fila, se usa el punto y coma ; para separar las filas.
Ejemplo 9.
1 2 3 4
Generemos las matrices usando MatLab. A = 5 6 7 8
9 10 11 12
0 2 1 4
B = 5 0 1 0 tenemos
2 0 3 7
>> A=[1 2 3 4; 5 6 7 8; 9 10 11 12]
A =
1 2 3 4
5 6 7 8
9 10 11 12
>> B=[0 2 1 4; 5 0 1 0 ; 2 0 3 7]
B =
0 2 1 4
5 0 1 0
2 0 3 7
Operaciones
Ejemplo 10.
Ejemplo 11.
Operaciones a elementos
Ahora vamos a revisar las operaciones a elemento y vamos a ver las diferencias con
las operaciones ya vistas, pero antes veamos la tabla con la descripción de las
operaciones que vamos a utilizar.
Operación Símbolo
Multiplicación a elemento .*
Potenciación a elemento .^
División a elemento ./
Ejemplo 12.
Ejemplo 13.
Ejemplo 14.
Ejemplo 15.
Sea la matriz
Ejemplo 16.
A = 7 8 9 3 3 3
1 2 3
4 5 6 >> fil=[A ; B]
7 8 9 fil =
>> B=[1 1 1; 2 2 2; 3 3 3] 1 2 3
4 5 6
7 8 9
>> col=[A B] 1 1 1
col = 2 2 2
1 2 3 1 1 1 3 3 3
4 5 6 2 2 2
Ejemplo 17.
Podemos hacer una tabla usando matrices, para lo cual debemos escribir
s=[1 1]
s=[s;2 4]
s=[s;3 9]
s=[s;4 16]
se obtendrá
s =
1 1
2 4
3 9
4 16
s=[1 1];
for i=2:4
s=[s; i i*i];
end
s
Ejemplo 18.
Podemos hacer una tabla usando la instrucción strvcat , para lo cual debe-
mos escribir
s=’Resultados’
s=strvcat(s, num2str(1))
s=strvcat(s, num2str(2))
s=strvcat(s, num2str(3))
s=strvcat(s, num2str(4))
se obtiene la tabla
Resultados
1
2
3
4
s=’Resultados’;
for i=1:4
s=strvcat(s, num2str(i));
end
s
Ejemplo 19.
MatLat produce gráficos de dos y tres dimensiones, así como contornos y gráficos
de densidad. Se pueden representar los gráficos y listar los datos, permite el control
de colores, sombreado y otras características de los gráficos, también soporta
gráficos animados. Como podemos ver los gráficos producidos por MatLat tienen
muchas muy buenas características, inclusive son portables a otros programas
Estos gráficos se tratan como curvas que pasa por pares ordenados, pero
finalmente Matlab lo que hace es trazar una poligonal lineal que pasa por estos
puntos o pares ordenados.
Ejemplo 20.
5. hold Permite montar o sobreponer varios gráficos usando una sola ventana.
hold on para activar hold
hold off para desactivar hold
Ejemplo 21.
√
Graficar f (x) = x + 4x3 sen(x) en el intervalo [0, 5]
>> x=0:0.2:5;
>> y=sqrt(x)+4*x.^2.*sin(x);
>> plot(x,y)
Ejemplo 22.
>> x=-3:0.4:3;
>> y=exp(x)-x.*sin(x^2)+2;
>> plot(x,y,’rs:’)
>> x=-3:0.4:3;
>> y1=-x.*sin(x.^2)+2;
>> y2=abs(x)+4.*sin(x);
>> y3=x+0.3.*x.^3;
>> plot(x,y1,x,y2,x,y3);
>> title(’Gráfico de tres funciones’);
>> xlabel(’Eje x’);
>> ylabel(’Eje y ’);
>> legend(’-xsen(x^2)+2’,’abs(x)+4sen(x)’,’x+0.3x^3’);
Ejemplo 23.
>> x=linspace(-2*pi,2*pi,100);
>> y1=sin(x);
>> y2=cos(x);
>> plot(x,y1,’red’);
>> hold on;
>> plot(x,y2,’blue’);
>> title(’funciones: seno y coseno’);
>> legend(’ seno(x)’, ’cos(x)’);
>>x=linspace(-2,3,3000);
>>y=(x.^2).*(x<0)+1.*((0<=x)&(x<1))+(-x+2).*(1<=x);
Ejemplo 24.
>>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(’Función definida a trozos’)
Una vez que se ha realizado una gráfica, podemos necesitar conocer las
coordenadas de algunos puntos de la misma. Por ejemplo, el lugar aproximado en
el que están los máximos y mínimos, o si queremos añadir alguna recta o una
poligonal al dibujo. Para conseguir esto, se puede utilizar el comando ginput .
Escribiendo
[x, y] = ginput(N )
Ejemplo 25.
Efectuar una localización gráfica de los ceros de la función f (x) = ex (x2 −1)
en el intervalo [−5; 5]
x=linspace(-5,5,100);
>> y=exp(x).*(x.^2-1);
>> plot(x,y,’b’);
x=linspace(-5,5,100);
>> y=exp(x).*(x.^2-1);
>> plot(x,y,’b’);
hold on ;
plot([-5,5],[0,0],’r’);
zoom on
Ejemplo 26.
function [x,n]=delta(n0,n1,n2)
% n0=0;
% n1=0;
% n2=5;
n=[n1:n2]; % intervalo de definición de la sucesión
x=[(n-n0)==0];
Ejemplo 27.
function [x,n]=escalon(n0,n1,n2)
% genera u(u-u0) si n1<= n <=n2
n=[n1:n2];
x=[(n-n0)>=0];
Ejemplo 28.
n = [-5:5];
x = 2.*delta(-2,-5,5) - delta(4,-5,5);
stem(n,x); title(’sucesión x(n)’)
xlabel(’n’); ylabel(’x(n)’);
Ejemplo 29.
Ejemplo 30.
1.5. Polinomios
Definición 4 (Polinomio).
es llamada polinomio.
Ejemplo 31.
>> p=[ 1 4 -6 7 ]
Ejemplo 32.
>> sumacoeficientes=polyval(p,1)
sumacoeficientes = 6
>> terminoindep=polyval(p,0)
terminoindep =7
Ejemplo 33.
>> p =[1 1]
>> q=[1 -1]
% Calculamos p=(x+1)^2=x^2+2x+1
>> binomiocuadrado=conv(p,p)
binomiocuadrado = 1 2 1
% calculamos (x+2)(x+3)
>> a=[1 2];
>> b=[1 3];
>> multiplicamos=conv(a,b)
multiplicamos = 1 5 6
Ejemplo 34.
Ejemplo 35.
Vamos a calcular las raíces del polinomio p(x) = x3 + 6x2 + 11x + 6 para
ello realizamos los pasos siguientes
>> p=[1 6 11 6]
>> raices=roots(p)
raices =
-3.0000
-2.0000
-1.0000
Ejemplo 36.
Vamos a calcular el polinomio p(x) cuyas raíces vienen dadas por el vector
vectorRaiz
vectorRaiz=[-3 -2 -1];
>> polinomio=poly(vectorRaiz)
polinomio = 1 6 11 6
Ejemplo 37.
Ejemplo 38.
Ejemplo 39.
p=[1 0 -1 0];
>> x=linspace(-3,3,200);
>> y=polyval(p,x);
>> plot(x,y)
>> legend(’polinomio x^3-x’)
>> raices=roots(p);
>> hold on
>> plot(raices,zeros(1,3),’or’)
>> legend(’polinomio x^3-x’,’raices’)
>> plot(x,0)
Ejemplo 40.
Implementación de un programa
1. Cree un script . Para esto vamos a crear el archivo m, desde el menu de file
seleccionamos new y vamos a crear un nuevo archivo eligiendo la opción m
file luego digitamos el programa
>> hipot
cateto a= 3
cateto b= 4
hip =
5
>> h=hipotenusa(3,4)
h =
5
Matlab nos ofrece muchas funciones para realizar operaciones y cálculo simbólico
lo cual nos permite por ejemplo factorizar, simplificar expresiones, cálculo de raíces
de polinomios, evaluar límites, derivadas integrales, transformada de Laplace entre
otros muchas opciones muy importantes.
Variables Simbólicas
Función Descripción
syms x, y, . . . , z Convierte las variables en simbólicas
syms x, y, . . . , z real Convierte las variables en simbólicas con valores reales
syms x, y, . . . , z unreal Convierte las variables en simbólicas con valores no reales
syms Lista de variables simbólicas en el espacio de trabajo
x = syms(0 x0 ) Convierte la variable x en simbólica
pretty(x) Convierte la expresión matemática x en escritura matemática
simplif y(E) Simplifica la expresión E
vpa(E, n) Devuelve la expresión E con n dígitos decimales
poly2sym(A) Devuelve al arreglo A como un polinomio simbólico en x
Ejemplo 41.
>> syms a
>> f=2*a^3-5;
>> g=a^2+2;
>> h=a^3-5a^2+6a;
>> h=a^3-5*a^2+6*a;
>> w=f+g+h
w =
3*a^3-3-4*a^2+6*a
>> pretty(w)
3 2
3 a - 3 - 4 a + 6 a
Ejemplo 42.
1−x4
Simplificar la expresión 1−x2
>> syms x
>> E=simplify((1-x^4)/(1-x));
>> E=simplify((1-x^4)/(1-x));
>> pretty(E)
3 2
x + x + x + 1
Ejemplo 43.
Ejemplo 44.
Sea la matriz M = [x ed ; ex d]
>> syms x d
>> M=[ x exp(d); exp(x) d];
>> D=det(M)
D =
x*d-exp(d)*exp(x)
>> pretty(D)
x d - exp(d) exp(x)
Función Descripción
subs(f, a) Evalúa la función f en el valor a
subs(f, a, b) Sustituye en la función f el valor de a por el de b
compose(f, g) Función compuesta de f y g
f inverse(f ) Calcula la función inversa
limit(Sn, inf ) Calcula el limite de la sucesión Scuando n tiende a ∞
limit(f, a) Calcula el limite de la función f cuando x tiende al valor de a
limit(f, a) Calcula el limite de la función f cuando x tiende al valor de a
dif f (f, x) o dif f (f ) Calcula la derivada de la función f respecto a x
dif f (f, n) Calcula la n ésima derivada de la función f respecto a x
taylor(f, n, x) Calcula el desarrollo de la serie de Maclaurin de orden n − 1
para la función f en la variable x
taylor(f, n, x, a) Calcula el desarrollo de la serie de Taylor de orden n − 1
para la función f en la variable x alrededor del punto a
Ejemplo 45.
Leeremos una función f (x) = 2x4 + 3 como una cadena y luego la transfor-
maremos a una expresión simbólica, para derivarla y evaluarla
Ejemplo 46.
>> f=’13-x^3’;
>>p= subs(f,2)
p= 5
Ejemplo 47.
>> syms x
>> f=13-x^3 ;
>> p=subs(f,2)
p = 5
Ejemplo 48.
>> f=@(x)(x+6)
f =
@(x)(x+6)
>> f(2)
ans = 8
Ejemplo 49.
>> clear
>> syms x
>> f=x+4;
>> g=x^3+1;
>> h=compose(f , g)
h =
x^3+5
>> h=compose(g , f)
h =
(x+4)^3+1
>> pretty(h)
3
(x + 4) + 1
>> simplify(h)
ans =
x^3+12*x^2+48*x+65
Ejemplo 50.
2x3 +x2 +4
Considere las funciones f (x) = x3 +6
, calcule lı́mn→∞ f (x)
syms x
f=(2*x^3+x^2+4)/( x^3+6);
limit(f ,inf)
ans =
2
Ejemplo 51.
2
Considere la función f (x) = x4 − cos(x) + e−x , calcular f 0 (x)
>> syms x
>> f=x^4-cos(x)+exp(-x^2);
>> df=diff(f)
df =
4*x^3+sin(x)-2*x*exp(-x^2)
Ejemplo 52.
2 df df 2 2
Considere la función f (x) = sen(xy) + e−x + y 3 , calcular , , df, df
dx dy dxdy dx2
>> syms x y
>> f=sin(x*y)+exp(-x^2)+y^3;
>> dxf=diff(f,x)
dxf =
cos(x*y)*y-2*x*exp(-x^2)
>> dxyf=diff(diff(f,x),y)
dxyf =
-sin(x*y)*x*y+cos(x*y)
>> dxxf=diff(diff(f,x),x)
dxxf =
-sin(x*y)*y^2-2*exp(-x^2)+4*x^2*exp(-x^2)
Ejemplo 53.
>> syms x
>> t5=taylor(sin(x))
t5 =
x-1/6*x^3+1/120*x^5
Ejemplo 54.
>> syms x
>> t3=taylor(cos(x),4,x,2)
t3 =
cos(2)-sin(2)*(x-2)-1/2*cos(2)*(x-2)^2+1/6*sin(2)*(x-2)^3
Función Descripción
int(f, x) Calcula la integral indefinida de de f respecto de
la variable x
int(int(f, x), y) Calcula la integral indefinida de de f respecto de
x luego respecto de y
int(int(f, y), x) Calcula la integral indefinida de de f respecto de
y luego respecto de x
int(· · · int(int(f, x), y) · · · , z) Calcula la integral indefinida respecto de
x, luego de y , · · · hasta la variable z
int(f, x, a, b) Calcula la integral definida respecto de x de
a hasta b
int(int(f, x), a, b), y, c, d) Calcula la integral definida doble para
a≤x≤byc≤y≤d
Ejemplo 55.
>> clear
>> syms x
>> f=cos(x);
>> If=int(f,x)
If = sin(x)
Ejemplo 56.
>> clear
>> syms x
>> h=sen(x);
>> Ih=int(h,x)
Ih = -cos(x)
Ejemplo 57.
>> clear
>> syms x
>> h=tan(x)-x^3;
Ih=int(h,x)
Ih = -log(cos(x))-1/4*x^4
Ejemplo 58.
RR
Calcular (xy 2 − tan(x))dydx,
>> clear
>> syms x y
>> f=x*y^3-tan(x);
>> If=int(int(f,y),x)
If = 1/8*x^2*y^4+y*log(cos(x))
Función Descripción
dsolve(0 E 0 ) Resuelve la ecuación diferencial E respecto de
x, por defecto
dsolve(0 E 0 ,0 C 0 ) Resuelve la ecuación diferencial E con valores
iniciales C
dsolve(0 E 0 ,0 C1 , C2 , . . . , Cn0 ) Resuelve la ecuación diferencial E con valores
iniciales C1 , . . . Cn
laplace(f ) Calcula la transformada de Laplace de la función f
ilaplace(f ) Calcula la transformada inversa de Laplace de la función f
Ejemplo 59.
>> clear
>> syms y b
>> y=dsolve(’Dy=b*y’,’y(2)=1’)
y = 1/exp(2*b)*exp(b*t)
Ejemplo 60.
>> clear
>>y=dsolve(’Dy^2+y^2=1’,’y(0)=0’)
y =
-sin(t)
sin(t)
Ejemplo 61.
Calcular y 00 + 5y 0 − 6 = 0
>> clear
>> y=dsolve(’D2y+5*Dy-6=0’)
y = -1/5*exp(-5*t)*C1+6/5*t+C2
Ejemplo 62.
Calcular f (x) = ex
>> clear
>> syms x
>> y=laplace(exp(x))
y = 1/(s-1)
Ejemplo 63.
3
Calcular la transformada inversa de Laplace de f (s) = s2 −s−6
>> clear
>> syms s
>> y=ilaplace(3/(s^2-s-6))
y = 6/5*exp(1/2*t)*sinh(5/2*t)
>> pretty(y)
6/5 exp(1/2 t) sinh(5/2 t)
Ejemplo 64.
1
Calcular la transformada inversa de Laplace de f (s) = s−1
>> clear
>> syms s
>> ilaplace(1/(s-1))
y = exp(t)
%% *Ecuación Cuadrática*
% Autor: Marlo.
%% Fórmula general
% Para calcular las raíces de la ecuación cuadrática hacemos uso de las
% la instrucción solve, para resolver la ecuación cuadrática
syms a b c x
raices=solve(’a*x^2+b*x+c=0’);
%%
% Escribimos en latex las raíces obtenidas con solve
x1=latex(raices(1));
x2=latex(raices(2));
%%
% y obtenemos las raíces
% $$ x_1= - \frac{b + \sqrt{b^2 - 4\, a\, c}}{2\, a} $$
% $$ x_2= - \frac{b - \sqrt{b^2 - 4\, a\, c}}{2\, a} $$
%% Ejemplo
% Vamos a resolver la ecuación cuadrática
% $$ x^2-2x-24=0 $$
%%
a=1;
b=-2;
c=-24;
%%
% Así se tiene las raíces
x1=(-b+sqrt(b^2-4*a*c))/(2*a) ;
x2=(-b-sqrt(b^2-4*a*c))/(2*a) ;
%% Resultados
% Las raíces son
disp(x1);
disp(x2);
Sabemos que los gráficos dan bastante información de forma mas amena, pero si
estos están animados, entonces los procesos y los resultados se hacen mas
comprensibles y de hecho más amistoso.
end
%% Inicializamos parametros
Nt=100; % numero de pasos de tiempo
xmin=0.1;
xmax=0.9;
yval=0.3;
dt=0.03; % numero de pasos en segundos
%% Crando el vector x
x=linspace(xmin,xmax,Nt);
%% animamos la posición
for it=1:Nt
plot([x(1),x(it)],[yval, yval],’r’,... %plot linea
x(it),yval,’ro’); % plot circulo
axis([0,1,0,1]);
pause(dt);
drawnow
end
%% Parámetros
Nt=100 % numero de pasos
R=1; % radio del circulo
T=1; % periodo de de movimiento
dt=0.03; % tiempo en s
%% Iniciamos vectores
t=linspace(0,1,Nt);
x=zeros(1,Nt);
y=zeros(1,Nt);
%% Movimiento circular
for it=1:Nt
x(it)=R*cos(2*pi*t(it)/T);
y(it)=R*sin(2*pi*t(it)/T);
end
%% Parámetros
Nt=100
R=1;
T=1;
dt=0.06;
%% Movimiento circular
for it=1:Nt
x(it)=R*cos(2*pi*t(it)/T);
y(it)=R*sin(2*pi*t(it)/T);
end
Animamos la Elipse
%% ecuacion de la Elipse
% motion x(t)=a cos(omega*t +phi), y(t)= b sin(omega*t-phi)
%% Parámetros
a=1;
b=1.25;
T=1; % período del movimiento en el tiempo (obtener omega de esta)
Np=4; % número de períodos para trazar
Nt=500;
Nstride=2; %acelera el trazado if >1
phi=pi/8; % desfase
%% grafico de la animación
for it=1:Nstride:Nt
plot(x(1:it), y(1:it),... % línea en la posición actual
x(it), y(it), ’ro’,... % círculo rojo
[0, x(it)],[0, y(it)], ’r’); % línea roja de origen
axis(1.2*[xmin, xmax, ymin, ymax]);
axis equal
title(’Demo elliptical animation’);
drawnow
end
Ahora vamos a ver una animación interesante, para lo cual vamos a considerar la
ecuación p
s = a cos(ϕ) + b2 − (a sen(ϕ) − e)2
n = 40;
phi = linspace(0, 2*pi, n);
a = 1; b = 2.5; e = 0.25; nF = 5;
c = 0.5; d = 1; f = 0.06;
ax = a*cos(phi);
ay = a*sin(phi);
s = real(ax+sqrt(b^2-(ay-e).^2)); % toma la parte real
v = [1.1*min(ax), 1.1*(max(s)+d/2), 1.1*min(ay), 1.1*max(ay)];
xgnd = [min(ax), max(s)+d/2, max(s)+d/2, min(ax), min(ax)];
ygnd = [e, e, e-f, e-f, e];
slidery = [e, e+c, e+c, e, e];
% Componente vertical del deslizador es constante
for k = 1:n
fill(xgnd, ygnd, ’r’) % Barra horizontal fina
hold on
plot(ax, ay, ’b--’, 0, 0, ’ko’); % La circunferencia y su centro
sliderx = [s(k)-d/2, s(k)-d/2, s(k)+d/2, s(k)+d/2, s(k)-d/2];
fill(sliderx, slidery, ’m’); % grafica el bloque que se deslisa
plot([0 ax(k)], [0;ay(k)], ’ko-’, ’LineWidth’, 2);
% grafica del centro a la cascara
plot([ax(k), s(k)], [ay(k), e+c/2], ’ko-’, ’LineWidth’, 2);
% grafica de la cascara al bloque
axis(v)
axis off equal
SliderCrankFrame(k) = getframe;
hold off
end
movie(SliderCrankFrame, nF, 30)
%movie2avi(SliderCrankFrame, ’SliderCrankAvi.avi’, ’compression’, ’none’)
1.10. Ejercicios
1. Implemente un programa que muestre la siguiente tabla
-----------
Impares
-----------
1 1
2 3
3 5
4 7
x = -2:0.1,2;
c = [1 , 0 ; 0 , -1];
y = polyval(c,x);
plot(y;x)
log(x)
c) f (x) = x
x(x−2)
d ) f (x) = (x+1)(x−2)
1
e) f (x) = sen x
x
f ) f (x) = e|x−1|
2
x si x < 0
g) f (x) =
−1 si x ≥ 0
√
1 − x si x < −1
h) f (x) = 1 − x2 si − 1 ≤ x < 1
√
x − 1 si 1 ≤ x
p(x) = (x − 2)w(x) + 2x
p(x)q(x) = x5 − x4 − x3 + x2
a) p1 (x) = 2x3 − x + 7
b) p2 (x) = 2x5 + 3ix + (6 − 2i)
c) p3 (x) = x10 + x + 1
10. Genere la animación de una pelota que cae y rebota hasta detenerse.
[3] Douglas, J. Burden Richad. Métodos Numéricos. Tercera edición. THOMSON Editores.
2004. Madrid España.
[5] Nakamura, Shoichiro. Métodos Numéricos aplicados con Software. Editorial Prentice - Hall
Hispanoamericana.
[7] Scheid, Francis, Rosa Elena Di Constanzo. Métodos Numéricos. Colección Schaum.
Editorial Mc Graw Hill.
53
Marlo Carranza Purca