1 : C COTEST SOURCE CHAT 05/01/12 22:23:13 5004 2 : SUBROUTINE COTEST (PIM,PIMS,EPI,DELTA1,DPMAX,INDIC,ICONV,NL) 3 : C 4 : CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 5 : C 22/11/91 C 6 : C LES TESTS SONT CONDUITS SUR LA PSEUDO-PRESSION C 7 : C 21/11/91 C 8 : C ON SORT LA VALEUR DE DPMAX, AVEC UN MESSAGE SI C 9 : C DPMAX A ETE AJUSTE A UNE VALEUR RAISONNABLE (1) C 10 : C C 11 : C NEDELEC 16 1 91 C 12 : C C 13 : C SSPRGM TESTANT LA CONVERGENCE C 14 : C DE LA RESOLUTION ITERATIVE C 15 : C C 16 : C EN ENTREE PIM : PRESSION COURANTE C 17 : C PIMS : PRESSION AU TEST PRECEDENT C 18 : C EPI : EPSILON DE TEST C 19 : C INDIC : 0 TEST COURANT , 1 TEST EN BUTEE C 20 : C NL : NOMBRE D'ELEMENTS C 21 : C C 22 : C EN SORTIE ICONV : 0 RESOLUTION NON CONVERGEE C 23 : C : 1 RESOLUTION CONVERGEE C 24 : C DELTA : ACCROI DETECTE > EPI TEST COURANT C 25 : C : ACCROI MAX SI TEST EN BUTEE C 26 : C C 27 : C (PIM(I)-PIMS(I)) C 28 : C ON TESTE ------------------ C 29 : C MAX(PIM) - MIN(PIM) C 30 : C C 31 : C SOIT LA VARIATION DE PRESSION ENTRE DEUX TESTS C 32 : C RAPPORTEE A LA DIFFERENCE DE PRESSION MAXI DANS C 33 : C TOUT LE CHAMP. C'EST BEAUCOUP MIEUX QUE TESTER C 34 : C DELTA(P)/P CAR LA PRESSION ETANT DEFINIE A UNE C 35 : C CONSTANTE PRES, P PEUT PRENDRE DES VALEURS TRES C 36 : C PROCHES DE ZERO ET FAIRE EXPLOSER LE TEST. C 37 : C C 38 : C LE FIN DU FIN SERAIT DE TESTER DELPA(P)/GRADIENT(P) C 39 : C MAIS BON ... C 40 : C C 41 : CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 42 : C 43 : IMPLICIT INTEGER(I-N) 44 : IMPLICIT REAL*8 (A-H,O-Z) 45 : DIMENSION PIM(1),PIMS(1) 46 : C 47 : C RECHERCHE DE L'ETENDUE DE P SUR TOUT LE DOMAINE : DPMAX 48 : C 49 : DPMIN=1.E-5 50 : DPFIXE=1.0 51 : PMIN=1.E32 52 : PMAX=-1.E32 53 : DO 1 I=1,NL 54 : IF(PIM(I).GT.PMAX) PMAX=PIM(I) 55 : IF(PIM(I).LT.PMIN) PMIN=PIM(I) 56 : 1 CONTINUE 57 : DPMAX=PMAX-PMIN 58 : IF(DPMAX.LT.DPMIN) THEN 59 : WRITE(6,*) '>>>COTEST: L''ECHELLE DE PRESSION EST FIXEE A :', 60 : ; DPFIXE 61 : DPMAX=DPFIXE 62 : ENDIF 63 : IF (INDIC.EQ.0) THEN 64 : C 65 : ICONV=1 66 : DO 10 I=1,NL 67 : DELTA1=DABS(PIM(I)-PIMS(I)) 68 : IF (DELTA1.GT.(EPI*DPMAX)) THEN 69 : C-BON IF (DELTA1.GT.(EPI*ABS(PIM(I)))) THEN 70 : ICONV=0 71 : GOTO 30 72 : ENDIF 73 : 10 CONTINUE 74 : ELSE 75 : C 76 : ICONV=1 77 : DELTA1=1.D-20 78 : DO 20 I=1,NL 79 : DELTA=DABS(PIM(I)-PIMS(I)) 80 : IF (DELTA.GT.DELTA1) DELTA1=DELTA 81 : IF(DELTA.GT.(EPI*DPMAX)) ICONV=0 82 : C-BON IF(DELTA.GT.(EPI*ABS(PIM(I)))) ICONV=0 83 : 20 CONTINUE 84 : ENDIF 85 : 30 CONTINUE 86 : RETURN 87 : END 88 :
© Cast3M 2003 - All rights reserved.
Disclaimer