Anda di halaman 1dari 9

Fsica Computacional.

Tarea 5
s Galda
mez Martnez.
Andre
9 Octubre 2015

1.- Usa interpolaci


on de Lagrange con un polinomio c
ubico para demostrar la regla de
3/8 de Simpson de integraci
on:
Z x3
3h
(f0 + 3f1 + 3f2 + f3 )
f (x) dx
8
x0
Para usar la aproximaci
on de Simpson usamos la interpolacion de Lagrange de la funcion f (x) en
un polinomio f3 (x) el cual obtendremos con una formula interpolante en cuatro puntos (x0 , f (x0 )),
(x1 , f (x1 )), (x2 , f (x2 )) y (x3 , f (x3 )). El polinomio interpolante f3 (x) sera de grado 3 y de acuerdo con
la formula de interpolaci
on de Lagrange, estara dada por
f3 (x) = f (x0 )
+f (x2 )
donde h =

(x x1 )(x x2 )(x x3 )
(x x0 )(x x2 )(x x3 )
+ f (x1 )
(x0 x1 )(x0 x2 )(x0 x3 )
(x1 x0 )(x1 x2 )(x1 x3 )

(x x0 )(x x1 )(x x3 )
(x x0 )(x x1 )(x x2 )
+ f (x3 )
(x2 x0 )(x2 x1 )(x2 x3 )
(x3 x0 )(x3 x1 )(x3 x2 )

(1)

x3 x0
3

= x1 x0 = x2 x1 = x3 x2 . Con esto expresamos la ecuacion (1).


Z x3 
(x x1 )(x x2 )(x x3 )
(x x0 )(x x2 )(x x3 )
f3 (x) =
f (x0 )
+ f (x1 )
(h)(2h)(3h)
(h)(h)(2h)
x0


(x x0 )(x x1 )(x x2 )
(x x0 )(x x1 )(x x3 )
+ f (x3 )
+f (x2 )
dx
(2h)(h)(h)
(3h)(2h)(h)
Z
Z
f (x0 ) x3
f (x1 ) x3
=
(x x1 )(x x2 )(x x3 ) dx +
(x x0 )(x x2 )(x x3 ) dx
6h3 x0
2h3 x0
Z
Z
f (x2 ) x3
f (x3 ) x3

(x

x
)(x

x
)(x

x
)
dx
+
(x x0 )(x x1 )(x x2 ) dx
0
1
3
2h3 x0
6h3 x0
= I0 + I1 + I2 + I3
Donde las integrales que tenemos son de la forma;
Z
Z
I = (x a)(x b)(x c) dx = (x2 ax bx + ab)(x c) dx
Haciendo integraci
on por partes;
1

(2)
(3)


2x(x c)2 a(x c)2 b(x c)2
dx

2
2
2



(x a)(x b)(x c)2 (x c)4
(x c)3
a b
I=

+ c+ +
2
4
2 2
3

I=

(x a)(x b)(x c)2

Z 

(4)

Con esta ultima expresi


on podemos encontrar las expresiones para las Ii que necesitamos, tendremos
entonces que;



 x3

f (x0 ) (x x1 )(x x2 )(x x3 )2 (x x3 )4
x1 x2
(x x3 )3

I0 =

+ x3 +
+

3
6h
2
4
2
2
3
x0
=





x1 x2
(x0 x3 )3
f (x0 ) (x0 x1 )(x0 x2 )(x0 x3 )2 (x0 x3 )4

x
+
+
3
6h3
2
4
2
2
3







f (x0 ) (h)(2h)(3h)2 (3h)4
3h
(3h)3
f (x0 )
81h4 27h4
4
=

+
=
9h
+
6h3
2
4
2
3
6h3
4
2
3
= f (x0 )h
8

(5)

Para I1 se tiene que;





 x3

f (x1 ) (x x0 )(x x2 )(x x3 )2 (x x3 )4
x0 x2
(x x3 )3

I1 =

+ x3 +
+

3
2h
2
4
2
2
3
x0






(x0 x3 )4
x0 x2
(x0 x3 )3
f (x1 )
(3h)4 (2h)(3h)3
f (x1 )

+ x3 + +
=

+
=
2h3
4
2
2
3
2h3
4
3


f (x1 ) 81h4
9
4
=
+ 18h = f (x1 )h
3
2h
4
8

(6)

Para I2 entonces;

I2 =




 x3

f (x2 ) (x x0 )(x x1 )(x x3 )2 (x x3 )4
x0 x1
(x x3 )3

