Sie sind auf Seite 1von 2

TAKUMBO KWETCHE DAVID Jeudi 30 Janvier 2020

GENIE CIVIL, NIVEAU 3


CYCLE INGENIEUR
CONTROLE CONTINUE: METHODES NUMERIQUES

INTEGRALE PAR METHODE DE SIMPSON

C.....PROGRAMME DE CALCUL D'UNE INTEGRLE PAR LA METHODE DE SIMPSON

PROGRAM SIMPSON

IMPLICIT DOUBLE PRECISION (A-H, O-Z)

PRINT*,'Entrez les bornes de l''integrale A et B'

READ(5,*) A, B

C.....PRINT*,'Entrer N, nombre pair'

C.....READ(5,*) N

N=2

DOWHILE(N.LE.4096)

H=(B-A)/N

SIMP=F(A)+F(B)

DO 100 K=2, ((N/2)-1)

SIMP=SIMP+2*F(A+2*K*H)+4*F(A+(2*k-1)*H)

100 CONTINUE

SIMP=SIMP+4*F(A+(2*(N/2)-1)*H)

SIMP=SIMP*H/0.3D01

ERREUR=SIMP-DLOG(0.2D01)

TAUX=ERREUR/DLOG(0.2D01)

PRINT*,'N=',N, '; I(',A,',',B,')=',SIMP, '; ERREUR=',ERREUR

PRINT*,'TAUX=',TAUX

N=2*N

ENDDO

PAUSE

STOP

END

FUNCTION F(X)

DOUBLE PRECISION F, X

F=0.1D01/(X+0.1D01)

END FUNCTION F
EXECUTION

Entrez les bornes de l'integrale A et B

0,1

N= 2; I( 0., 1.)= 0.694444444; ERREUR= 0.00129726388

TAUX= 0.00187155617

N= 4; I( 0., 1.)= 0.31547619; ERREUR= -0.37767099

TAUX= -0.544864064

N= 8; I( 0., 1.)= 0.478339716; ERREUR= -0.214807465

TAUX= -0.309901664

N= 16; I( 0., 1.)= 0.577679243; ERREUR= -0.115467937

TAUX= -0.166585021

N= 32; I( 0., 1.)= 0.633135327; ERREUR= -0.0600118538

TAUX= -0.0865788039

N= 64; I( 0., 1.)= 0.662533352; ERREUR= -0.0306138288

TAUX= -0.0441664189

N= 128; I( 0., 1.)= 0.677683058; ERREUR= -0.0154641223

TAUX= -0.0223100126

N= 256; I( 0., 1.)= 0.685375134; ERREUR= -0.00777204677

TAUX= -0.0112126933

N= 512; I( 0., 1.)= 0.689251073; ERREUR= -0.00389610718

TAUX= -0.00562089451

N= 1024; I( 0., 1.)= 0.691196595; ERREUR= -0.00195058559

TAUX= -0.00281410015

N= 2048; I( 0., 1.)= 0.692171253; ERREUR= -0.000975927182

TAUX= -0.00140796531

N= 4096; I( 0., 1.)= 0.692659058; ERREUR= -0.000488122362

TAUX= -0.000704211712

PAUSE statement executed

To resume execution, type go. Other input will terminate the job.

Das könnte Ihnen auch gefallen