Télécharger elftem.eso

Retour à la liste

Numérotation des lignes :

  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
  48. CALL LIROBJ('STRUCTUR',MSTRUC,1,IRETOU)
  49. IF (IERR.NE.0) RETURN
  50. CALL LIROBJ ('ATTACHE ',MATTAC,1,IRETOU)
  51. IF (IERR.NE.0) RETURN
  52. C
  53. CALL LIRREE (TEMPS,1,IRETOU)
  54. IF (IERR.NE.0) RETURN
  55. IF (TEMPS.LE.0) THEN
  56. C *** VALEUR DE TEMPS NEGATIVE OU NULLE
  57. CALL ERREUR(406)
  58. ENDIF
  59. CALL LIRREE (DELTAT,1,IRETOU)
  60. IF (IERR.NE.0) RETURN
  61. IF (DELTAT.LE.0.D0) THEN
  62. C *** VALEUR DE PAS DE TEMPS NEGATIVE OU NULLE
  63. CALL ERREUR(406)
  64. ENDIF
  65. IF (TEMPS.LT.DELTAT) THEN
  66. TAMP=TEMPS
  67. TEMPS=DELTAT
  68. DELTAT=TAMP
  69. END IF
  70. N=NINT(TEMPS/DELTAT)
  71. C
  72. CALL LIRENT (M,0,IRETOU)
  73. IF (IRETOU.NE.0 .AND. M.LE.0) THEN
  74. C *** INDICE DE TRONCATURE NEGATIF OU NUL
  75. CALL ERREUR(407)
  76. ENDIF
  77. C
  78. CALL LIROBJ ('CHARGEME',MCHARG,1,IRETOU)
  79. C
  80. CALL LIROBJ ('EVOLUTIO',KGREEN,1,IRETOU)
  81. IF (IERR .NE. 0) RETURN
  82. C
  83. NFOIS=1
  84. CALL LIRMOT(MFOIS,LFOIS,IMOT,0)
  85. IF (IMOT.NE.0) THEN
  86. CALL LIRENT (NFOIS,1,IRETOU)
  87. END IF
  88. SEGACT MCOORD
  89. C
  90. C
  91. C 2 - TRAITEMENT DE L'OBJET STRUCTURE
  92. C
  93. CALL ELFELE(MSTRUC,KNREFE)
  94. IF (IERR.NE.0) RETURN
  95. C
  96. C
  97. C 3 - TRAITEMENT DE L'OBJET SOLUTION GREEN, CALCUL DES MATRICES ANBN
  98. C
  99. CALL ELFGR0 (KGREEN,DELTAT,N, KGREE2)
  100. IF (IERR.NE.0) RETURN
  101. MAXBLO=LBLO
  102. CALL ELFGR2(KGREE2,DELTAT,M,N,MAXBLO,KNREFE,KANBN,KDNCN)
  103. IF (IERR.NE.0) RETURN
  104. C
  105. C
  106. C 4 - TRAITEMENT DE L'OBJET ATTACHE, CALCUL DES MATRICES DE LIAISON
  107. C
  108. CALL ELFTRI(MATTAC,KNREFE,MATTA1)
  109. IF (IERR.NE.0) RETURN
  110. CALL ELFTR2(MATTA1,KNREFE)
  111. IF (IERR.NE.0) RETURN
  112. CALL ELFLIA(MATTA1,KANBN,KNREFE,KOMALI,EPS)
  113. IF (IERR.NE.0) RETURN
  114. C
  115. C
  116. C 5 - TRAITEMENT DU CHARGEMENT, CALCUL DES SECONDS-MEMBRES
  117. C
  118. CALL ELFCHA(MCHARG,KOMALI,KNREFE,KACHAR)
  119. IF (IERR.NE.0) RETURN
  120. C
  121. C
  122. C 6 - RESOLUTION ET CREATION DE L'OBJET SOLUTION
  123. C
  124. CALL ELFRES(KANBN,KDNCN,KNREFE,KOMALI,KACHAR,DELTAT,M,N,NFOIS,
  125. *KSOLUT)
  126. C
  127. IF (KGREEN .NE. KGREE2) CALL DTEVOL (KGREE2,1)
  128. C
  129. CALL ECROBJ('SOLUTION',KSOLUT)
  130. RETURN
  131. C
  132. END
  133.  
  134.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales