lOMoARcPSD|41958473
MODELOS, COMPUTADORAS Y ANÁLISIS DEL ERROR
INSTRUCTIVO DE LA TAREA 1:
Resolver los diez primeros problemas de cada Capítulo: 1, 2 y 3 de Métodos Numéricos para
Ingenieros (Chapra, S., Canale, R. 2011).).
CAPÍTULO 1:
MODELOS MATEMÁTICOS Y SOLUCIÓN DE PROBLEMAS EN
INGENIERÍA
PROBLEMAS:
1.1. Utilice el cálculo para resolver la ecuación (1.9) para el caso en que la velocidad
inicial, 𝑣(0) es diferente de cero.
ⅆv c
=g− v
ⅆt m
SOLUCIÓN:
Dado que la velocidad inicial no es cero, asumimos que𝑣(0) = 2𝑚/𝑠
dv
=dt
c
g− v
m
Integramos
dv
∫ c
=∫ dt
g− v
m
Realizamos una integración por sustitución. Sea:
𝑢=𝑔− 𝑣 𝑑𝑢 =− 𝑑𝑣
c c
m m
− ∫ 𝑑𝑢 = ∫ 𝑑𝑡
m 1
c u
lOMoARcPSD|41958473
− ∫ 𝑙𝑛|𝑢| = 𝑡 + 𝐶
m
c
Sustituimos u:
− ∫ 𝑙𝑛 |𝑔 - 𝑣| = 𝑡 + 𝐶
m c
c m
Ahora, para determinar la constante de integración C. utilizamos la condicional inicial 𝑣(0) =
2 𝑚 /𝑠
− 𝑙𝑛 |𝑔 − (2) | = 0 + 𝐶
m c
c m
− 𝑙𝑛 |𝑔 − |= 𝐶
m 2c
c m
Despejamos v
|𝑔 − v | = e m |𝑔 −
c −ct 2c
m m
Cuando 𝑣(0) = 2𝑚/𝑠 entonces:
|𝑔 − (2)| = |𝑔 − |
c 2c
m m
𝑔− =2
2c
m
c g−2
=
m 2
La solución para v(t) es:
𝑣(𝑡) = +(v(0) - ) m
mg mg −ct
c c e
1.2. Repita el ejemplo 1.2. Calcule la velocidad en 𝑡 = 8 𝑠, con un tamaño de paso de a) 1 y
b) 0.5 s. ¿Puede establecer algún enunciado en relación con los errores de cálculo con base
en los resultados?
SOLUCIÓN:
Para el tamaño de paso: 1
lOMoARcPSD|41958473
𝑣(t ⅈ+1) = v (t ⅈ) + (𝑔 − 𝑣(𝑡𝑖))(𝑡𝑖+1 − 𝑡𝑖)
m
c
𝑣(1) = 0 + (9. 8 − (0))(1 − 0)= 9.8
𝑣(2) = 9. 8 + (9. 8 − (9. 8))(2 − 1)= 17.8
𝑣(3) = 17. 8 + (9. 8 − (17. 8))(3 − 2)= 24.33
𝑣(4) = 24. 33 + (9. 8 − (24. 33))(4 − 3)= 28.66
𝑣(5) = 28. 66 + (9. 8 − (28. 66))(5 − 4)= 33.15
𝑣(6) = 33. 15 + (9. 8 − (33. 15))(6 − 5)= 36.87
𝑣(7) = 36. 87 + (9. 8 − (36. 87))(7 − 6)= 39.90
𝑣(8) = 39. 90 + (9. 8 − (39. 90)(8 − 7)= 42.37
Respuesta
a) La velocidad en el segundo 8 será de 42.37m/s
Para el tamaño de paso: 0.5
𝑣(0. 5) = 0 + (9. 8 − (0)(0. 5 − 0)=4.9
𝑣(1) = 4. 9 + (9. 8 − (4. 9)(1 − 0. 5)=9.35
𝑣(1. 5) = 9. 35 + (9. 8 − (9. 35)(1. 5 − 1)=13.39
𝑣(2) = 13. 39 + (9. 8 − (13. 39)(2 − 1. 5)=17.06
𝑣(2. 5) = 17. 06 + (9. 8 − (17. 06)(2. 5 − 2)=20.39
𝑣(3) = 20. 39 + (9. 8 − (20. 39)(3 − 2. 5)=23.42
𝑣(3. 5) = 23. 42 + (9. 8 − (23. 42)(3. 5 − 3)=26.17
𝑣(4) = 26. 17 + (9. 8 − (26. 17)(4 − 3. 5)=28.67
𝑣(4. 5) = 28. 67 + (9. 8 − (28. 67)(4. 5 − 4)=30.94
𝑣(5) = 30. 94 + (9. 8 − (30. 94)(5 − 4. 5)=33
𝑣(5. 5) = 33 + (9. 8 − (33)(5. 5 − 5)=34.87
𝑣(6) = 34. 87 + (9. 8 − (34. 87)(6 − 5. 5)=36.57
𝑣(6. 5) = 36. 57 + (9. 8 − (36. 57)(6. 5 − 6)=38.11
lOMoARcPSD|41958473
𝑣(7) = 38. 11 + (9. 8 − (38. 11)(7 − 6. 5)=39.51
𝑣(7. 5) = 39. 51 + (9. 8 − (39. 51)(7. 5 − 7)=40.78
𝑣(8) = 40. 78 + (9. 8 − (40. 78)(8 − 7. 5)=41.94
Tabla de errores:
Tiempos(s) 1 paso 0.5 paso Error
1 9.8 9.35 4.81%
2 17.8 17.06 4.34%
3 24.33 23.42 0.38%
4 28.66 28.67 0.03%
5 33.15 33 0.45%
6 36.87 36.57 0.82%
7 39.9 39.51 0.99%
8 42.37 41.94 1.03%
Respuesta: Se puede observar que entre los segundos 3 y 7 el porcentaje de error en la
velocidad es mínimo al dar el siguiente paso. En particular, en el segundo 4, el error es casi
inexistente, lo que indica que en ese momento las velocidades correspondientes a los pasos
de 1 y 0.5 serán prácticamente iguales.
1.3. En vez de la relación lineal de la ecuación (1.7), elija modelar la fuerza hacia arriba
sobre el paracaidista como una relación de segundo orden,
𝐹 = –𝑐′ v 2
𝑈
donde 𝑐′ = un coeficiente de arrastre de segundo orden (kg/m).
que al inicio el saltador se encuentra en reposo (𝑣 = 0 𝑒𝑛 𝑡 = 0).
a) Con el empleo del cálculo, obtenga la solución de forma cerrada para el caso en
SOLUCIÓN:
lOMoARcPSD|41958473
Figura 1: Codificación en Matlab
Figura 2: Gráfica obtenida en Matlab
b) Repita el cálculo numérico en el ejemplo 1.2 con los mismos valores decondición
Utilice un valor de 0.22 kg/m para 𝑐′.
inicial y de parámetros, pero con un arrastre de segundo orden.
lOMoARcPSD|41958473
Figura 3: Codificación en Matlab
lOMoARcPSD|41958473
Figura 4: Gráfica obtenida en Matlab
1.4. Para el paracaidista en caída libre con arrastre lineal, suponga un primer salto de 70 kg
con coeficiente de arrastre de 12 kg/s. Si un segundo saltador tiene un coeficiente de
arrastre de 15 kg/s y una masa de 80 kg, ¿cuánto tiempo le tomará alcanzar la misma
velocidad que el primero adquiera en 9 s?
SOLUCIÓN:
Para resolver este problema, utilizamos la fórmula de la velocidad en función del tiempo,
que también toma en cuenta la fuerza de arrastre:
v(t) = (g·m/C)·[1-e^(-C·t/m)]
g = gravedad
m = masa
c = coeficiente de arrastre
t = tiempo
o Primero, buscamos la velocidad que alcanza el primer paracaidista en 9
segundos, usando los valores m=70Kg y C= 12Kg/s. Aplicamos la fórmula:
𝑣(9𝑠) = (9. 8 𝑚/𝑠2 × 70 𝑘𝑔/12 𝑘𝑔/𝑠) × 1 − e [ (−15 kg / s ×t / 80 kg )]
Obtenemos que 𝑣(9𝑠) = 45 𝑚/𝑠
o Ahora, para que el segundo paracaidista alcance la misma velocidad de 45m/s ,
tenemos:
45 𝑚/𝑠 = (9. 8 𝑚/𝑠2 × 80 𝑘𝑔/15 𝑘𝑔/𝑠) × 1 − e [(−15 kg / s ×t / 80 kg)]
Despejamos t de la ecuación:
45/52. 3 = (1 − e (−15 kg/ s ×t / 80 kg)
𝑙𝑛 (1 − 45/52. 3) = − 15 𝑘𝑔/𝑠 × 𝑡/80 𝑘𝑔
𝑡 = 10, 5 𝑠
Respuesta: Por lo tanto, el segundo paracaidista tardará 10.5 segundos en alcanzar la
misma velocidad que el primer paracaidista adquiere en 9 segundos.
Euler para el caso en que 𝑚 = 80 𝑘𝑔 y 𝑐 = 10 𝑘𝑔/𝑠. Lleve a cabo el cálculo desde 𝑡 = 0
1.5. Calcule la velocidad de un paracaidista en caída libre con el empleo del método de
hasta 𝑡 = 20 𝑠 con un tamaño de paso de 1 s. Use una condición inicial en que el
paracaidista tiene una velocidad hacia arriba de 20 m/s en 𝑡 = 0. Suponga que el
paracaídas se abre instantáneamente en 𝑡 = 10 𝑠, de modo que el coeficiente de arrastre
sube a 60 kg/s.
lOMoARcPSD|41958473
SOLUCIÓN:
Datos:
Figura 5: Codificación del ejercicio en Matlab
lOMoARcPSD|41958473
Figura 6: Resultados de la codificación del respectivo ejercicio
encuentra contenido en un reactor cerrado, se mide por su concentración 𝑐
1.7. La cantidad de un contaminante radiactivo distribuido uniformemente que se
(becquerel/litro, o Bq/L). El contaminante disminuye con una tasa de decaimiento
tasa de decaimiento = − 𝑘𝑐
proporcional a su concentración, es decir:
donde 𝑘 es una constante con unidades de día–1. Entonces, de acuerdo con la ecuación
𝑑𝑐
(1.13), puede escribirse un balance de masa para el reactor, así:
𝑑𝑡 =− 𝑘𝑐
(cambio de la masa) = (disminución por decaimiento)
Use el método de Euler para resolver esta ecuación desde 𝑡 = 0 hasta 1 d, con 𝑘 =
0. 175 𝑑−1. Emplee un tamaño de paso de ∆𝑡 = 0. 1. La concentración en 𝑡 = 0 es de 100
a)
Muestre la solución en un gráfico semilogarítmico (p. ej., ln 𝑐 𝑣𝑒𝑟𝑠𝑢𝑠 𝑡) y
Bq/L.
b)
determine la pendiente. Interprete sus resultados
SOLUCIÓN:
lOMoARcPSD|41958473
a) Para resolver esta ecuación utilizando el método de Euler, se utiliza la siguiente
fórmula de iteración:
𝑐(𝑡 + Δ𝑡) = 𝑐(𝑡) + Δ𝑡 * (− 𝑘 * 𝑐(𝑡))
1. Definimos las constantes:
● k=0.175 d^(-1) (tasa de decaimiento)
● Δt=0.1 d (tamaño del paso)
● c0=100 Bq/L (concentración inicial)
● t0=0 (tiempo inicial)
lOMoARcPSD|41958473
● t f=1 d (tiempo final)
𝑐(0. 1) = 100 + 0. 1(− 0. 175 * 100) = 98. 25
Cálculos:
𝑐(0. 2) = 98. 25 + 0. 1(− 0. 175 * 100) = 96. 5 𝑐(0. 3) =
𝑐(0. 4) = 94. 75 + 0. 1(− 0. 175 * 100) = 93
96. 5 + 0. 1(− 0. 175 * 100) = 94. 75
𝑐(0. 5) = 93 + 0. 1(− 0. 175 * 100) = 91. 25
𝑐(0. 6) = 91. 25 + 0. 1(− 0. 175 * 100) = 89. 5 𝑐(0. 7) =
𝑐(0. 8) = 87. 75 + 0. 1(− 0. 175 * 100) = 86
89. 5 + 0. 1(− 0. 175 * 100) = 87. 75
𝑐(0. 9) = 86 + 0. 1(− 0. 175 * 100) = 84. 25 𝑐(1) = 84.
25 + 0. 1(− 0. 175 * 100) = 82. 5
b) Gráfico
Hallando la pendiente:
𝑚= 𝑙𝑜𝑔(82.5)−𝑙𝑜𝑔(10)1 = 0. 92
● La pendiente es aproximadamente igual al negativo de la tasa de caída.
1.8. Un grupo de 35 estudiantes asiste a clase en un salón que mide 11 m por 8 m por 3 m.
Cada estudiante ocupa alrededor de 0.075 m 3 y genera cerca de 80 W de calor (1 W = 1
J/s). Calcule el incremento de la temperatura del aire durante los primeros 20 minutos de
calorífica del aire, 𝐶 , es de 0.718
la clase, si el salón está sellado y aislado por completo. Suponga que la capacidad
𝑣
kJ/(kg K). Suponga que el aire es un gas ideal a 20 °C y 101.325 kPa.
Obsérvese que el calor absorbido por el aire 𝑄 está relacionado con la masa de aire 𝑚, la
capacidad calorífica, y el cambio en la temperatura, por medio de la relación siguiente:
lOMoARcPSD|41958473
𝑇2
𝑄 = 𝑚 ∫ 𝐶 𝑑𝑡 = 𝑚𝐶 (𝑇 − 𝑇 )
𝑣 𝑣 2
𝑇1
1
La masa del aire se obtiene de la ley del gas ideal:
𝑃𝑉 = 𝑀𝑤𝑡𝑚 𝑅𝑇
donde 𝑃 es la presión del gas, 𝑉 es el volumen de éste, 𝑀𝑤𝑡 es el peso molecular del gas
(para el aire, 28.97 kg/kmol) y 𝑅 es la constante universal de los gases ideales [8.314 kPa
m3/(kmol K)].
DATOS:
● 𝑉
𝑠𝑎𝑙ó𝑛
= (11 × 8 × 3)𝑚3 = 264𝑚3
● 𝑉
𝑒𝑠𝑡𝑢𝑑𝑖𝑎𝑛𝑡𝑒𝑠
= (35 × 0. 075)𝑚3 = 2. 625𝑚3
● 𝑉 = 𝑉 − 𝑉 = 261. 375𝑚3
𝑎𝑖𝑟𝑒 𝑠𝑎𝑙ó𝑛𝑒𝑠𝑡𝑢𝑑𝑖𝑎𝑛𝑡𝑒𝑠
● 𝑃 = 101. 325𝑘𝑃𝑎
● 𝑀𝑤𝑡 = 28. 97 𝑘𝑔/𝑘𝑚𝑜𝑙
● 𝑅 = 8. 314 𝑘𝑃𝑎 𝑚3/(𝑘𝑚𝑜𝑙 𝐾)
● 𝑇 = 20 °𝐶 = 293. 15 𝐾
● 𝐶 = 0. 718 𝑘𝐽/(𝑘𝑔 𝐾) = 718 𝐽/(𝑘𝑔 °𝐶)
𝑣
● 𝑄 = 80 × 35 = 2800 𝐽/𝑠 SOLUCIÓN:
● Primero debemos calcular la masa del aire usando la segunda fórmula(despejamos
masa):
𝑃𝑉 = 𝑀𝑤𝑡𝑚𝑅𝑇 ⇒ 𝑚 = 𝑃𝑉(𝑀𝑤𝑡)𝑅𝑇
3
𝑚=
𝑃𝑉(𝑀𝑤𝑡)𝑅𝑇= (101.325[8.314𝑘𝑃𝑎)(261.375𝑚𝑘𝑃𝑎 𝑚3/(𝑘𝑚𝑜𝑙 𝐾)](293.15 𝐾))
(28.97 𝑘𝑔/𝑘𝑚𝑜𝑙)
𝑚= = 314. 796𝑘𝑔
● Para calcular el incremento de la temperatura en el salón de clases despuésde 20
minutos usamos la primera fórmula:
lOMoARcPSD|41958473
𝑄 = 𝑚𝐶 (𝑇 − 𝑇 ) … despejamos temperatura
𝑣 2
∆𝑇 = 𝑇2 − 𝑇1 = 𝑚𝐶𝑄 𝑣
1
∆𝑇 = (314.796𝑘𝑔)[7182800 𝐽/𝑠 𝐽/(𝑘𝑔 °𝐶)] = 0. 012 °𝐶
Este es el calor que se genera cada segundo. ● Para
determinar el calor después de 20 minutos debemos multiplicar el resultado por
el tiempo transcurrido: 20 minutos = 1200 s. Finalmente obtenemos que la
temperatura va a aumentar con:
0. 012 × 1200 = 1. 44 °𝐶
1.9. Un tanque de almacenamiento contiene un líquido con profundidad 𝑦, donde 𝑦 = 0
𝑄 a fin de satisfacer las demandas. Se suministra el contenido a una tasa senoidal de
cuando el tanque está lleno a la mitad. El líquido se extrae con una tasa de flujo constante
3𝑄sen2(𝑡).
Para este sistema, la ecuación (1.13) puede escribirse como
𝑑(𝐴𝑦)
𝑑𝑡 = 3𝑄𝑠𝑒𝑛 (𝑡) − 𝑄
2
(cambio en el volumen) = (flujo de entrada) - (flujo de salida) o bien,
𝑑𝑦 𝑄 𝑄
como el área de la superficie A es constante
𝑑𝑡 = 3 𝐴 𝑠𝑒𝑛 (𝑡) − 𝐴
2
Emplee el método de Euler para resolver cuál sería la profundidad 𝑦, desde 𝑡 = 0 hasta 10
d, con un tamaño de paso de 0.5 d. Los valores de los parámetros son 𝐴 = 1 250 m2 y 𝑄 =
450 m3/d. Suponga que la condición inicial es 𝑦 = 0.
SOLUCIÓN:
Empezamos convirtiendo dicha ecuación en su solución numérica tal que nos quede de la
𝑑𝑉𝑑𝑡 = 𝑉𝑖+1−𝑉𝑖𝑡𝑖+1−𝑡𝑖= ( )𝑄𝐴 (3. 𝑠𝑒𝑛2𝑡) − ( )𝑄𝐴
siguiente forma:
Método de Euler
lOMoARcPSD|41958473
𝑉𝑖 + 1 = 𝑉𝑖 + ⎡( )𝑄𝐴 (3. 𝑠𝑒𝑛2𝑡) − ( )𝑄𝐴 ⎤⎦(𝑡𝑖 + 1 −
𝑡𝑖) ⎣
Solución analítica:
𝑑𝑣𝑑𝑡 = ( ) × (2𝑡 − 3 𝑠𝑒𝑛(2𝑡)) + 𝑐
CAPÍTULO 2:
PROGRAMACIÓN Y SOFTWARE
2.2. Vuelva a escribir el siguiente pseudocódigo usando las sangrías
adecuadas:
SOLUCIÓN:
Figura 7: Codificación del ejercicio en Matlab
2.3. Desarrolle, depure y documente un programa para determinar las raíces de una
ecuación cuadrática, a𝑥2 + bx + c, en cualquier lenguaje de alto nivel, o de macros, de su
elección. Utilice un procedimiento de subrutina para calcular las raíces (sean reales o
complejas). Ejecute corridas de prueba para los casos en que a) a = 1, b = 6, c = 2; b) a = 0,
b = –4, c = 1.6; c) a = 3, b = 2.5, c = 7.
lOMoARcPSD|41958473
Figura 8: Codificación del ejercicio en Matlab
Figura 9: Codificación del ejercicio en Matlab
2.4. La función seno puede evaluarse por medio de la serie infinita siguiente:
𝑥3 𝑥5 𝑥7
𝑠𝑒𝑛 𝑥 = 𝑥 − 3! + 5! − 7! +...
valores de 𝑠𝑒𝑛 𝑥 conforme se agregue cada término de la serie. En otras palabras, calcule
Escriba un algoritmo para implementar esta fórmula de modo que calcule e imprima los
𝑠𝑒𝑛 𝑥 = 𝑥
e imprima la secuencia de valores para
3
lOMoARcPSD|41958473
𝑠𝑒𝑛 𝑥 = 𝑥 − 𝑥3!
𝑥3
𝑥5 𝑠𝑒𝑛 𝑥 = 𝑥 − 3! + 5!
hasta el término de orden 𝑛 que usted elija. Para cada uno de los valores anteriores,
calcule y haga que se muestre el error porcentual relativo:
% 𝑒𝑟𝑟𝑜𝑟 = 𝑣𝑎𝑙𝑜𝑟 𝑣𝑒𝑟𝑑𝑎𝑑𝑒𝑟𝑜 – 𝑎𝑝𝑟𝑜𝑥𝑖𝑚𝑎𝑐𝑖ó𝑛 𝑐𝑜𝑛 𝑙𝑎 𝑠𝑒𝑟𝑖𝑒𝑣𝑎𝑙𝑜𝑟 𝑣𝑒𝑟𝑑𝑎𝑑𝑒𝑟𝑜 ×
100%
Escriba el algoritmo para a)
pseudocódigo SOLUCIÓN:
Figura 10: Codificación del ejercicio en Matlab
lOMoARcPSD|41958473
Figura 11: Codificación del ejercicio en Matlab
2.5. Desarrolle, depure y documente un programa para el problema 2.4 en cualquier
lenguaje de alto nivel o de macros, de su elección. Emplee la función seno de la biblioteca
de su computadora para determinar el valor verdadero. Haga que el programa imprima en
para calcular valores desde sen(1.5) hasta incluir el término 𝑥15/15! Interprete los
cada paso la serie de aproximación y el error. Como caso de prueba, utilice el programa
resultados.
SOLUCIÓN:
Figura 12: Codificación del ejercicio en Matlab
Figura 13: Codificación del ejercicio en Mat Lab
2.6. El algoritmo siguiente está diseñado para determinar la calificación de un curso que
consiste en cuestionarios, tareas y un examen final:
Paso 1: Introducir la clave y nombre del curso.
lOMoARcPSD|41958473
Paso 2: Introducir factores de ponderación para los cuestionarios (C), tareas (T) y examen
final (E).
Paso 3: Introducir las calificaciones de las preguntas y determinar su promedio (PC).
Paso 4: Introducir las calificaciones de las tareas y determinar su promedio
(PT).
Paso 5: Si el curso tiene una calificación final, continuar con el paso 6. Si no, ir al paso 9.
Paso 6: Introducir la calificación del examen final (F).
Paso 7: Determinar la calificación promedio, CP, de acuerdo con
CP= 𝐶 *𝑃𝐶+ 𝑇* 𝑃𝑇+ 𝐸* 𝐹𝐶+𝑇+𝐸 * 100%
Paso 8: Ir al paso 10.
Paso 9: Determinar la calificación promedio, CP, de acuerdo con
CP= 𝐶 *𝑃𝐶+ 𝑇* 𝑃𝑇𝐶+𝑇 * 100%
Paso 10: Imprimir la clave y nombre del curso, y la calificación promedio.
Paso 11: Finalizar el cálculo.
a) Escriba un pseudocódigo bien estructurado para implementar estealgoritmo.
b) Escriba, depure y documente un programa estructurado de computadorabasado en
este algoritmo. Pruébelo con los datos siguientes para calcular una calificación sin el
examen final, y otra con éste. C = 30; T = 40; E = 30; cuestionario = 98, 95, 90, 60 y 99;
tareas = 98, 95, 86, 100, 100 y 77, y examen final = 91.
SOLUCIÓN:
lOMoARcPSD|41958473
Figura 14: Codificación del ejercicio en Matlab
lOMoARcPSD|41958473
Figura 15: Codificación del ejercicio en Matlab
2.7. El método antiguo de dividir y promediar, para obtener el valor aproximado de la raíz
cuadrada de cualquier número positivo a se puede formular como:
𝑥=
𝑥+𝑎/𝑥
2
a) Escriba un pseudocódigo bien estructurado para implementar este algoritmo como se
ilustra en la figura. Utilice la indentación apropiada para que la estructura sea clara.
lOMoARcPSD|41958473
Figura 16: Codificación del ejercicio en Matlab
2.8 Se invierte cierta cantidad de dinero P en una cuenta en la que el interés se capitaliza
al final del periodo. Debe determinarse el valor futuro, F, que se obtiene con cierta tasa de
interés, i, después de n periodos, por medio de la fórmula siguiente:
F = P (1 + i)n
Escriba un programa que calcule el valor futuro de una inversión para cada año, desde 1
hasta n. La entrada para la función debe incluir la inversión inicial, P, la tasa de interés, i
(en forma decimal), y el número de años, n, para el que ha de calcularse el valor futuro. La
salida debe consistir en una tabla con encabezados y columnas para n y F. Corra el
programa para P = $100000, i = 0.04 y n = 11 años.
SOLUCIÓN:
lOMoARcPSD|41958473
Figura 17: Codificación del ejercicio en Matlab
2.9. Las fórmulas económicas están disponibles para calcular los pagos anuales de
préstamos. Suponga que obtiene en préstamo cierta cantidad de dinero P y acuerda
devolverla en n pagos anuales con una tasa de interés de i.
La fórmula para calcular el pago anual A es:
𝑖(1+𝑖)𝑛
𝐴=𝑃 𝑛
(1+𝑖) −1
Escriba un programa para calcular A. Pruébelo con P = $55000 y una tasa de interés de
6.6% (i = 0.066). Calcule los resultados para n = 1, 2, 3, 4 y 5, y muestre los resultados en
forma de tabla con encabezados y columnas para n y A
SOLUCIÓN:
Figura 18: Codificación del ejercicio en Matlab
CAPÍTULO 3:
APROXIMACIONES Y ERRORES DE REDONDEO
PROBLEMAS:
lOMoARcPSD|41958473
3.1. Convierta los números que se presentan de base 2 a base 10: a) 101101; b) 110.011 y
c) 0.01101.
SOLUCIÓN:
a) (101101)2 = (1 × 25) + (0 × 24) + (1 × 23) + (1 × 22) + (0 × 21) + (1 × 20) (101101) =
32 + 8 + 4 + 1 = (45)
2 10
b) (110. 011)2 = (1 × 22) + (1 × 21) + (0 × 20) + (0 × 2−1) + (1 × 2−2)
+ (1 × 2−3)
(110. 011) = 4 + 2 + 0. 25 + 0. 125 = (6. 375)
2 10
c) (0. 01101)2 = (0 × 20) + (0 × 2−1) + (1 × 2−2) + (1 × 2−3) + (0 × 2−4)
+ (1 × 2−5)
(0. 01101) = 0. 25 + 0. 125 + 0. 03125 = (0. 40625)
2 10
3.2. Convierta los siguientes números base 8 a base 10: 71 263 y
3.147.
SOLUCIÓN:
● 71 263 = 7 × 84 + 1 × 83 + 2 × 82 + 6 × 81 + 3 × 80
Calculando:
𝑁ú𝑚𝑒𝑟𝑜 𝑑𝑒𝑐𝑖𝑚𝑎𝑙 = 7 × 8 + 1 × 8
4 3 2 1 0
+2×8 +6×8 +3×8
= 7 × 4096 + 1 × 512 + 2 × 64 + 6 × 8 + 3 × 1
= 28672 + 512 + 128 + 48 + 3
= 29363
-El número 71 263 en base 8, es igual a 29363 en base 10
● 3, 147 = 3 × 83 + 1 × 82 + 4 × 81 + 7 × 80
8
Calculamos cada uno de los términos:
3
3×8 = 3 × 512 = 1536
2
1×8 = 1 × 64 = 64
1
lOMoARcPSD|41958473
4×8 = 4 × 8 = 32
0
7×8 =7×1=7
Sumando los valores obtenidos:
1536 + 64 + 32 + 7 = 1639
El número 3,147 en base 8 es igual a 1639 en base 10.
3.3. Realice su propio programa con base en la figura 3.11 y úselo para determinar el
épsilon de máquina de su computadora.
SOLUCIÓN:
Figura 19: Codificación en Matlab
3.4. En forma similar a la de la figura 3.11, escriba un programa corto para determinar el
número más pequeño, xmín, que utiliza la computadora que emplea con este libro.
Observe que su computadora será incapaz de diferenciar entre cero y una cantidad más
pequeña que dicho número.
lOMoARcPSD|41958473
SOLUCIÓN:
Figura 20: Codificación en Matlab
3.6. Evalué 𝑒−5 con el uso de dos métodos
−𝑥 𝑥2 𝑥3
𝑒 =1−𝑥+ 2 − 3¡ +....
y
−𝑥 1 1
lOMoARcPSD|41958473
𝑒= 𝑒𝑥 = 1−𝑥+ 𝑥22 − 𝑥33¡ +...
y comparelo con el valor verdadero de 6. 737947 × 10−3. Utilice 20 términos para evaluar
cada serie y calcule los errores relativos aproximado y verdadero como términos que se
agregan.
SOLUCIÓN:
Figura 21: Codificación y resultados obtenidos en Matlab
3.7. La derivada de 𝑓(𝑥) = 1/ 1 – 3𝑥( 2
) está dada por
6𝑥
(1−3𝑥2)2
¿Esperaría dificultades para evaluar esta función para x = 0.577? Inténtelo con aritmética
de 3 y 4 dígitos con corte.
lOMoARcPSD|41958473
SOLUCIÓN:
● Si evaluamos la función con aritmética de 3 dígitos con corte obtenemos losiguiente:
𝑓´(0. 577) = 6𝑥
22
(1−3𝑥 )
6𝑥 = 6(0. 577) = 3. 462
2 2
3𝑥 = 3(0. 577) = 0. 998
(1− 3𝑥 ) = (1 − 0. 998)
22 2
= 0. 000004
Entonces: 𝑓´(0. 577) = 0.000004
3.462
= 865500
● Y si evaluamos la función con aritmética de 4 dígitos con corte el resultado será:
𝑓´(0. 577) = 6𝑥
22
(1−3𝑥 )
6𝑥 = 6(0. 577) = 3. 462
2 2
3𝑥 = 3(0. 577) = 0. 9987
(1− 3𝑥 ) = (1 − 0. 9987) = 0. 00000169
22 2
Entonces: 𝑓´(0. 577) = 0.000001693.462 = 2 048 520. 71006
Por lo tanto, podemos decir que sí se esperan dificultades al evaluar la función con
aritmética de 3 y 4 dígitos con corte, ya que se puede ver que hay un gran error en ambos
resultados.
3.8
a) Evalúe el polinomioy = 𝑥3 − 5𝑥2 + 6𝑥 + 0. 55
en x = 1.37. Utilice aritmética de 3 dígitos con corte.Evalúe el error relativo porcentual.
b) Repita el inciso a) pero exprese a y como y = ((x –
5)x + 6)x + 0.55Evalúe el error y compárelo con el inciso
a).
SOLUCIÓN:
INCISO A: 1) Evaluando el polinomio 𝑦 en x=1,37 utilizando aritmética de 3 dígitos con
1
corte:
𝑦 = (1, 37)
3 2
− 5(1, 37) + 6(1, 37) + 0, 55
lOMoARcPSD|41958473
𝑦 = 2, 5713 − 9, 385 + 8, 22 + 0, 55
𝑦 = 1. 9563
2) Calculando el error relativo porcentual:
Fórmula:
𝐸𝑟𝑟𝑜𝑟 = |𝑉𝑎𝑙𝑜𝑟 𝑣𝑒𝑟𝑑𝑎𝑑𝑒𝑟𝑜 − 𝑣𝑎𝑙𝑜𝑟
𝑎𝑝𝑟𝑜𝑥𝑖𝑚𝑎𝑑𝑜||𝑉𝑎𝑙𝑜𝑟 𝑣𝑒𝑟𝑑𝑎𝑑𝑒𝑟𝑜| × 100
𝐸𝑟𝑟𝑜𝑟 = |1,9563−1,95||1,9563|× 100
𝐸𝑟𝑟𝑜𝑟 = 0, 0032%
INCISO B: 1) Evaluando el polinomio 𝑦 en x=1,37 utilizando aritmética de 3 dígitos con
2
corte:
𝑦 = ((1, 37 – 5)1, 37 + 6)1, 37 + 0. 55
𝑦 = ((− 3, 63)1, 37 + 6)1, 37 + 0. 55
𝑦 = (− 4, 974 + 6)1, 37 + 0. 55
𝑦 = (1, 0269)1, 37 + 0. 55
𝑦 = 1, 40685 + 0. 55
𝑦 = 1, 95685
2) Calculando el error relativo porcentual:
𝐸𝑟𝑟𝑜𝑟 = |𝑉𝑎𝑙𝑜𝑟 𝑣𝑒𝑟𝑑𝑎𝑑𝑒𝑟𝑜 − 𝑣𝑎𝑙𝑜𝑟
𝑎𝑝𝑟𝑜𝑥𝑖𝑚𝑎𝑑𝑜||𝑉𝑎𝑙𝑜𝑟 𝑣𝑒𝑟𝑑𝑎𝑑𝑒𝑟𝑜| × 100
𝐸𝑟𝑟𝑜𝑟 = |1,9563−1,95685||1,9563| × 100
𝐸𝑟𝑟𝑜𝑟 = 0, 0255%
El error relativo porcentual del inciso B es mayor que el inciso A, a partir de esto concluimos
que al utilizar la aritmética de 3 dígitos de corte hay una mayor pérdida de precisión.
3.9. Calcule la memoria de acceso aleatorio (RAM) en megabytes, que es necesaria para
almacenar un arreglo multidimensional de 20 × 40 × 120. Este arreglo es de doble
precisión, y cada valor requiere una palabra de 64 bits. Recuerde que una palabra de 64
bits = 8 bytes, y un kilobyte = 2^ 10 bytes.
Suponga que el índice comienza en 1.
lOMoARcPSD|41958473
Figura 22: Codificación en Matlab