agfgs

17
7/21/2019 agfgs http://slidepdf.com/reader/full/agfgs 1/17  La integración de Romberg es una 'ampliación' de la extrapolación de Richardson, la cual es una 'mejora' de la integración por trapecios. La integración por trapecios consiste en hallar una aproximación de la integral ajustando trapecios a ella y calculando su área. h representa la base de cada trapecio, viene dada por (b-a)/n siendo n el número de trapecios. A más trapecios, mejor aproximación. La extrapolación de Richardson deduce a partir del error de la de los trapecios una mejor aproximación, dada por: (TV es la mejor aproximación, AVh/2 la aproximación con 2n trapecios y AVh con n trapecios. Es decir, a partir de 2 aproximaciones con trapecios optiene una mejor. ) La integración de Romberg simplemente optiene más aproximaciones a partir de otras aproximaciones, como se ve en este esquema: Considerando las nuevas generaciones de aproximaciones del método de romberg como número de iteracciones, para tener 10 necesitaremos calcular 10 aproximaciones por trapecios con: n=1, n=2, n=2 2 , n=2 3 ,.. n=2 10  

Upload: aodsijfojfgoeqijgo

Post on 05-Mar-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 1/17

 

La integración de Romberg es una 'ampliación' de la extrapolación de Richardson, la cual es una

'mejora' de la integración por trapecios.

La integración por trapecios consiste en hallar una aproximación de la integral ajustando trapecios a

ella y calculando su área.

h representa la base de cada trapecio, viene dada por (b-a)/n siendo n el número de trapecios. A

más trapecios, mejor aproximación.

La extrapolación de Richardson deduce a partir del error de la de los trapecios una mejor

aproximación, dada por:

(TV es la mejor aproximación, AVh/2  la aproximación con 2n trapecios y AVh  con n trapecios.

Es decir, a partir de 2 aproximaciones con trapecios optiene una mejor. )

La integración de Romberg simplemente optiene más aproximaciones a partir de otras

aproximaciones, como se ve en este esquema:

Considerando las nuevas generaciones de aproximaciones del método de romberg como número de

iteracciones, para tener 10 necesitaremos calcular 10 aproximaciones por trapecios con:

n=1, n=2, n=22, n=23,.. n=210 

Page 2: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 2/17

A partir de estos 10 trapecios vamos calculando nuevas aproximaciones hasta que quede sólo 1.

Python:

(hay una foto del script completo al final)

Importamos numpy y matplotlib, numpy sirve entre otras cosas para calcular funciones

como seno y coseno y construir arrays eficientes y fáciles de operar. matplotlib es para

graficar funciones/puntos.

Ahora definimos una función que devuelva las funciones del enunciado:

(dependiendo de t devuelve una o otra)

Y la función para integrar por trapecios:

I representa el intervalo a integrar, como vimos antes h = (b-a)/2, esta función es

básicamente la función representada antes en la foto.

Finalmente definimos la integración de Romberg:

Page 3: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 3/17

 

nn representa el número de intervalos, richarson es la fórmula de richarson.

romb es un array que va a contener las aproximaciones en cada iteraccion.

la primera la definimos con trapz, 100 es el número inicial de trapecios, y 2**x los

22,23.. que vimos antes.

ahora romb tiene 10 aproximaciones de trapecios, con esto ya puede utilizarse la integración

de romberg:

el ciclo for representa cada iteraccioón, dentro del for romb se redefine como la 'i' nueva

iteracción.

los prints son simplemente para imprimir los resultados en la consola

Page 4: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 4/17

 

C y S van a contener las aproximaciones calculadas, con el for metemos los valores en ellas y

con plot las representamos. También definimos el intervalo I

1)2)

Ejecutamos el programa y nos da:

C: w=0

Iteraccion 1

[ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]

Iteraccion 2:

[ 0. 0. 0. 0. 0. 0. 0. 0. 0.]

Iteraccion 3:

[ 0. 0. 0. 0. 0. 0. 0. 0.]

Iteraccion 4:

[ 0. 0. 0. 0. 0. 0. 0.]

Iteraccion 5:

[ 0. 0. 0. 0. 0. 0.]

Iteraccion 6:

[ 0. 0. 0. 0. 0.]

Iteraccion 7:

[ 0. 0. 0. 0.]

Iteraccion 8:

[ 0. 0. 0.]

Iteraccion 9:

[ 0. 0.]

Iteraccion 10:

[ 0.]

(Como era de esperar) la integral de 0 a 0 es F(0)-F(0) = 0

C: w=1

Iteraccion 1

[ 0.78893305 0.78465225 0.78233298 0.78112828 0.78051462 0.78020495

0.78004941 0.77997147 0.77993245 0.77991293]

