sespa5
C SESPA5 SOURCE BP208322 19/04/29 21:15:15 10213 C SESPA5 SOURCE WP 23/08/94 C SUBROUTINE SESPA5 ( IPLVA1, IPLVA2, IPLCH1, IPLCH2, C 1 IPMASS, BOOL, NBMOD ) ************************************************************************ * * SESPA5 * ----------- * * FONCTION: * --------- * * ON TEST LA CONVERGENCE DES ELEMENTS PROPRES: * - TEST SUR LA VALEUR PROPRE. * - TEST SUR LA MASSE GENERALISEE. * * MODE D'APPEL: * ------------- * * CALL SESPA5 ( IPLVA1,IPLVA2,IPLCH1,IPLCH2,IPMASS,BOOL,NBMOD ) * * AUTEUR, DATE DE CREATION: * ------------------------- * * A.M. JOLIVALT, W. PASILLAS 29 / 07 / 94. ( ESOPE ) * ************************************************************ 1 IPMASS, BOOL, NBMOD ) IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) -INC PPARAM -INC CCOPTIO -INC SMLREEL -INC SMLCHPO ****** * -- CONSTANTES -- *** PARAMETER ( PRECI1 = 1.0D-8 ) PARAMETER ( PRECI2 = 1.0D-8 ) ****** * -- ARGUMENTS -- *** POINTEUR IPLVA1.MLREEL, IPLVA2.MLREEL POINTEUR IPLCH1.MLCHPO, IPLCH2.MLCHPO INTEGER NBMOD, IPMASS LOGICAL BOOL ****** * -- VARIABLES LOCALES -- *** INTEGER IB100 REAL*8 ALPHA1, ALPHA2, RESIDU ****** * -- ON TRIE LES LISTES -- * selon |lambda| croissant de maniere a avoir * les modes les plus converges en 1er *** IF ( IERR .NE. 0 ) RETURN IF ( IERR .NE. 0 ) RETURN SEGACT ,IPLVA1, IPLVA2, IPLCH1, IPLCH2 c jusqu'a preuve du contraire, on suppose qu'on est converge BOOL = .TRUE. DO 100 IB100 = 1, NBMOD ****** * -- CONVERGENCE DE LA VALEUR PROPRE -- *** RESIDU = ABS( ALPHA2 - ALPHA1 ) IF ( RESIDU .GT. PRECI1 * ABS(ALPHA2) ) THEN BOOL = .FALSE. GOTO 110 ELSE ****** * -- CONVERGENCE DE LA MASSE GENERALISEE -- *** IPCHP1 = IPLCH1.ICHPOI( IB100 ) IPCHP2 = IPLCH2.ICHPOI( IB100 ) IF ( IERR .NE. 0 ) RETURN IF ( IERR .NE. 0 ) RETURN RESIDU = ABS( 1.0D0 - ABS( ALPHA1 / ALPHA2 ) ) IF ( RESIDU .GT. PRECI2 ) THEN BOOL = .FALSE. GOTO 110 ENDIF ENDIF 100 CONTINUE 110 CONTINUE SEGDES ,IPLVA1, IPLVA2, IPLCH1, IPLCH2 RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales