Está en la página 1de 13

´ 

       ́      

GRADO EN INGENIERÍA MECÁNICA (GRUPOS 2 y 3)

  ́  

 2   ́    ( )

 201516

  :    ́ ́

1
Método de Newton

Se utiliza para resolver ecuaciones de una variable de la forma

() = 0
siendo  una función derivable. Supongamos que tenemos una raíz  de esta ecuación,
es decir () = 0. Entonces, en líneas generales, se puede construir una sucesión de puntos
0  1  2    de manera que su límite es la raíz  .
El punto 0 puede elegirse con cierta libertad.
Deben darse una serie de condiciones teóricas para que esto se verifique. Condiciones
que suelen darse si se toman ciertas medidas de precaución. No obstante , no hay una
total seguridad del método. Aún cumpliéndose dichas condiciones no está asegurada la
convergencia. La precaución que debemos tener es básicamente que el punto inicial 0 esté
próximo a la raíz. Para cerciorarnos de ello podemos utilizar el Teorema de Bolzano (puede
utilizarse porque  es continua), para encontrar un intervalo razonablemente pequeño en
cuyos extremos  experimente variación de signo. Así:

a) Hallaremos a  b (cercanos entre sí) tales que f(a) y f(b) tengan signos contrarios.
b) Después elegiremos 0 en dicho intervalo.
c) Hallamos la intersección (1  0) de la recta tangente en 0 a dicha curva con el eje OX.
La siguiente igualdad nos proporciona el valor de 1 :

 (0 )
1 = 0 −
 0 (0 )
d) Hallamos la intersección (2  0) de la recta tangente en 1 a dicha curva con el eje OX.
Determinamos 2 .

 (1 )
2 = 1 −
 0 (1 )
e) Hallamos la intersección (3  0) de la recta tangente en 2 a dicha curva con el eje OX.
Determinamos 3 .

 (2 )
3 = 2 −
 0 (2 )
... Y así sucesivamente. Para hacer los cálculos, lo más cómodo es definir una función
para realizar las iteraciones. Si escribimos:

()
() =  −
 0 ()
tendremos que para cada n se tiene que

 = (−1 )

2
Otra cuestión que puede condicionar la convergencia es que haya una raíz de  0 cerca de
 (o que el propio  sea también raíz de  0 ). Esto ocasionaría que el denominador pudiera
ser próximo a 0.
Una gráfica de la función nos puede facilitar la visualización de esta cuestión y saber si
estamos ante una de éstas situaciones.
La gráfica sirve además para tener una aproximación visual de la raíz.

Ejemplo 1 :

Obtengamos, de modo aproximado, la raíz de la ecuación


3 + 3 + 6 = 0
Las gráficas de la función () = 3 + 3 + 6 aplicando varios zoom sucesivos, para
aproximarnos a la única raíz nos muestran que ésta se encuentra entre −1 4 y −1 2 .
Definimos la función

()
() =  −
 0 ()
Así, si elegimos por ejemplo 0 = −1 4 , tendremos:
1 = (0 ) = −1 29369; 2 = (1 ) = −1 28793; 3 = (2 ) = −1 28791; 4 =
(3 ) = −1 28791;
Y vemos que a partir de 3 se mantienen fijos esos primeros cinco decimales que son los
de la raíz. Esto nos dice que el valor aproximado de la raíz  es −1 28791 .

El comando newton de Maxima:

Dicho comando sirve para calcular directamente la solución de una ecuación por el método
de Newton. Se debe cargar primero el paquete newton1. Su formulación es:
load(newton1)
newton( (), 0 ,) donde 0 es el valor inicial y  una cota de | ()| que debemos
conseguir para considerar  como raíz aproximada de f(x) .

En nuestro ejemplo anterior pondríamos así :

load(newton1)
newton( x^3 + 3*x + 6, x, -1.4, 0.001)
{x - -1.28791}
Y, como vemos, nos sale nuestra raíz.

Nota : Esta raíz es la única de la ecuación, como consecuencia del Teorema de Rolle,
teniendo en cuenta que la derivada de la función es 32 + 3 que no se anula en ningún punto.