x
+
+
3

3
2h
2
4
2
2
3
x0









f (x2 )
(x0 x3 )3
5h
(3h)3
(x0 x3 )4
x0 x1
f (x2 )
(3h)4

+
x
+
+
=

+
3
2h3
4
2
2
3
2h3
4
2
3


f (x2 )
81h4 45h4
9
=
+
(7)

= f (x2 )h
3
2h
4
2
8
2

Para I3 entonces;


 x3


f (x3 ) (x x0 )(x x1 )(x x2 )2 (x x2 )4
(x x2 )3
x0 x1

I3 =

+ x2 +
+

3
6h
2
4
2
2
3
x0




2
3
4
f (x3 ) (x3 x0 )(x3 x1 )(x3 x2 )
(x3 x2 )
(x0 x2 )
x0 x1
=

+ x2 +
+
3
6h
2
4
2
2
3







f (x3 ) (3h)(2h)(h2 ) (h)4
h3
(2h)4
(2h)3
3h
3h
=
+

6h3
2
4
2
3
4
2
3


f (x3 )
h4 h4
3
4
4
4
=
3h

+ 4h 4h = f (x3 )h
(8)
3
6h
4
2
8
Sustituyendo (5-8) en (4) tendremos que;


Z x3
3
f (x) h f (x0 ) + 3f (x1 ) + 3f (x2 ) + f (x3 )
8
x0

(9)

Que es la expresi
on de la regla 3/8 de Simpson.
2.-Considere la elipse dada por la siguiente ecuaci
on
 2  2
x
y
+
=1
2
5
a)Calcula num
ericamente el
area de esta elipse
b)Calcula num
ericamente su longitud de arco
a) Para poder calcular el
area de la elipse, hacemos la integral doble por el metodo de Riemman. El
metodo consiste en dividir el interior de la elipse en un cuadriculado, calcular el area de cada uno de
los peque
nos rect
angulos en el interior y sumarlas. El programa que hace esto es ej2a.f90 cuyo c
odigo
se muestra a continuaci
on;

program IntegralElipse
dimension x(0:10000),fx(0:10000),fx1(0:10000)
hx=0.01
do i=0,400
x(i)=i*hx-2
fx(i)=(5.*sqrt(4.-x(i)**2))/2.
fx1(i)=-fx(i)
end do
ny=200
area=0.
do i=0,399
hy=(fx(i)-fx1(i))/ny
do j=1,ny
area=area+hy*hx
end do
end do
write(*,*)El area es=, area
end

En este caso la el intervalo de x va desde -2 a 2. La particion se hace con la variable hx tomando


intervalos 400 intervalos de 0.01 de longitud. Los limites en yvan desde;


p
5p
5
y
4 x2 ,
4 x2
2
2
La particion en y (hy) se hizo tomando la diferencia entre estas expresiones para un determinado valor
de x y dividido entre 200. Con estos valores para las particiones el valor calculado de integral es;
A = 31,4130383
Donde el valor te
orico de la integral es 10. Para esta particion el valor obtenido no es tan malo, sin
embargo refinando la partici
on no necesariamente se obtiene un mejor valor para la integral.
b)Para calcular el valor de la longitud de arco de la elipse consideremos que la longitud de arco L esta
dada por;
s
 2
I
dy
L=
1+
dx
dx
Si consideramos
que la ecuaci
on de la elipse es de la forma (x/a)2 + (y/b)2 = 1, se tiene entonces que
q
2
2
2
b
y = a bx
por lo que;
a2
4


 1

 2
dy
2xb2
dy
x2 b2
1 a2 b2 x2 b2 2

=
dx
2
a2
a2
dx a2 (a2 x2 )
Ya que la longitud de arco sera 4 veces la del arco que se encuentra en el primera cuadrante, la
expresion que tenemos para la longitud sera entonces;
Z as
Z 2s
b2 x2
25x2
1+ 2 2
1+
L=4
dx = 4
dx
2
a (a x )
4(4 x2 )
0
0
Esta integral se calcula utilizando el programa ej2b.f90 cuyo codigo se muestra a continuacion. El programa utiliza el metodo 3/8 de Simpson para calcular la integral. Los detalles del codigo se explican
con mas detalle en el problema 3 de esta tarea.