Page 5: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 5/17

  Iteraccion 2:

[ 0.78322531 0.7815599 0.78072671 0.78031006 0.78010173 0.77999757

0.77994548 0.77991944 0.77990642]

Iteraccion 3:

[ 0.78100476 0.78044898 0.78017118 0.78003229 0.77996284 0.77992812

0.77991076 0.77990208]

Iteraccion 4:

[ 0.78026373 0.78007858 0.77998599 0.7799397 0.77991655 0.77990497

0.77989919]

Iteraccion 5:

[ 0.78001686 0.77995513 0.77992426 0.77990883 0.77990112 0.77989726]

Iteraccion 6:[ 0.77993455 0.77991398 0.77990369 0.77989854 0.77989597]

Iteraccion 7:

[ 0.77990712 0.77990026 0.77989683 0.77989512]

Iteraccion 8:

[ 0.77989797 0.77989569 0.77989454]

Iteraccion 9:

[ 0.77989492 0.77989416]

Iteraccion 10:

[ 0.77989391]

C: w=2

Iteraccion 1

[ 0.46902545 0.47835111 0.48326568 0.48575494 0.4870036 0.48762843

0.48794091 0.48809716 0.48817528 0.48821434]

Iteraccion 2:

[ 0.48145966 0.48490388 0.4865847 0.48741982 0.48783671 0.48804507

0.48814924 0.48820132 0.48822736]

Iteraccion 3:

[ 0.48605195 0.48714497 0.48769819 0.48797567 0.48811452 0.48818396

0.48821868 0.48823604]

Iteraccion 4:

[ 0.48750931 0.4878826 0.48806816 0.48816081 0.48820711 0.48823026

0.48824183]

Page 6: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 6/17

  Iteraccion 5:

[ 0.48800702 0.48813002 0.48819169 0.48822254 0.48823797 0.48824569]

Iteraccion 6:

[ 0.48817102 0.48821224 0.48823283 0.48824312 0.48824826]

Iteraccion 7:

[ 0.48822598 0.48823969 0.48824655 0.48824998]

Iteraccion 8:

[ 0.48824426 0.48824883 0.48825112]

Iteraccion 9:

[ 0.48825036 0.48825188]

Iteraccion 10:[ 0.48825239]

C: w=3

Iteraccion 1

[ 0.61075268 0.61427125 0.61159343 0.6090628 0.60749369 0.60663276

0.60618315 0.60595357 0.60583758 0.60577928]

Iteraccion 2:

[ 0.6154441 0.61070083 0.60821925 0.60697066 0.60634578 0.606033290.60587704 0.60579891 0.60575985]

Iteraccion 3:

[ 0.60911973 0.60739206 0.60655446 0.60613748 0.60592913 0.60582496

0.60577287 0.60574683]

Iteraccion 4:

[ 0.60681617 0.60627526 0.60599849 0.60585967 0.60579023 0.60575551

0.60573815]

Iteraccion 5:

[ 0.60609495 0.60590623 0.6058134 0.60576709 0.60574394 0.60573236]

Iteraccion 6:

[ 0.60584333 0.60578245 0.60575165 0.60573622 0.60572851]

Iteraccion 7:

[ 0.60576216 0.60574138 0.60573108 0.60572593]

Iteraccion 8:

[ 0.60573445 0.60572764 0.60572422]

Page 7: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 7/17

  Iteraccion 9:

[ 0.60572537 0.60572308]

Iteraccion 10:

[ 0.60572231]

C: w=4

Iteraccion 1

[ 0.48155437 0.48150098 0.4888173 0.49347522 0.49593219 0.4971768

0.49780113 0.49811355 0.49826978 0.49834791]

Iteraccion 2:

[ 0.48148319 0.49125607 0.49502785 0.49675119 0.49759167 0.49800924

0.49821768 0.49832186 0.49837395]

Iteraccion 3:

[ 0.4945137 0.49628512 0.49732563 0.49787184 0.49814843 0.49828717

0.49835659 0.49839131]

Iteraccion 4:

[ 0.49687559 0.49767247 0.49805391 0.49824062 0.49833341 0.49837973

0.49840288]

Iteraccion 5:

[ 0.49793809 0.49818105 0.49830286 0.49836434 0.49839517 0.4984106 ]

Iteraccion 6:

[ 0.49826204 0.49834346 0.49838484 0.49840545 0.49841574]

Iteraccion 7:

[ 0.49837061 0.49839863 0.49841232 0.49841918]

Iteraccion 8:

[ 0.49840797 0.49841689 0.49842146]

Iteraccion 9:

[ 0.49841986 0.49842298]