Ejemplo 2.-
Utilizando el método de Newton vamos a obtener la solución positiva de la ecuación
1 +  =  :
En primer lugar definimos () = 1 +  − 

3
Las gráficas de () en intervalos cada vez más pequeños conteniendo a la raíz positiva,
muestran que dicha raíz está próxima a 0 5 Usamos el comando newton :
newton(h(x) , x, 0.5, 0.001)
{x - 0.601367}
que nos da el valor aproximado de la raíz.
Como ya se cargó newton1 en el primer ejemplo, no es necesario volver a cargarlo en
tanto no se reinicie el programa.

Ejemplo 3
Utilizando el método de Newton vamos a obtener la mayor solución de la ecuación sin
 =  :
En primer lugar definimos () = sin  − 
Las gráficas de () en intervalos cada vez más pequeños conteniendo a la mayor raíz ,
muestran que dicha raíz está próxima a −3 (entre -3,5 y -3). Usamos el comando newton:
newton(i(x), x, -3, 0.0001)
{x - -3.18306
que nos da el valor aproximado de la raíz.

Ejercicio 1.-
Obtén las raíces del polinomio 3 +52 −3−6. Utilizando el método de Newton observa
qué solución sale partiendo de:
a) 0 = −7
b) 0 = 8
c) 0 = 5

Ejercicio 2.-
Obtén las raíces del polinomio −4 + 72 − 3 − 6. Utilizando el método de Newton
observa qué solución sale partiendo de:
a) 0 = −4
b) 0 = 0 5
c) 0 = 1
d) 0 = 5

Ejercicio 3.-
Obtén las soluciones de la ecuación () = 2

Ejercicio 4.-
Justifica que la ecuación () = − tiene una única solución y determínala.

4
Integración numérica

Cuando solamente se conocen algunos valores particulares de una función () o cuando
siendo ésta conocida, no se dispone de una primitiva expresada convenientemente,
R se utilizan
métodos numéricos para obtener un valor aproximado de la integral  () .
Supondremos dividido el intervalo [ ] en  partes iguales de longitud  = −

mediante
los puntos  = 0  1  2    −1   =  , y supondremos conocidos los valores
0 =  (0 ) 1 = (1 )    = ( ) .

Regla de los trapecios compuesta

a) Determinamos la función de interpolación lineal () que cumple (0 ) = 0  (1 ) = 1


. Por pasar por los puntos (0  0 ) (1  1 ) la gráfica de () es una recta de pendiente 11 −0
−0
. Por lo tanto es () = 0 + 11 −0
−0
( − 0 ) .
R1
b) Calculamos () :
0
R1 R1 ³ ´
() = 0 + 11 −0
−0
( − 0 )  = 2 (0 + 1 ) .
0 0
R1
Nota.- Si 0  1 ≥ 0 () coincide con el área del trapecio rectángulo de bases
0
paralelas al eje  de longitudes 0  1 , y altura situada en el eje  coincidente con el
intervalo [0  1 ] de longitud  .
R
c) Consideramos ahora la integral 
() que queremos aproximar.

R R1 R2 R



() = () +  () +  + ()
0 1 −1

En cada una de las integrales sumandos reemplazamos () por la función de interpo-
lación lineal correspondiente a (0  0 ) (1  1 ) en la primera, a (1  1 ) (2  2 ) en la segunda,
.... , a (−1  −1 ) (   ) en la última, obteniendo la suma 2 (0 + 1 ) + 2 (1 + 2 ) +  +

(
2 −1
+  ) =

= [0 + 21 + 22 +  + 2−1 +  ]
2

Nota.- Si () ≥ 0 ∀ ∈ [ ] el método de los trapecios consiste en aproximar el área
bajo la curva por la suma de las áreas de los trapecios rectángulos con altura de longitud 
coincidente con el intervalo [−1   ] del eje  con las dos bases paralelas al eje  de
longitudes −1   , y con lado oblicuo igual a la cuerda que une los puntos de la gráfica de
coordenadas (−1  −1 ) (   ).

5
R3 
Ejemplo.- Aproximar 
 con el método de los trapecios compuesto dividiendo el
1
intervalo [1 3] :
a) En 5 partes iguales.
b) En 10 partes iguales.
c) En 50 partes iguales.
Comparar el resultado de cada apartado, con el que se obtiene con el comando integrate
de Maxima.

A continuación se reproducen las sentencias utilizadas para resolver el apartado b) del


ejemplo. Notar que para los demás apartados basta cambiar en la línea primera el valor de
n y activar a continuación todas las demás. Para cualquier otro ejemplo o ejercicio, será
suficiente con modificar las líneas en las que se introducen los valores de    () y
activar las demás instrucciones.

% i1 n: 10
% i2 a: 1
% i3 b: 3
% i4 A : makelist(2, i, 1, n + 1)
% i5 f(x): = exp(x)/x
% i6 p: makelist(a + i*((b-a)/n), i, 0, n)
% i7 q: makelist(f(p[i]), i, 1, n + 1)
% i8 h: (b-a)/n
% i9 T: float((h/2)*((A.q) - q[1] - q[n + 1]))
% o9 8.053574483704775
% i10 quad_qag(exp(x)/x,x,1,3,1)
% o10 [8.038714754269481,4.0464859492404957*10^-9,15,0]

Siendo quad_qag un comando para integración numérica en Maxima. El 1 que se coloca


detrás de los extremos 1, 3, del intervalo de la integral es una opción elegida desde el 1 al
6 según el método numérico de cuadratura empleado. De los 4 números que aparecen ene
el resultado, el primero es el valor aproximado de la integral (comparar con T), el segundo
es el error absoluto estimado de la integración, el tercero el número de evaluaciones del
integrando, y el cuarto, un código de error que puede valer l 0, 1, 2, 3, 6. Cuando el valor es
0, significa que no ha habido ningún problema en el proceso.
R2 √
Ejercicio.- Aproximar 3 + 1 con el método de los trapecios compuesto dividi-
−1
endo el intervalo [−1 2] :
a) En 8 partes iguales.
b) En 15 partes iguales.
c) En 30 partes iguales.
Comparar el resultado de cada apartado, con el que se obtiene con el comando integrate
(o quad_qag si fuera necesario) de Maxima.

6
Regla de Simpson compuesta

a) Determinaremos la función de interpolación cuadrática () que cumple (0 ) = 0 


(1 ) = 1  (2 ) = 2 . () puede expresarse en la forma:

() =  + ( − 0 ) + ( − 0 )( − 1 )


para ciertos números reales    , por ser {1 ( − 0 ) ( − 0 )( − 1 )} una base del
espacio vectorial real P2 de los polinomios con coeficientes reales de grado menor o igual que
dos. Determinemos   y  :
(0 ) =  = 0
(1 ) =  + (1 − 0 ) = 1 ⇒  = 11 − 0
−0
= 1 −

0

(2 ) = 0 + 1 −

0
(2 − 0 ) + (2 − 0 )(2 − 1 ) = 2 ⇒ 2 − 0 = 1 −

0
2 + 22 ⇒
2 − 21 + 0 = = 22 ⇒  = 2 −2 1 +0
22
. Y así es:
1 − 0 2 − 21 + 0
() = 0 + ( − 0 ) + ( − 0 )( − 1 )
 22
R2
b) Calculemos () . Hacemos el cambio de variables  =  + 1 . Tendremos
0
entonces:
R2 R R ¡ ¢
() = ( + 1 ) = 0 + 1 −

0
( + ) + 2 −21 +0
22 ( + )  = [0 ]− +

h 0 2
i − h 3 −2 i
1 −0 (+)
 2
+ 2 −21 +0
22

3
+  2 = 3 [0 + 41 + 2 ]
− −

R
c) Supondremos que n es par, y sea  () la integral que queremos aproximar.

R R2 R4 R
() =  () + () +  +  () . En cada una de las integrales
 0 2 −2
sumando, reemplazamos () por la función de interpolación cuadrática correspondiente a
los puntos (0  0 ) (1  1 ) (2  2 ) en la primera, a (2  2 ) (3  3 ) (4  4 ) en la segunda,
.... , a (−2  −2 ) (−1  −1 ) (   ) en la última. Obteniendo así la suma:

