Télécharger ccotr3.eso

Retour à la liste

Numérotation des lignes :

  1. C CCOTR3 SOURCE BP208322 17/03/01 21:15:20 9325
  2. SUBROUTINE CCOTR3(WRK52,WRK53,WRK54,
  3. 1 IFOU,IB,IGAU,NBGMAT,iecou)
  4. C COTRA3 SOURCE AM1 95/03/16 21:18:49 1567
  5. c SUBROUTINE COTRA3(KERRE,NSTRS,CMATE,WTRAV,N2EL,N2PTEL,
  6. c 1 MFR,IFOU,IB,IGAU,EPAIST,MELE,NPINT,NBGMAT,
  7. c 2 NBPGAU,NELMAT,SECT,LHOOK,CRIGI,NMATT,WRK0,WRK1)
  8. C
  9. IMPLICIT INTEGER(I-N)
  10. IMPLICIT REAL*8(A-H,O-Z)
  11. C
  12. -INC CCOPTIO
  13. -INC SMEVOLL
  14. -INC SMLREEL
  15. -INC SMCOORD
  16. -INC DECHE
  17. ******************************************************************
  18. * RECUPERATION DES LOIS DE COMPORTEMENT POUR *
  19. * LES ELEMENTS GLOBAUX *
  20. ******************************************************************
  21. * ENTREES :
  22. * WRK0 SEGMENT DE TRAVAIL CONTENANT LES CARACTERISTIQUES
  23. * MATERIAUX
  24. * WRK1 SEGMENT DE TRAVAIL CONTENANT LES EFFORTS, LES DEPLACEMENTS
  25. * ET LA MATRICE DE HOOK
  26. * NMATT =NOMBRE DE COMPOSANTES DE PROPRIETES DE MATERIAU
  27. * WTRAV SEGMENT DE TRAVAIL CONTENANT LES TABLEAUX UTILISES POUR
  28. * LE CALCUL DE LA MATRICE DE HOOKE ELASTIQUE (SS-PROGRAMME CALSIG)
  29. *
  30. * N2EL = NBRE D ELEMENTS DANS SEGMENT DE HOOKE
  31. * N2PTEL= NBRE DE POINTS DANS SEGMENT DE HOOKE
  32. * MFR1 = NUMERO DE LA FORMULATION
  33. * IFOU = OPTION DE CALCUL
  34. * IB = NUMERO DE L ELEMENT COURANT
  35. * IGAU = NUMERO DU POINT COURANT
  36. * EPAIST= EPAISSEUR
  37. * NBPGAU= NBRE DE POINTS DE GAUSS
  38. * MELE = NUMERO DE L ELEMENT FINI
  39. * NPINT = NBRE DE POINTS D INTEGRATION
  40. * NBGMAT= NBRE DE POINTS DANS SEGMENT DE CARACTERISTIQUES
  41. * NELMAT= NBRE D ELEMENTS DANS SEGMENT DE CARACTERISTIQUES
  42. * SECT = SECTION
  43. * LHOOK = TAILLE DE LA MATRICE DE HOOKE
  44. *
  45. * SORTIES :
  46. * KERRE INDICATEUR D'ERREUR
  47. *
  48. * VARIABLES INTERNES CREES
  49. * INDLEG CODAGE DES LOIS CONTENUES DANS L'ELEMENT GLOBAL
  50. * WRKGL SEGMENT CONTENANT LES LOIS DE COMPORTEMENT RETENUES
  51. * (3 AU MAXIMUM)
  52. * IPWRKGL SEGMENTS DE POINTEURS SUR LES LOIS DE COMPORTEMENT
  53. *
  54. *****************************************************************
  55. *
  56. *
  57. SEGMENT IECOU
  58. * COMMON/IECOU/NYOG,NYNU,NYALFA,NYSMAX,NYN,NYM,NYKK,
  59. INTEGER icow1,icow2,icow3,icow4,icow5,icow6,icow7,
  60. C INTEGER NYOG, NYNU, NYALFA,NYSMAX,NYN, NYM, NYKK,
  61. 1 icow8,icow9,icow10,icow11,icow12,icow13,icow14,icow15,icow16,
  62. C . NYALF1,NYBET1,NYR, NYA, NYRHO,NSIGY, NNKX, NYKX, IND,
  63. 2 icow17,icow18,icow19,icow20,icow21,icow22,icow23,icow24,
  64. C . NSOM, NINV, NINCMA,NCOMP, JELEM, LEGAUS,INAT, NCXMAT,
  65. 3 icow25,icow26,icow27,icow28,icow29,icow30,icow31,
  66. C . LTRAC, MFR, IELE, NHRM, NBNN, NBELEM,ICARA,
  67. 4 icow32,icow33,NSTRS1,MFR1 ,NBGMAT,NELMAT,icow38,
  68. C . LW2, NDEF, NSTRSS,MFR1, NBGMAT,NELMAT,MSOUPA,
  69. 5 icow39,icow40,icow41,icow42,icow43,icow44
  70. C . NUMAT1,LENDO, NBBB, NNVARI,KERR1, MELEME
  71. INTEGER icow45,icow46,icow47,icow48,icow49,icow50,
  72. . icow51,icow52,icow53,icow54,icow55,icow56
  73. . icow57,icow58
  74. ENDSEGMENT
  75.  
  76. SEGMENT WRKGL
  77. REAL*8 TLOICO(NBLOI)
  78. ENDSEGMENT
  79. *
  80. SEGMENT IPWRKGL
  81. POINTEUR IPOL(3).WRKGL
  82. ENDSEGMENT
  83. *
  84. *
  85. SEGINI IPWRKGL
  86. *
  87. * QUELQUES INITIALISATIONS A 0
  88. *
  89. KERRE=0
  90. INDLEG = 0
  91. NRLEGI = 0
  92. *
  93. * RECUPERATION DES LOIS
  94. *
  95. *+DC
  96. IDECAL = 1
  97. *
  98. DO 50 IJ = 1,5
  99. IF(IJ.EQ.1)IJOJO = 7+IDECAL
  100. IF(IJ.EQ.2)IJOJO = 8+IDECAL
  101. IF(IJ.EQ.3)IJOJO = 9+IDECAL
  102. IF(IJ.EQ.4)IJOJO = 3
  103. IF(IJ.EQ.5)IJOJO = 4
  104. *
  105. * RECHERCHE DES POINTEURS NON NULS DE XMAT
  106. *
  107. IBOU = nint(XMAT(IJOJO))
  108. IF(IBOU.EQ.0) GO TO 50
  109. *
  110. * CODAGE DES TYPES DE LOIS RENTREES
  111. *
  112. IF(IJ.EQ.1) INDLEG = 1
  113. *
  114. IF(IJ.EQ.2) INDLEG = INDLEG + 10
  115. *
  116. IF(IJ.EQ.3)THEN
  117. IF(INDLEG.LT.10)THEN
  118. INDLEG = INDLEG + 20
  119. ELSE
  120. MOTERR(5:12) = 'FLXYFLXZ'
  121. KERRE = 57
  122. END IF
  123. END IF
  124. *
  125. IF(IJ.EQ.4) INDLEG = INDLEG + 100
  126. *
  127. IF(IJ.EQ.5)THEN
  128. IF(INDLEG.LT.100)THEN
  129. INDLEG = INDLEG + 200
  130. ELSE
  131. MOTERR(5:12) = 'CISYCISZ'
  132. KERRE = 57
  133. END IF
  134. END IF
  135. *
  136. *RECUPERATION DES EVOLUTIONS RENTREES DANS MATE
  137. *
  138. MEVOLL=nint(XMAT(IJOJO))
  139. IF(MEVOLL.NE.0) THEN
  140. SEGACT MEVOLL
  141. JOJO = IEVOLL(/1)
  142. *
  143. IF(JOJO.NE.1)THEN
  144. KERRE=31
  145. WRITE(*,*) ' KERRE=31'
  146. SEGDES MEVOLL
  147. SEGSUP IPWRKGL
  148. RETURN
  149. END IF
  150. *
  151. KEVOLL=IEVOLL(1)
  152. SEGACT KEVOLL
  153. MLREEL=IPROGX
  154. MLREE1=IPROGY
  155. SEGDES KEVOLL
  156. SEGACT MLREEL,MLREE1
  157. NBPOIX=PROG(/1)
  158. NBPOIY=MLREE1.PROG(/1)
  159. *
  160. * TEST SUR LA TAILLE DES LOIS RENTREES
  161. *
  162. IF(NBPOIX.NE.NBPOIY) KERRE=58
  163. IF (IJ.EQ.1)THEN
  164. IF((NBPOIX.NE.4).and.(nbpoix.ne.6))KERRE=58
  165. ELSE
  166. IF((NBPOIX.NE.5).and.(nbpoix.ne.7))KERRE=58
  167. ENDIF
  168. *
  169. * RETRANSCRIPTION DES LOIS DE COMPORTEMENT DANS WRKGL
  170. *
  171. IF(KERRE.NE.0) THEN
  172. SEGDES MLREEL,MLREE1
  173. SEGDES MEVOLL
  174. GO TO 777
  175. END IF
  176. *
  177. NRLEGI = NRLEGI + 1
  178. NBLOI = 2 * NBPOIX
  179. SEGINI WRKGL
  180. IPOL(NRLEGI) = WRKGL
  181. DO 10 I=1,NBPOIX
  182. PEPS=PROG(I)
  183. PSIG=MLREE1.PROG(I)
  184. TLOICO((2*I)-1) = PSIG
  185. TLOICO(2*I) = PEPS
  186. 10 CONTINUE
  187. SEGDES MLREEL, MLREE1
  188. END IF
  189. 50 CONTINUE
  190. *
  191. IF(NRLEGI.EQ.0)THEN
  192. KERRE = 59
  193. RETURN
  194. END IF
  195. *
  196. SEGDES MEVOLL
  197. C
  198. 777 CONTINUE
  199. C
  200. C UTILISATION DES LOIS DE COMPORTEMENT
  201. C
  202. IF(KERRE.EQ.0) THEN
  203. nbgmab=nbgmat
  204. nlmatb=nelmat
  205. mfr1bi=mfr1
  206. nstrbi=nstrs1
  207. CALL CDDIS(WRK52,WRK53,WRK54,NSTRbi,MFR1bi,IFOU,IB,
  208. 1 IGAU,NBPGAU,NBGMAb,NLMATb,INDLEG,IPWRKGL,WRKGL)
  209. C
  210. C DESACTIVATION DES SEGMENTS TEMPORAIRES WRKGL ET IPWRKGL
  211. C
  212. DO 800 I=1,NRLEGI
  213. SEGSUP IPOL(I)
  214. 800 CONTINUE
  215. ENDIF
  216. C
  217. SEGSUP IPWRKGL
  218. C
  219. RETURN
  220.  
  221. END
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  

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