misl
C MISL SOURCE CB215821 20/11/25 13:34:28 10792 C MISL SOURCE SUBROUTINE MISL IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) C======================================================================= C OPERATEUR MISL : C LECTURE DES FICHIERS RESULTATS DU CALCUL MISS C C SYNTAXE : C * MISL TAB1; C C TAB1 TABLE FABRIQUEE PAR LA PROCEDURE PREPMISS c PUIS COMPLETEE PAR LA PROCEDURE POSTMISS C APRES AVOIR EXECUTE MISS3D C C======================================================================= -INC PPARAM -INC CCOPTIO -INC SMCHPOI -INC SMELEME -INC SMEVOLL -INC SMLREEL -INC CCREEL external long CHARACTER*72 lemot LOGICAL OK1 CHARACTER*20 NOMETU CHARACTER*105 FICMISS PARAMETER(NMVFD=50,NIMPDC=51) LOGICAL DIRX,DIRY,DIRZ,SAUVD,SAUVV,SAUVA,CALDYN,OK INTEGER IFOU(3) COMPLEX*16 ZOZO(14,10) INTEGER NM,NF,NC,I C SEGMENT MATCOMP COMPLEX*16 CM(NLI,NF,NC) ENDSEGMENT POINTEUR MATC1.MATCOMP,MATC2.MATCOMP SEGMENT MDDL INTEGER KCO(4,NKCO),KCO1(4,NKCO1),KLIA(NKCO) CHARACTER*2 NOCO(NKCO) ENDSEGMENT SEGMENT MCTRAV COMPLEX*16 Z(NN,NC),X(NPT),Y(NPT),W(NEXP) ENDSEGMENT SEGMENT MRTRAV REAL*8 UR(NN),UI(NN) ENDSEGMENT SEGMENT MATIMPD COMPLEX*16 IMPD(6,6,NFR) ENDSEGMENT c SEGMENT ALBSSG c REAL*8 LFRA(NF,NLI),LREA(NF,NLI),LIMA(NF,NLI) c ENDSEGMENT C C lecture table IF (IERR.NE.0) RETURN C C Niveau d'impression & 'ENTIER',IIMPM,RR,lemot,OK1,IZ) C C On regarde deja si calcul dynamique ou impedances seulement & 'MOT',IP,RR,lemot,OK1,IO) CALDYN=.FALSE. IF(lemot(1:9).EQ.'DYNAMIQUE')CALDYN=.TRUE. C C lecture nom etude et ouverture des fichiers & 'MOT',IP,RR,NOMETU,OK1,IZ) C CCC----------- version 32 bit C*********************************************************** C******* ce module est fait seulement pour la version ***** C******* originale de MISS3D 32 bit. Pour la version ****** c******* 64 bit compilé par ifort les resultats ne seront** C******* pas bons !!!!! ********************************* C*********************************************************** c IF (SIZEOF(NF).EQ.4) THEN IF (1.eq.1) THEN C WRITE(IOIMP,*) ' ' WRITE(IOIMP,*) 'WARNING only MISS3D 32bit version' WRITE(IOIMP,*) ' not 64bit version' WRITE(IOIMP,*)' ' C C Calcul dynamique ou impedances IF(CALDYN)THEN CCC----------- Debut calcul dynamique C C C Lecture des dimensions dans MVFD c LENR=40 LENR=256 OPEN(FILE=FICMISS,UNIT=NMVFD,FORM='UNFORMATTED', & ACCESS='DIRECT',RECL=LENR,STATUS='OLD') READ(UNIT=NMVFD,REC=1)NM,I,NC,I,I,I,NF C C Lecture des complexes MVFD IF(IIMPM.GE.1)WRITE(IOIMP,*)'Lecture des reponses modales ', & 'issues de MISS3D' LENR=NM*2*8 IF(NM.LT.16)LENR=16*2*8 CLOSE(NMVFD) OPEN(FILE=FICMISS,UNIT=NMVFD,FORM='UNFORMATTED', & ACCESS='DIRECT',RECL=LENR,STATUS='OLD') NLI=NM SEGINI MATC1 IMATC1=MATC1 DO JF=1,NF DO JC=1,NC J=(JF-1)*NC+JC+1 READ(UNIT=NMVFD,REC=J)(MATC1.CM(K,JF,JC),K=1,NM) ENDDO ENDDO CLOSE(NMVFD) SEGDES MATC1 C & 'FLOTTANT',IP,FSINI,NOMETU,OK1,IZ) & 'FLOTTANT',IP,FSMAX,NOMETU,OK1,IZ) & 'FLOTTANT',IP,FSPAS,NOMETU,OK1,IZ) C MATC1=IMATC1 SEGACT MATC1 C C Sauvegarde des fonctions transfert de coef de partecipation des modes & 'TABLE',IP,RR,NOMETU,OK1,MTAB3) C DO JC=1,NC & 'TABLE',IP,RR,NOMETU,OK1,MTAB4) DO 720 INM=1,NM & 'EVOLUTIO',IP,RR,NOMETU,OK1,IEV1) MEVOLL=IEV1 SEGACT MEVOLL*MOD IEVTEX='Coef_Part' KEVOL1=IEVOLL(1) KEVOL2=IEVOLL(2) SEGACT KEVOL1*MOD,KEVOL2*MOD MLREE1=KEVOL1.IPROGY MLREE2=KEVOL2.IPROGY SEGACT MLREE1*MOD,MLREE2*MOD KEVOL1.NUMEVX=2 KEVOL2.NUMEVX=4 KEVOL1.KEVTEX='Partie reelle' KEVOL2.KEVTEX='Partie imaginaire' DO JF=1, NF ENDDO SEGDES MLREE1,MLREE2 SEGDES KEVOL1,KEVOL2 SEGDES MEVOLL 720 CONTINUE ENDDO C SEGDES MATC1 C CCC------------ Fin calcul dynamique ELSE C C------------ Impression impedances c LENR=16*16 OPEN(FILE=FICMISS,UNIT=NIMPDC,FORM='UNFORMATTED', & ACCESS='DIRECT',RECL=LENR,STATUS='OLD') READ(UNIT=NIMPDC,REC=1)NM,I,NC,I,I,I,NF C IF(IIMPM.GE.1)WRITE(IOIMP,*)'Lecture des impedances ', & 'issues de MISS3D' C WRITE(6,*) ' Nombres Frequences ',NF WRITE(6,*) ' Nombres champs interface',NM C NFR=NF SEGINI MATIMPD DO JF=1,NF I=6*(JF-1) DO K=1,6 READ(UNIT=NIMPDC,REC=I+K+1)(IMPD(J,K,JF),J=1,6) ENDDO ENDDO CLOSE(NIMPDC) c & 'TABLE',IP,RR,lemot,OK1,MTABI) C JIMPD=MATIMPD C SEGSUP MATIMPD CCC------------ Fin Impression impedances ENDIF ENDIF END
© Cast3M 2003 - Tous droits réservés.
Mentions légales