[ +41 +2 ]+ 3 [2 +43 +4 ]++ 3 [−2 +4−1 + ] = 3 [0 +41 +22 +43 +24 +
3 0
45 + 26 +  + 2−2 + 4−1 +  ] =

[ + 4 + 2 ]
=
3
donde  representa la suma de los valores extremos,  representa la suma de los valores de
índice impar (que son los valores de lugar par por ser 0 el primer subíndice), y  representa
la suma de los valores de índice par (que son los valores de lugar impar ).

R3 
Ejemplo.- Aproximar 
 con el método de Simpson compuesto dividiendo el inter-
1
valo [1 3] :
a) En 10 partes iguales.

7
b) En 50 partes iguales.
Comparar el resultado de cada apartado, con el que se obtiene con el comando quad_qag
de Maxima (ver ejemplo anterior).

A continuación se reproducen las sentencias utilizadas para resolver el apartado a) del


ejemplo. Notar que para el apartado b) basta cambiar en la línea primera el valor de n y
activar a continuación todas las demás. Para cualquier otro ejemplo o ejercicio, será suficiente
con modificar las líneas en las que se introducen los valores de     () y activar las
demás instrucciones.

% i1 n: 10
% i2 a: 1
% i3 :b: 3
% i4 A: makelist((-1)^i + 3, i, 1, n + 1)
% o4 {2, 4, 2, 4, 2, 4, 2, 4, 2, 4, 2}
% i5 f(x):= exp(x)/x
% i6 p: makelist(a + i*((b-a)/n), i, 0, n)
% o6 {1, 6/5, 7/5, 8/5, 9/5, 2, 11/5, 12/5, 13/5, 14/5, 3}
% i7 q: makelist(f(p[i]), i, 1, n + 1)
% i8 h : (b-a)/n
% o8 (1/5)
% i9 S: float((h/3)*(A.q - q[1] - q[n + 1]))
% o9 8.038785083553591
% i10 quad_qag(exp(x)/x,x,1,3,1)
% 10 [8.038714754269481,4.0464859492404957*10^-9,15,0]

R2 √
Ejercicio.- Aproximar 3 + 1 con el método de Simpson compuesto dividiendo
−1
el intervalo [−1 2] :
a) En 10 partes iguales.
b) En 50 partes iguales.
Comparar el resultado de cada apartado, con el que se obtiene con el comando quad_qag
de Maxima.

8
Polinomio de interpolación de Lagrange

Denominamos interpolación a la obtención de nuevos puntos partiendo del conocimiento


de un conjunto finito de puntos.
En algunas ciencias es frecuente disponer de un cierto número de puntos obtenidos por
muestreo o a partir de un experimento y pretender construir una función que los ajuste.
Otro problema estrechamente ligado con el de la interpolación es la aproximación de una
función complicada por una más simple. Si tenemos una función cuyo cálculo resulta costoso,
podemos partir de un cierto número de sus valores e interpolar dichos datos construyendo
una función más simple. En general, por supuesto, no obtendremos los mismos valores
evaluando la función obtenida que si evaluásemos la función original, si bien dependiendo de
las características del problema y del método de interpolación usado la ganancia en eficiencia
puede compensar el error cometido.
En todo caso, se trata de, a partir de n+1 puntos (   ), obtener una función f que
verifique ( ) =  para  = 0 1   
Dentro de las formas de interpolación que se utilizan con frecuencia una de ellas es
la interpolación polinómica. Se trata de que la función interpoladora anterior, f, sea un
polinomio (que pase por los puntos dados). Y de entre ellas aquí vamos a ver la interpolación
de Lagrange. El polinomio interpolador de Lagrange, L, que pasa por n+1 puntos dados,
tiene grado menor o igual que n, y se construye del siguiente modo:
A partir de los polinomios de Lagrange  () para  = 0 1   definidos por:
 () = ((− 0 )(−1 )(−−1 )(−+1 )(− )
−0 )( −1 )( −−1 )( −+1 )( − )
construimos el polinomio interpolador
() determinado por la igualdad:
() = 0 0 () + 1 1 () +   () +  +   () .
Como los polinomios de Lagrange cumplen la condición  ( ) = 1 si  = , y 0 en caso
contrario, el polinomio interpolador () verifica:
( ) =  para  = 0 1 2   .

