C LAPLIN SOURCE CHAT 05/01/13 01:12:59 5004 SUBROUTINE LAPLIN C IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Y) IMPLICIT COMPLEX*16 (Z) C C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C OPERATEUR LAPL C C CALCUL LA TRANSFORMEE DE LAPLACE INVERSE C C C SORTIES : C C C AUTEUR : SAINT-DIZIER ET DE LANGRE C DATE : 05 DECEMBRE 1989 C C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C LOGICAL INV -INC CCREEL -INC SMLREEL -INC SMEVOLL -INC CCOPTIO C SEGMENT MTRAV COMPLEX*16 ZW(NEXP) COMPLEX*16 ZXX(NPT) COMPLEX*16 ZYY(NPT) ENDSEGMENT C CALL LIROBJ('LISTREEL',MLREE1,1,IRETOU) IF (IERR.NE.0) RETURN CALL LIROBJ('LISTREEL',MLREE2,1,IRETOU) IF (IERR.NE.0) RETURN CALL LIROBJ('LISTREEL',MLREE3,1,IRETOU) IF (IERR.NE.0) RETURN CALL LIRREE(AA,1,IRETOU) IF (IERR.NE.0) RETURN CALL LIRENT(LL,1,IRETOU) IF (IERR.NE.0) RETURN C SEGACT MLREE1 SEGACT MLREE2 SEGACT MLREE3 C NSUM = MLREE1.PROG(/1) NN = NSUM / LL JG = NN POINTEUR MLREE4.MLREEL POINTEUR MLREE5.MLREEL SEGINI MLREE4 SEGINI MLREE5 C NEXP = NN/2 NPT = NN SEGINI MTRAV C N = 1 SEGINI MEVOL1 SEGINI KEVOL1 C C -- DETERMINATION DES CARACTERISTIQUES DU CALCUL C ZI = (0.D0,1.D0) T = 2.D0 * XPI / (MLREE1.PROG (2)) DELTAT = T / NN C C -- ALGORITHME DE DURBIN AVEC FFT C DO 20 K = 0 , NN - 1 XA = 0D0 XB = 0D0 DO 21 KL= 0 , LL -1 IKL =K + KL * NN XA = XA + MLREE2.PROG(IKL+1) XB = XB + MLREE3.PROG(IKL+1) 21 CONTINUE ZXX(K + 1) = XA + ZI* XB 20 CONTINUE C INV = .TRUE. CALL WEXP(INV,NPT,ZW) CALL FFTL(ZXX,ZYY,ZW,NPT) C C DO 30 J = 0 , NN-1 TJ = J*DELTAT MLREE4.PROG(J+1)= TJ CJ = EXP(AA*TJ) FF =CXTORE(ZXX(J+1)) MLREE5.PROG(J+1) = (2.D0*CJ/T)*(-.5D0*MLREE2.PROG(1)+FF) C MLREE5.PROG(J+1) = (2.D0*CJ/T)*( FF) C MLREE5.PROG(J+1) = FF 30 CONTINUE C MEVOL1.ITYEVO = 'REEL' MEVOL1.IEVTEX = 'TRANSFORMEE DE LAPLACE' MEVOL1.IEVOLL(1) = KEVOL1 C KEVOL1.IPROGX = MLREE4 KEVOL1.IPROGY = MLREE5 KEVOL1.NUMEVX = 0 KEVOL1.TYPX = 'LISTREEL' KEVOL1.TYPY = 'LISTREEL' KEVOL1.NOMEVX = 'TEMPS' KEVOL1.NOMEVY = 'F(T)' KEVOL1.KEVTEX = 'LAPLACE INVERSE' C CALL ECROBJ('EVOLUTION',MEVOL1) C SEGDES MLREE1 SEGDES MLREE2 SEGDES MLREE3 SEGDES MLREE4 SEGDES MLREE5 SEGDES MEVOL1 SEGDES KEVOL1 END