program integracionlongitud
real :: x(0:1000000),o
a=0
!limite inferior
b=2
!limite superior
n=1000000
h=(b-a)/float(n)
o=0.0
do i=0,n-3,3
x1=a+i*h
x2=a+(i+1)*h
x3=a+(i+2)*h
x4=a+(i+3)*h
o=o+(3./8.)*(f(x1)+3*f(x2)+3*f(x3)+f(x4))*h
end do
write(*,*)La longitud de arco es=, 4*o
end
real function f(x)
f=sqrt(1.+((25.*x**2.)/(4.*(4.-x**2.))))
end function

El valor obtenido para la integral es;


L = 22,9848557
El valor que se obtiene usando Mathematica 9 para hacer la integral es, L = 8EllipticE[(21/4)] =
23,0131 donde EllipticE[m] es la funcion que da la integral elptica completa de m
5

3.- Calcula num


ericamente la siguiente integral usando la regla 3/8 de Simpson
Z
0

sen(x)
dx
x

El programa que calcula la integral anterior es ej3.f90. Cuyo codigo es el siguiente;

program integracionsimpson
real :: x(0:10000), o
a=0
!limite inferior
b=2
!limite superior
n=100000
h=(b-a)/float(n)
!partimos el segmento de b .a.a en 100000 intervalos de igual longitud
o=0.0
!simpson 3 octavos
do i=1,n-3,3
x1=a+i*h
x2=a+(i+1)*h
x3=a+(i+2)*h
x4=a+(i+3)*h
o=o+(3./8.)*(f(x1)+3*f(x2)+3*f(x3)+f(x4))*h
end do
write(*,*) .El valor de la integral es=,o
end
real function f(x)
f=sin(x)/x
end function

Es importante mencionar que se define la variable i, para que vaya desde 1 a n-3, de 3 en 3, esto se
hace porque se necesita un total de cuatro puntos en un mismo intervalo para hacer la aproximaci
on
3/8 de Simpson(Problema 1). La variable i empieza en 1 y no en 0 porque para i=0 la funcion f(x) se
in determina y el programa manda el error NaN. El resultado de la integral que se obtiene con este
programa es;
Z
0

sen(x)
dx = 1,60539210
x
6

4.-Sea;
Z
f (x) =

e2t sen(3t) dt

(10)

Determina los valores de la funci


on f (x) para x=1.5,1.6,1.7...4.0
El programa que determina los valores de las integrales que se nos pide es ej4.f90. El programa es
una adaptaci
on del c
odigo para calcular la integral por el metodo 3/8 de simpson donde usamos el
comando read y un do extra para ir cambiando el limite superior de la integral. El archivo de lectura
con los valores de los limites superiores es a.dat, los valores de la integrales se mandan al documento
resultados.dat. El c
odigo es el siguiente.
program integracionlista
real :: x(0:10000),c(0:10000),o
open(1,File=a.dat,status=old)
open(2,File=resultados.dat)
N=25
do i=0,N
read(1,*) c(i)
end do
do j=0,N
a=1
!limite inferior
b=c(j)
!limite superior
n=10000
h=(b-a)/float(n)
!partimos el segmento de b .a.a en 100000 intervalos de igual longitud
o=0.0
!simpson 3 octavos
do i=1,n-3,3
x1=a+i*h
x2=a+(i+1)*h
x3=a+(i+2)*h
x4=a+(i+3)*h

o=o+(3./8.)*(f(x1)+3*f(x2)+3*f(x3)+f(x4))*h
end do
write(2,*) c(j),o
end do
end
real function f(x)
f=exp(2*x)*sin(3*x)
end function

Los resultados se muestran en el cuadro 1.

Referencias
[1] Burden, R., Numerical Analysis , 9th Edition, U.E.A Cengage Learning,2010.

Cuadro 1: Resultados problema 4


x

f(x)

1.50000000
1.60000002
1.70000005
1.79999995
1.89999998
2.00000000
2.09999990
2.20000005
2.29999995
2.40000010
2.50000000
2.59999990
2.70000005
2.79999995
2.90000010
3.00000000
3.09999990
3.20000005
3.29999995
3.40000010
3.50000000
3.59999990
3.70000005
3.79999995
3.90000010
4.00000000

-3.89215326
-6.10370922
-8.73010731
-11.560113
-14.2463531
-16.2933674
-17.0631447
-15.8056841
-11.7228384
-4.07059622
7.69652557
23.7416592
43.6317825
66.1128082
88.9044266
108.555038
120.413155
118.770699
97.2478485
49.4698334
-29.9210701
-143.919357
-291.52066
-465.911469
-652.69281
-828.424133

Anda mungkin juga menyukai