Ejemplo a .-
Hallemos el polinomio interpolador para los puntos 0 = (0 0) 1 = (1 1) 2 = (3 2)
Definimos los polinomios de Lagrange:
(−1)∗(−3) (−0)∗(−3) (−0)∗(−1)
0 () := (0−1)∗(0−3)
; 1 () := (1−0)∗(1−3)
; 2 () := (3−0)∗(3−1)

y finalmente el polinomio interpolador de Lagrange:


() := 0 ∗ 0 () + 1 ∗ 1 () + 2 ∗ 2 () . Para desarrollarlo y simplificarlo
escribimos:
ratsimp(La(x))
2 −7
obteniendo: −  6
.
(ratsimp es para simplificar expresiones racionales. Con fullratsimp la simplificación es
a veces más eficaz, pero a costa de más tiempo).

9
Ahora comprobamos que el polinomio es el que buscábamos. Escribimos:
La(0); La(1); La(3); obteniendo:
0
1
2
que son los valores esperados.
Ejemplo b.-
Hallemos el polinomio interpolador para los puntos (0, 2), (1, 1) y (2, 0) Definimos los
polinomios de Lagrange:
0 () := (−1)∗(−2)
(0−1)∗(0−2)
; 1 () := (−0)∗(−2)
(1−0)∗(1−2)
; 2 () := (−0)∗(−1)
(2−0)∗(2−1)

y finalmente el polinomio interpolador de Lagrange:


() := 2 ∗ 0 () + 1 ∗ 1 () + 0 ∗ 2 () . Para desarrollarlo y simplificarlo
escribimos:
ratsimp(Lb(x))
obteniendo: 2 −  .
En este caso el polinomio es de grado menor que dos por estar los tres puntos alineados.
Ahora comprobamos que el polinomio es el que buscábamos. Escribimos:
Lb(0); Lb(1); Lb(2); obteniendo: 2, 1, 0
como esperábamos.
Ejemplo c.-
Hallemos el polinomio interpolador para los puntos (1, -3), (3, -1), (-2, 0) y (4, 2).
Definimos los polinomios de Lagrange:
(−3)∗(+2)∗(−4) (−1∗(+2)∗(−4) (−1)∗(−3)∗(−4)
0 () := (1−3)∗(1+2)∗(1−4)
; 1 () := (3−1)∗(3+2)∗(3−4)
; 2 () := (−2−1)∗(−2−3)∗(−2−4)
;
(−1)∗(−3)∗(+2)
3 () := (4−1)∗(4−3)∗(4+2)

Y finalmente el polinomio interpolador de Lagrange () = −3 ∗ 0 () − 1 () + 0 ∗


2 () + 2 ∗ 3 ()
ratsimp(Lc(x))
3 2
obteniendo 2 +14 45−37−114 .
Lc(1)
Lc(3)
Lc(-2)
Lc(4)
Resultando: -3, -1 , 0 , 2
Como vemos el polinomio cumple con lo previsto, pasa por los 4 puntos dados (1, -3), (3,
-1), (-2, 0) y (4, 2) .
Ejemplo d.-

10
3 2
Hallemos el polinomio interpolador de la función () =  1+ − +6
2 que pasa por los puntos
(-1, f(-1)), (0, f(0)), (1, f(1)), (2, f(2)), es decir,
(-1, 2), (0, 6), (1, 3), (2, 2). Definimos los polinomios de Lagrange:
(−0)∗(−1)∗(−2) (+1)∗(−1)∗(−2) (+1)∗(−0)∗(−2)
0 () := (−1−0)∗(−1−1)∗(−1−2)
; 1 () := (0+1∗(0−1)∗(0−2)
; 2 () := (1+1)∗(1−0)∗(1−2)
;
(+1)∗(−0)∗(−1)
3 () := (2+1)∗(2−0)∗(2−1)

Y finalmente el polinomio interpolador de Lagrange: () = 2 ∗ 0 () + 6 ∗ 1 () +


3 ∗ 2 () + 2 ∗ 3 () .
Escribimos:
ratsimp(Ld(x))
Y obtenemos:
33 −72 −2+12
2
Ld(-1)
Ld(0)
Ld(1)
Ld(2)
Resultando: 2, 6, 3, 2 .
Como vemos el polinomio cumple con lo previsto, pasa por los 4 puntos dados, (-1, 2),
(0, 6), (1, 3), (2, 2) .
Ejercicio 1
Calcular el polinomio interpolador de Lagrange que pasa por los puntos (3, 1), (2, 3),
(-1, 2), (-2, 0).

Ejercicio 2
Calcular el polinomio interpolador de Lagrange que pasa por los puntos (1, 1), (2, 2), (3,
3), (-2, 0), (4, 1) .

Ejercicio 3
Calcular el polinomio interpolador de Lagrange que pasa por los puntos (3, f(3)), (-2,
f(-2)), (-1, f(-1)), (0, f(0)), donde f(x) =  .

Ejercicio 4
Se sabe que una función f pasa por los puntos (0, 5), (3, -2), (1, -1), (4, 0) . Utilizar el
polinomio interpolador de Lagrange que pasa por dichos puntos para estimar el valor de la
función en  = 2 .

Ejercicio 5
Utilizar el polinomio interpolador de Lagrange que pasa por los puntos (3, f(3)), (2, f(2)),
32
(-1, f(-1)), (1, f(1)), donde f (x) = +10 para estimar el valor f(4). Comparar el valor de la
aproximación con el valor real.

11
Ecuaciones Diferenciales

La solución general de las ecuaciones diferenciales de primero y segundo orden se


obtiene con la instrucción ode2 . La forma de empleo es:

ode2(ecuación, variable dependiente, variable independiente)


Ejemplo 1.- ode2( ’diff(y,x) = y/x, y, x) . La tilde antes de diff se encuentra en el
teclado bajo el símbolo ? .
Ejemplo 2.- ode2( ’diff(y,x,2)-5* ’diff(y,x)+6*y = x, y, x);

Para resolver problemas de valor inicial o de condiciones iniciales, se utilizan los


comandos ic1, y ic2, según se trate de ecuaciones de primer o de segundo orden. La escritura
es :

ic1(ode2(ecuación, variable dependiente, variable independiente), x = a, y = b)

o también:

ic1(%, x = a, y = b)
haciendo referencia con % a la última salida con la solución general de la ecuación de
primer orden de que se trate. Para las ecuaciones de orden dos, la escritura es muy similar:

ic2(ode2(ecuación, variable dependiente, variable independiente), x = a, y = b, ’diff(y, x)= c)

o también:

ic2(%, x = a, y = b, ’diff(y, x)= c)


haciendo referencia con % a la última salida con la solución general de la correspondiente
ecuación de segundo orden.
Ejemplo 3.- ic1(ode2( ’diff(y,x) = y/x, y, x), x = 1, y = 5)
Ejemplo 4.- ic2(ode2( ’diff(y,x,2)-5* ’diff(y,x)+6*y = x, y, x), x = 1, y = 3, ’diff(y,x)
= 0)
La función bc2 se emplea para resolver problemas de condiciones de frontera para
ecuaciones difrenciales de segundo orden. La forma de empleo es:

bc2(ode2(ecuación,variabledependiente,variableindependiente),x=val1,y=val1,x=val2,y=val2)

o bien

bc2(%,x=val1,y=val1,x=val2,y=val2)

12
haciendo referencia con % a la última salida con la solución general de la correspondiente
ecuación de segundo orden.

Ejemplo 5.- bc2(ode2( ’diff(y,x,2)-5* ’diff(y,x)+6*y = x, y, x), x = -1, y = 3, x=1,y=-2)

Ejercicio 1.- Resuelve las ecuaciones diferenciales:


) ( +  2 ) − 2 = 0
)  0 +  =  2 ln()
)  ” + 2 0 = 3(2) + cos()
) 2  ” +  0 −  = 0
) 2  ” −  0 +  = 2
Ejercicio 2.- Resuelve los problemas de condiciones iniciales:
)  ” +  = 2 ∗ cos() (0) = 1  0 (0) = 0
)  ” − 2 ∗  0 + 2 ∗  = 4  cos() () =    0 () = 

13

También podría gustarte