1 : C ELFTEM SOURCE CHAT 05/01/12 23:32:44 5004 2 : SUBROUTINE ELFTEM 3 : C 4 : C ===================================================================== 5 : C 6 : C 7 : C SOLUT1 = ELFE 8 : C 9 : C / 'TEMPS'POUTRE 10 : C STRUC1 ATTAC1 TEMPS DT1 CHARG1 ( M1 11 : C GREEN ( NFOIS NN ) ; 12 : C 13 : C SOLUT1 : OBJET DE TYPE SOLUTION DYNAMIQUE 14 : C STRUC1 : OBJET DE TYPE STRUCTURE, ENSEMBLE DES ELEMENTS DE POUTRE 15 : C ATTAC1 : OBJET DE TYPE ATTACHE, LIAISONS ENTRE LES ELEMENTS 16 : C TEMPS : FLOTTANT, VALEUR DU TEMPS DE CALCUL 17 : C DT1 : FLOTTANT, VALEUR DU PAS DE TEMPS 18 : C CHARG1 : OBJET DE TYPE CHARGEMENT 19 : C GREEN : OBJET EVOLUTION CONTENANT LES FONCTIONS DE GREEN 20 : C FACULTATIVEMENT 21 : C M1 : ENTIER, INDICE DE TRONCATURE , SI 0 PAS DE TRONCATURE 22 : C NFOI : MOT CLE 23 : C NN : CHPOINT RESULTAT DANS L'OBJET SOLUTION TOUT LES NN PAS 24 : C 25 : C VERSION : JUIN 86 26 : C PROGRAMMEUR : GUILBAUD 27 : C MODIFIE PAR P.MANIGOT EN MARS 1988 28 : C MODIFIE PAR X.VACELET EN JUIN 1989 29 : C 30 : C ===================================================================== 31 : C 32 : IMPLICIT INTEGER(I-N) 33 : IMPLICIT REAL*8(A-H,O-Z) 34 : -INC CCOPTIO 35 : -INC SMCOORD 36 : CHARACTER*4 MFOIS(1) 37 : CHARACTER*40 CHA1 38 : DATA MFOIS/'NFOI'/ 39 : C TAILLE DES BLOCS (NOMBRE DE REELS) 40 : DATA LBLO/50000/ 41 : C PRECISION 42 : DATA EPS/1.D-11/ 43 : M=0 44 : LFOIS=1 45 : C 46 : C 1 - LECTURE DES DONNES 47 : C 47 : CALL LIROBJ('STRUCTUR',MSTRUC,1,IRETOU) 48 : IF (IERR.NE.0) RETURN 48 : CALL LIROBJ ('ATTACHE ',MATTAC,1,IRETOU) 49 : IF (IERR.NE.0) RETURN 50 : C 50 : CALL LIRREE (TEMPS,1,IRETOU) 51 : IF (IERR.NE.0) RETURN 52 : IF (TEMPS.LE.0) THEN 53 : C *** VALEUR DE TEMPS NEGATIVE OU NULLE 53 : CALL ERREUR(406) 54 : ENDIF 54 : CALL LIRREE (DELTAT,1,IRETOU) 55 : IF (IERR.NE.0) RETURN 56 : IF (DELTAT.LE.0.D0) THEN 57 : C *** VALEUR DE PAS DE TEMPS NEGATIVE OU NULLE 57 : CALL ERREUR(406) 58 : ENDIF 59 : IF (TEMPS.LT.DELTAT) THEN 60 : TAMP=TEMPS 61 : TEMPS=DELTAT 62 : DELTAT=TAMP 63 : END IF 64 : N=NINT(TEMPS/DELTAT) 65 : C 65 : CALL LIRENT (M,0,IRETOU) 66 : IF (IRETOU.NE.0 .AND. M.LE.0) THEN 67 : C *** INDICE DE TRONCATURE NEGATIF OU NUL 67 : CALL ERREUR(407) 68 : ENDIF 69 : C 69 : CALL LIROBJ ('CHARGEME',MCHARG,1,IRETOU) 70 : C 70 : CALL LIROBJ ('EVOLUTIO',KGREEN,1,IRETOU) 71 : IF (IERR .NE. 0) RETURN 72 : C 73 : NFOIS=1 73 : CALL LIRMOT(MFOIS,LFOIS,IMOT,0) 74 : IF (IMOT.NE.0) THEN 74 : CALL LIRENT (NFOIS,1,IRETOU) 75 : END IF 76 : SEGACT MCOORD 77 : C 78 : C 79 : C 2 - TRAITEMENT DE L'OBJET STRUCTURE 80 : C 80 : CALL ELFELE(MSTRUC,KNREFE) 81 : IF (IERR.NE.0) RETURN 82 : C 83 : C 84 : C 3 - TRAITEMENT DE L'OBJET SOLUTION GREEN, CALCUL DES MATRICES ANBN 85 : C 85 : CALL ELFGR0 (KGREEN,DELTAT,N, KGREE2) 86 : IF (IERR.NE.0) RETURN 87 : MAXBLO=LBLO 87 : CALL ELFGR2(KGREE2,DELTAT,M,N,MAXBLO,KNREFE,KANBN,KDNCN) 88 : IF (IERR.NE.0) RETURN 89 : C 90 : C 91 : C 4 - TRAITEMENT DE L'OBJET ATTACHE, CALCUL DES MATRICES DE LIAISON 92 : C 92 : CALL ELFTRI(MATTAC,KNREFE,MATTA1) 93 : IF (IERR.NE.0) RETURN 93 : CALL ELFTR2(MATTA1,KNREFE) 94 : IF (IERR.NE.0) RETURN 94 : CALL ELFLIA(MATTA1,KANBN,KNREFE,KOMALI,EPS) 95 : IF (IERR.NE.0) RETURN 96 : C 97 : C 98 : C 5 - TRAITEMENT DU CHARGEMENT, CALCUL DES SECONDS-MEMBRES 99 : C 99 : CALL ELFCHA(MCHARG,KOMALI,KNREFE,KACHAR) 100 : IF (IERR.NE.0) RETURN 101 : C 102 : C 103 : C 6 - RESOLUTION ET CREATION DE L'OBJET SOLUTION 104 : C 104 : CALL ELFRES(KANBN,KDNCN,KNREFE,KOMALI,KACHAR,DELTAT,M,N,NFOIS, 105 : *KSOLUT) 106 : C 106 : IF (KGREEN .NE. KGREE2) CALL DTEVOL (KGREE2,1) 107 : C 107 : CALL ECROBJ('SOLUTION',KSOLUT) 108 : RETURN 109 : C 110 : END 111 :
© Cast3M 2003 - All rights reserved.
Disclaimer