Vous êtes sur la page 1sur 8

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA


ASIGNATURA: Métodos Numéricos
CICLO: 2019-I
TIEMPO: 90 minutos

EXAMEN PARCIAL

GRUPO APELLIDOS Y NOMBRES

INDICACIONES:
• Desarrolle la prueba siguiendo las indicaciones y los métodos sugeridos. Plantee la solución en su hoja de examen, sea claro y
ordenado.
• Puede utilizar octave. No se permite ningún otro instrumento o aplicación, esta conlleva a la anulación de la prueba.
• Copiar los resultados intermedios del octave en la solución del problema en forma de texto, salvo que sea un gráfico.
• Copiar en la solución del problema el programa utilizado en Octave.
• Para el cálculo de todos los problemas use 8 decimales.

Problema 01. Demuestre que


a) (3ptos.) Para valores de n = 10, 20, 30…, 200. Calcular los errores porcentuales en cada uno de los
cálculos. Use el valor de e de octave como valor exacto.

El script para la solución es:


>> n=10:10:200;
>> eaprox=(1+1./n).^n;
>> eexacto=exp(1);
>> errorpor=((eexacto-eaprox)./eexacto)*100;
>> fprintf('%2.8f\n',eaprox)
2.59374246n=10
2.65329771 2.67431878
2.68506384 2.69158803
2.69597014 2.69911637
2.70148494 2.70333246
2.70481383 2.70602808
2.70704149 2.70790008
2.70863681 2.70927591
2.70983558 2.71032975
2.71076930 2.71116279
2.71151712
>> fprintf('%2.8f\n',errorpor)
4.58154732 2.39063230
1.61731032
1.22202156 0.98201000
0.82080117 0.70505778
0.61792297 0.54995649
0.49546000 0.45079016
0.41350891 0.38192312
0.35482026 0.33130918
0.31072025 0.29254057
0.27637063 0.26189462
0.24885961
Llevando a una tabla estor valores:
e error porcentual
n aproximado
10 2.59374246 4.58154732
20 2.65329771 2.3906323
30 2.67431878 1.61731032
40 2.68506384 1.22202156
50 2.69158803 0.98201
60 2.69597014 0.82080117
70 2.69911637 0.70505778
80 2.70148494 0.61792297
90 2.70333246 0.54995649
100 2.70481383 0.49546
110 2.70602808 0.45079016
120 2.70704149 0.41350891
130 2.70790008 0.38192312
140 2.70863681 0.35482026
150 2.70927591 0.33130918
160 2.70983558 0.31072025
170 2.71032975 0.29254057
180 2.7107693 0.27637063
190 2.71116279 0.26189462
200 2.71151712 0.24885961

El valor exacto de e de octave es:


>> fprintf('%2.8f\n',exp(1))
2.71828183

b) (1ptos.) Que conclusión puede llegar con los resultados de los errores.

Cuanto mayor es el valor de n mayor es la exactitud del valor de e aproximado, esto quiere
decir si n tiende al infinito el valor de aproximado es igual al valor exacto de e.

Problema 02. Considere la siguiente ecuación 𝒆𝟎.𝟓𝒙 − 𝒙 = 𝒙𝟐 del que queremos obtener las raíces
contenidas en el intervalo [−4, 4]. Para ello:
a) (1pto.) Calcule los intervalos de las raíces.
𝒇(𝒙) = 𝒙𝟐 + 𝒙 − 𝒆𝟎.𝟓𝒙 = 𝟎

Graficando:
>> x=-4:0.1:4;
>> y=x.^2+x-exp(0.5.*x);
>> plot(x,y)
>> hold on
>> fplot('0*x',[-4,4])
Los intervalos delas raíces son: [-2, -1] y [0, 1]

b) (2pto.) A partir de a) encuentre un punto de partida adecuado para encontrar la raíz positiva y
el número de iteraciones con un error aproximado menor a 0.5 x 10-4, Use cualquier método
abierto y explique la razón.
𝑓′(𝑥) = 2𝑥 + 1 − 0.5𝑒0.5
𝑓′′(𝑥) = 2 − 0.25𝑒0.5𝑥

Tomando x0 = 1 entonces (1)𝑓′′(1) > 0, voy a usar el método de Newton-Raphson por ser
convergente para x0 = 1,

>> 1^2+1-exp(0.5*1)
ans = 0.35128 >> 2-
0.25*exp(0.5*1) ans =
1.5878

Usando el programa hecho en clase:

clea

Obtenemos los siguientes resultados:

Calculo de la raíz de una ecuación por método de Newton-Raphson


Ingrese el valor inicial: 1
Ingrese el porcentaje de error: 0.00005
Ingrese la función: x^2+x-exp(0.5*x)
Ingrese la derivada de la función: 2-0.25*exp(0.5*x)

i raiz(i) Error aprox (i)


0 1.000000000000000 100.000000000000000
1 0.778766611089295 28.408175923368912
2 0.834454631263782 6.673582731531792
3 0.826419349447117 0.972300784346434
4 0.827821039311979 0.169322812334761
5 0.827582448975161 0.028829796609841
6 0.827623237522499 0.004928395613942
7 0.827616269594282 0.000841927409178
8 0.827617460078987 0.000143844802932
9 0.827617256686632 0.000024575654156

La raíz exacta es: 0.82761726


Numero de iteraciones: 9

c) (2pto.) A partir de a) encuentre la raíz negativa y el número de iteraciones con el método de


bisección con error menor de 0.5 x 10-4.

Usando el programa hecho en clase:


%** Método de Biseccion **
clear; clc;
fprintf('\nCálculo de la raíz de una ecuación por método de Biseccion\n\n');
y=input('Ingrese la función : ','s'); a=input('Ingrese el intervalo inferior : ');
b=input('Ingrese el intervalo superior : ');

tolerancia=input('Ingrese el porcentaje de error : ');


fprintf('\n\n a b Raiz Error\n')

xi=0; error=100;
numter=1;

x=a; fa=eval(y);
x=b; fb=eval(y);

if (fa*fb>0) fprintf('\nLos intervalos que ha ingresado para hacer el cálculo


de la raiz\n'); fprintf('de la ecuación no son los adecuados por no existir una
raíz entre \n'); fprintf('estos, Ejecute de nuevo el programa, por favor.\n');
break
end

while error>tolerancia
raiz=(a+b)/2; x=a;
fa=eval(y); x=raiz;
fr=eval(y); error=(b-
a)/2;
fprintf('%2d %15.10f %15.10f %15.10f %15.10f\n',numter,a,b,raiz,error)

if fa*fr<0
b=raiz; else
a=raiz;
end

if fa*fr==0
fprintf('\n\n\n\nLa raíz exacta es: %d',raiz)
fprintf('\n\nNumero de iteraciones: %d',numter);
break end
xi=raiz;
numter=numter+1;
end
if error<tolerancia
fprintf('\nLa raíz exacta es: %d',raiz)
fprintf('\nNumero de iteraciones: %d',numter-1); end

Obtenemos los siguientes resultados:

Cálculo de la raíz de una ecuación por método de Bisección


Ingrese la función: x^2+x-exp(0.5*x)
Ingrese el intervalo inferior: -2
Ingrese el intervalo superior: -1
Ingrese el porcentaje de error: 0.00005

a b Raiz Error
1 -2.0000000000 -1.0000000000 -1.5000000000 0.5000000000
2 -1.5000000000 -1.0000000000 -1.2500000000 0.2500000000
3 -1.5000000000 -1.2500000000 -1.3750000000 0.1250000000
4 -1.3750000000 -1.2500000000 -1.3125000000 0.0625000000
5 -1.3750000000 -1.3125000000 -1.3437500000 0.0312500000
6 -1.3750000000 -1.3437500000 -1.3593750000 0.0156250000
7 -1.3750000000 -1.3593750000 -1.3671875000 0.0078125000
8 -1.3750000000 -1.3671875000 -1.3710937500 0.0039062500
9 -1.3710937500 -1.3671875000 -1.3691406250 0.0019531250
10 -1.3691406250 -1.3671875000 -1.3681640625 0.0009765625
11 -1.3691406250 -1.3681640625 -1.3686523438 0.0004882812
12 -1.3686523438 -1.3681640625 -1.3684082031 0.0002441406
13 -1.3686523438 -1.3684082031 -1.3685302734 0.0001220703
14 -1.3686523438 -1.3685302734 -1.3685913086 0.0000610352
15 -1.3685913086 -1.3685302734 -1.3685607910 0.0000305176

La raíz exacta es: -1.36856079


Numero de iteraciones: 15

Problema 03. Una empresa electrónica fabrica tres tipos de teléfonos celulares: GA, GM y GB (Gama
Alta, Gama Media y Gama Baja). Para armar un celular de GM se necesitan 60 minutos, otros 12 para
probar sus componentes y 12 minutos más para instalar el software. El tiempo requerido por el GA es
de 72 minutos para su ensamblado, 15 minutos para probarlo y 12 minutos para instalar el software.
El GB, el más sencillo de la línea, necesita 36 minutos de ensamblado, 9 minutos de prueba y 9 minutos
de instalación de software. Si la planta dispone de 1560 horas de trabajo por mes para armar, 340 horas
para probar y 320 horas para instalar. ¿Cuántos celulares de cada tipo puede producir en un mes?

a) (2 ptos.) Representar el sistema de ecuaciones lineales algebraicamente y matricialmente.


