diad
C DIAD SOURCE CHAT 05/01/12 22:49:37 5004 *$$$$ DIAD C DIAD SOURCE ISPRA 90/08/02 SUBROUTINE DIAD IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) LOGICAL LDIRE,LINTE C C======================================================================= C = CALCUL DIADIQUE = C = = C = SYNTAXE : = C = = C = LIST1 = DIAD LIST2 (TYPE) ; = C = = C = = C = LIST2 : OBJET DE TYPE LISTREEL CONTENANT LE SIGNAL A TRAITER= C = LIST1 : OBJET DE TYPE LISTREEL CONTENANT LE SIGNAL REPONSE = C = = C = TYPE : 'DIRE' OU 'INVE' OU 'IVIN' (DEFAUT 'DIRE') = C = = C = = C = CREATION : 90/08/02 = C = MODIFICATION: 90/09/14 = C = PROGRAMMEUR : PEG = C======================================================================= C -INC PPARAM -INC CCOPTIO -INC SMEVOLL -INC SMLREEL C POINTEUR IPSIG.MLREEL,IPRES.MLREEL C PARAMETER (NMOCLE=3) CHARACTER*4 MOTCLE(NMOCLE) DATA MOTCLE/'DIRE','INVE','IVIN'/ C C DEFAUT TRANSFORMATION DIRECTE C LDIRE=.TRUE. LINTE=.FALSE. C C LECTURE DE L'OBJET LISTREEL CONTENANT LE SIGNAL C IF(IRET1.EQ.0) RETURN C C LECTURE DES OPTIONS C IF(IVAL.EQ.0)GOTO 9 GOTO(2,3,4),IVAL C ---> "TYPE" 2 LDIRE=.TRUE. GOTO 9 3 LDIRE=.FALSE. LINTE=.FALSE. GOTO 9 4 LDIRE=.FALSE. LINTE=.TRUE. GOTO 9 9 CONTINUE C IF(IERR.NE.0) RETURN C C DIMENSION DES TABLEAUX C SEGACT IPSIG C IF(LDIRE)THEN JG=(JG+1)/2 ELSE JG=JG*2-MOD(JG,2) ENDIF C C CREATION DE L'OBJET RESULTAT C SEGINI IPRES C IF(LDIRE)THEN DO 15 IE1=1,JG 15 CONTINUE ELSE IF(LINTE)THEN DO 20 IE1=1,JG/2-1+MOD(JG,2) X =XNEXT 20 CONTINUE IF (MOD(JG,2).EQ.0)THEN ELSE ENDIF ELSE DO 25 IE1=1,JG/2 25 CONTINUE IF (MOD(JG,2).NE.0)THEN ENDIF ENDIF ENDIF C SEGDES IPSIG SEGDES IPRES C RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales