newt2
C NEWT2 SOURCE CHAT 05/01/13 01:56:58 5004 C*********************************************************************** C* * C* PROJET : Opérateur LIMI * C* NOM : NEWT2 * C* DESCRIPTION : Ce sous programme calcule la racine de la relation * C* de fermeture H=f(H32)(cas laminaire), comprise entre * C* A00 et B00, par la méthode de dichotomie * C* LANGAGE : Esope * C* AUTEUR : Guillaume VENCO - DRN/DMT/SEMT/LTMF * C* * C*********************************************************************** C* * C* APPELES : Aucun * C* * C*********************************************************************** C* * C* ENTREES : ca0 : -Coefficient de la relation de fermeture * C* ca1 : -Coefficient de la relation de fermeture * C* ca2 : -Coefficient de la relation de fermeture * C* A00 : -Borne inférieure * C* B00 : -Borne supérieure * C* * C* SORTIES : Q : -Racine comprise entre A00 et B00 * C* * C*********************************************************************** C* * C* VERSION : 15/05/2000 * C* CREATION : 21/04/2000 * C* * C*********************************************************************** C* ********************************* C* *** Déclaration des variables *** C* ********************************* IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) parameter (eps=1d-15) real*8 f1,f2 real*8 ca0,ca1,ca2,A00,B00,Q real*8 a0,a1,a2 C* ********************************* C* ******** Sous-programme ********* C* ********************************* C---- Coefficient de la fonction f(x)=a0.X²+a1.X+a2 a0=(ca1/ca2) a1=ca0 a2=ca1 A=A00 B=B00 C---- Schéma itératif par dichotomie 50 f1=a0*(A**2)+a1*A+a2 f2=a0*(B**2)+a1*B+a2 C---- Par dichotomie X = A+(B-A)/2 fx=a0*(X**2)+a1*X+a2 IF (fx.EQ.0) GOTO 10 IF ((fx*f1).GT.0) GOTO 20 B = X GOTO 30 20 A = X GOTO 30 30 IF(ABS(B-A).LE.eps) GOTO 10 GOTO 50 C---- Résultats 10 Q = X c Write(6,*) 'La racine est :',Q RETURN END C* ********************************* C* **** Fin Sous-Programme ******* C* *********************************
© Cast3M 2003 - Tous droits réservés.
Mentions légales