Iteraccion 10:

[ 0.49842402]

C: w=5

Iteraccion 1

[ 0.52511449 0.56065844 0.5687187 0.56800001 0.566284 0.56507551

0.56438288 0.56401442 0.56382465 0.56372838]

Page 8: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 8/17

  Iteraccion 2:

[ 0.57250642 0.57140546 0.56776045 0.565712 0.56467268 0.56415201

0.5638916 0.5637614 0.56369629]

Iteraccion 3:

[ 0.57103847 0.56654545 0.56502918 0.56432624 0.56397845 0.5638048

0.56371799 0.56367459]

Iteraccion 4:

[ 0.56504777 0.56452376 0.56409192 0.56386252 0.56374692 0.56368906

0.56366012]

Iteraccion 5:

[ 0.5643491 0.56394797 0.56378606 0.56370838 0.56366977 0.56365048]

Iteraccion 6:[ 0.56381426 0.56373209 0.56368249 0.5636569 0.56364405]

Iteraccion 7:

[ 0.5637047 0.56366596 0.56364837 0.56363976]

Iteraccion 8:

[ 0.56365305 0.5636425 0.5636369 ]

Iteraccion 9:

[ 0.56363899 0.56363503]

Iteraccion 10:

[ 0.56363371]

S: w=0

Iteraccion 1

[ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]

Iteraccion 2:

[ 0. 0. 0. 0. 0. 0. 0. 0. 0.]

Iteraccion 3:

[ 0. 0. 0. 0. 0. 0. 0. 0.]

Iteraccion 4:

[ 0. 0. 0. 0. 0. 0. 0.]

Iteraccion 5:

[ 0. 0. 0. 0. 0. 0.]

Page 9: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 9/17

  Iteraccion 6:

[ 0. 0. 0. 0. 0.]

Iteraccion 7:

[ 0. 0. 0. 0.]

Iteraccion 8:

[ 0. 0. 0.]

Iteraccion 9:

[ 0. 0.]

Iteraccion 10:

[ 0.]

S: w=1

Iteraccion 1

[ 0.41828337 0.4282622 0.43325953 0.4357592 0.43700915 0.43763415

0.43794665 0.4381029 0.43818102 0.43822008]

Iteraccion 2:

[ 0.43158848 0.43492531 0.43659242 0.43742581 0.43784248 0.43805081

0.43815498 0.43820706 0.43823311]

Iteraccion 3:[ 0.43603758 0.43714812 0.4377036 0.43798137 0.43812026 0.4381897

0.43822443 0.43824179]

Iteraccion 4:

[ 0.4375183 0.43788876 0.43807396 0.43816655 0.43821285 0.438236

0.43824757]

Iteraccion 5:

[ 0.43801225 0.43813569 0.43819742 0.43822828 0.43824372 0.43825143]

Iteraccion 6:

[ 0.43817684 0.43821799 0.43823857 0.43824886 0.438254 ]

Iteraccion 7:

[ 0.43823171 0.43824543 0.43825229 0.43825572]

Iteraccion 8:

[ 0.43825 0.43825457 0.43825686]

Iteraccion 9:

[ 0.4382561 0.43825762]

Page 10: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 10/17

  Iteraccion 10:

[ 0.43825813]

S: w=2

Iteraccion 1

[ 0.35104447 0.34534148 0.34389879 0.34353662 0.34344593 0.34342324

0.34341757 0.34341615 0.3434158 0.34341571]

Iteraccion 2:

[ 0.34344048 0.3434179 0.3434159 0.3434157 0.34341568 0.34341568

0.34341568 0.34341568 0.34341568]

Iteraccion 3:

[ 0.34341037 0.34341523 0.34341564 0.34341567 0.34341568 0.34341568

0.34341568 0.34341568]

Iteraccion 4:

[ 0.34341685 0.34341577 0.34341569 0.34341568 0.34341568 0.34341568

0.34341568]

Iteraccion 5:

[ 0.34341541 0.34341566 0.34341568 0.34341568 0.34341568 0.34341568]

Iteraccion 6:

[ 0.34341574 0.34341568 0.34341568 0.34341568 0.34341568]

Iteraccion 7:

[ 0.34341566 0.34341568 0.34341568 0.34341568]

Iteraccion 8:

[ 0.34341568 0.34341568 0.34341568]

Iteraccion 9:

[ 0.34341568 0.34341568]

Iteraccion 10:

[ 0.34341568]

S: w=3

Iteraccion 1

[ 0.44207215 0.4670516 0.48140613 0.48882468 0.49256446 0.49443818

0.49537552 0.49584425 0.49607862 0.49619581]

Iteraccion 2:

[ 0.47537808 0.48619098 0.49129753 0.49381105 0.49506276 0.49568797

0.4960005 0.49615675 0.49623487]

Page 11: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 11/17

 

Iteraccion 3:

[ 0.48979527 0.49299971 0.4946489 0.49547999 0.49589637 0.49610467

0.49620883 0.49626092]

Iteraccion 4:

[ 0.49406786 0.49519863 0.49575702 0.49603517 0.4961741 0.49624355

0.49627828]

Iteraccion 5:

[ 0.49557555 0.49594315 0.49612788 0.49622042 0.4962667 0.49628985]

Iteraccion 6:

[ 0.49606569 0.49618946 0.49625126 0.49628213 0.49629757]

Iteraccion 7:[ 0.49623072 0.49627186 0.49629242 0.49630271]

Iteraccion 8:

[ 0.49628557 0.49629928 0.49630614]

Iteraccion 9:

[ 0.49630385 0.49630843]

Iteraccion 10:

[ 0.49630995]

S: w=4

Iteraccion 1

[ 0.4749363 0.4354877 0.42435309 0.42148158 0.42075768 0.42057627

0.42053089 0.42051954 0.4205167 0.42051599]

Iteraccion 2:

[ 0.42233816 0.42064155 0.42052441 0.42051638 0.4205158 0.42051576

0.42051575 0.42051575 0.42051575]

Iteraccion 3:

[ 0.42007602 0.42048536 0.4205137 0.42051561 0.42051574 0.42051575

0.42051575 0.42051575]

Iteraccion 4:

[ 0.42062181 0.42052315 0.42051625 0.42051579 0.42051576 0.42051575

0.42051575]

Iteraccion 5:

[ 0.42049026 0.42051395 0.42051563 0.42051575 0.42051575 0.42051575]

Page 12: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 12/17

  Iteraccion 6:

[ 0.42052184 0.4205162 0.42051578 0.42051576 0.42051575]

Iteraccion 7:

[ 0.42051432 0.42051565 0.42051575 0.42051575]

Iteraccion 8:

[ 0.42051609 0.42051578 0.42051576]

Iteraccion 9:

[ 0.42051568 0.42051575]

Iteraccion 10:

[ 0.42051577]

S: w=5

Iteraccion 1

[ 0.46291346 0.45833814 0.47537779 0.48684123 0.49296017 0.49606873

0.49762918 0.49841017 0.49880076 0.49899607]

Iteraccion 2:

[ 0.45681303 0.48105767 0.49066238 0.49499982 0.49710492 0.49814932

0.4986705 0.49893096 0.49906117]

Iteraccion 3:[ 0.48913922 0.49386395 0.49644563 0.49780662 0.49849746 0.49884422

0.49901778 0.49910458]

Iteraccion 4:

[ 0.49543886 0.49730619 0.49826028 0.49872774 0.49895981 0.49907563

0.49913351]

Iteraccion 5:

[ 0.49792863 0.49857831 0.49888356 0.49903717 0.49911424 0.4991528 ]

Iteraccion 6:

[ 0.49879487 0.4989853 0.49908838 0.49913992 0.49916566]

Iteraccion 7:

[ 0.49904878 0.49912274 0.4991571 0.49917424]

Iteraccion 8:

[ 0.49914739 0.49916856 0.49917995]

Iteraccion 9:

[ 0.49917562 0.49918375]

Page 13: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 13/17

  Iteraccion 10:

[ 0.49918645]

Al representar los puntos como p=(C(x),S(x)) queda:

Parece que converge hacia una cierta forma, si aumentamos el número de puntos:

w=6,w=7... w=9

para ello en vez de for i in range(0,6) ponemos range(0,10)

(también eliminiamos los print para que vaya más rápido)

Page 14: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 14/17

 

Parece que sigue el mismo patrón.

Si tomamos intervalos de w más cortos (w=0.1, w= 0.2...) debería verse algo más curvilíneo:

(cambiamos I[1]=i por I[1]=i/10, para que llegue hasta 100 también aumentamos enrange(0,10) a range(0,100) para que al dividir por 10 sigamos en el mismo intervalo)

Page 15: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 15/17

 

Aquí ya podemos ver que es una especie de espiral, si reducimos todavía más los intervalos

(I[i]=i/100 ; range(0,1000) podremos verla claramente:

Page 16: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 16/17

Aquí podemos ver que la espiral parece converger hacía un círculo.

(foto del script completo):

Programas utilizados:

-Python

Librerías: numpy y matplotlib

Marcos Horno García Centro: Coruña

Page 17: agfgs

7/21/2019 agfgs

http://slidepdf.com/reader/full/agfgs 17/17