Sea x el número de celulares de GB
Sea y el número de celulares de GM
Sea z el número de celulares de GA

36x + 60y + 72z = 1560*60 = 93600


9x + 12y + 15z = 340*60 = 20400
9x + 12y + 12z = 320*60 = 19200
Representación matricial:

Resolviendo el SEL con Octave:


>> A=[36 60 72;9 12 15;9 12 12]
A=
36 60 72
9 12 15
9 12 12

>> B=[93600;20400;19200]
B=
93600
20400
19200

>> x=A\B
x = 800
600
400

b) (2 ptos.) Resolver con el método de Gauss.


Usando el siguiente programa:

clear all clc disp(' Método de


Gauss') disp(' Resuelve el sistema
Ax=b') a=input('Introduzca la
matriz A: ');
b=input('Introduzca la matriz b (en vectores fila): ');

[Ma,Na]=size(a);
[Mb,Nb]=size(b);
a=[a, b']; disp('Matriz
ampliada') disp(a)

[M,N]=size(a); %tamano de la matriz aumentada

for j=2:M
piv=j-1; for
i=j:M
a(i,:)=a(i,:)-a(i,piv)*a(piv,:)/a(piv,piv);
end end disp('Matriz Triengular') disp(a)

%retrosustitución
cont=0; for p=Na+1:N
x(M)=a(M,p)/a(M,M);
cont=cont+1; for
m=M-1: -1: 1 S=0;
for n = M: -1: m+1
S=S+a(m,n)*x(n);
end
x(m)=(a(m,p)-S)/a(m,m);
end
fprintf('Solucion%3.0f\n', cont)
disp(x') end

Obtenemos el siguiente resultado:


>> Gauss
Método de Gauss
Resuelve el sistema Ax=b
Introduzca la matriz A: [36 60 72;9 12 15;9 12 12]
Introduzca la matriz b (en vectores fila): [93600 20400 19200]
Matriz ampliada
36 60 72 93600
9 12 15 20400
9 12 12 19200
Matriz Triangular
36 60 72 93600
0 -3 -3 -3000
0 0 -3 -1200
Solución 1
800
600
400

c) (2 ptos.) Resolver con el método de Jacobi con un número de iteraciones igual al obtenido en
b) del problema anterior. Cuál es el error porcentual obtenido.
LA MATRIZ DE COEFICIENTES NO ES DIAGONALMENTE DOMINANTE, NO CONVERGE A UNA
SOLUCIÓN.

Problema 03. Se desea determinar el área de un trapecio (figura), cuya fórmula es (los
valores de a, b y c están en cm. Se pide:

a) (1 ptos.) Calcular el área aproximada del trapecio. a = 12.12, b = 7.53, h =


4.72

>> a = 12.12
a = 12.120

>> b = 7.53 b =
7.5300 >> h =
4.72 h = 4.7200
>> A=h*(a+b)/2
A = 46.374
b) (2 ptos.) Determine el error absoluto cometido al calcular el área en cm y el correspondiente error
relativo en porcentaje.
a = 0.01, b = 0.02, h = 0.03
A = h/2( a) + h/2( b) + 1/2(a + b)( h)

>> eA=h*0.01/2+h*0.02/2+0.5*(a+b)*0.03
eA = 0.36555

error absoluto de A = 0.36555

>> eA/46.374*100 ans


= 0.78826

error relativo porcentual de A = 0.78826 %

c) (2 ptos.) El rango de valores donde se encuentra el área del trapecio. ¿Cuántas y cuáles cifras
significativas considera exactas del área?

>> A-eA ans


= 46.008
>> A+eA
ans = 46.740

46.008 ≤ A ≤ 46.740

Hay dos cifras exactas 46.

Fecha: 15 de mayo de 2019

Vous aimerez peut-être aussi