Télécharger xnuag1.eso

Retour à la liste

Numérotation des lignes :

  1. C XNUAG1 SOURCE CB215821 18/09/21 21:16:59 9930
  2. SUBROUTINE XNUAG1(xmatjc,JC,WR11,NTABO3,NTABO4,KERRE)
  3. C XNUAGE SOURCE STRU 94/06/13 21:18:40 1161
  4. c SUBROUTINE XNUAGE(WRK0,JC,WR11,NTABO3,NTABO4,KERRE)
  5. C
  6. C CE PROGRAMME RANGE DANS 2 TABLEAUX LES INFOS RELATIVES A UNE
  7. C COMPOSANTE DE MATERIAU DE TYPE NUAGE
  8. C IL EST UTILISE POUR LES MATR. ENDOMMAGEABLES DE LEMAITRE (26 OU 29)
  9. C
  10. C ENTREES:
  11. C -------
  12. C JC = NUMERO DE COMPOSANTE REPRESENTANT LA COURBE DE TRACTION
  13. C OU LA COURBE k(X) RESPECTIVEMENT POUR MATR. 26 OU 29
  14. C XMATJC = POINTEUR SUR UN OBJET DE TYPE NUAGE REPRESENTANT :
  15. C -LA COURBE DE TRACTION EN FONCTION DE LA TEMPERATURE T
  16. C POUR MATR. 26
  17. C -LA COURBE k(X) EN FONCTION DE LA TEMPERATURE T
  18. C POUR MATR. 29 (k=PARAMETRE X=CONTR.)
  19. C NTABO3 = 0
  20. C NTABO4 = 0
  21. C
  22. C SORTIES:
  23. C -------
  24. C NTABO3 = NBR. DE COURBES
  25. C IABLO3 = TABLEAU CONTENANT POUR CHAQUE COURBE LE NBR. DE PTS. QUI LA
  26. C DEFINIT
  27. C NTABO4 = DIMENSION DU TABLEAU TABLO4
  28. C TABLO4 = TABLEAU CONTENANT :
  29. C T1 EPS11 SIG11 EPS12 SIG12 ... T2 EPS21 SIG21 EPS22 SIG22 ...
  30. C T3 .... POUR MATR. 26
  31. C T1 X11 k11 X12 k12 ... T2 X21 k21 X22 k22 ... T3 ...
  32. C POUR MATR. 29
  33. C
  34. IMPLICIT INTEGER(I-N)
  35. IMPLICIT REAL*8(A-H,O-Z)
  36. -INC CCOPTIO
  37. -INC SMNUAGE
  38. -INC SMEVOLL
  39. -INC SMLREEL
  40. *
  41. SEGMENT WR11
  42. INTEGER IABLO3(NTABO3)
  43. REAL*8 TABLO4(NTABO4)
  44. ENDSEGMENT
  45. *
  46. KERRE=0
  47. c MNUAGE=XMAT(JC)
  48. MNUAGE=nint(xmatjc)
  49. SEGACT MNUAGE
  50. IF(MNUAGE.EQ.0) THEN
  51. MOTERR(1:8)='NUAGE '
  52. CALL ERREUR(37)
  53. KERRE=37
  54. RETURN
  55. ENDIF
  56. NVAR=NUANOM(/2)
  57. IF(NVAR.LE.1) THEN
  58. C SEGDES MNUAGE
  59. INTERR(1)=MNUAGE
  60. INTERR(2)=2
  61. INTERR(3)=2
  62. CALL ERREUR(628)
  63. KERRE=628
  64. RETURN
  65. ENDIF
  66. DO 203 IA=1,NVAR
  67. IF (NUATYP(IA).EQ.'FLOTTANT') GOTO 204
  68. 203 CONTINUE
  69. C SEGDES MNUAGE
  70. INTERR(1)=MNUAGE
  71. MOTERR(1:8)='FLOTTANT'
  72. CALL ERREUR(629)
  73. KERRE=629
  74. RETURN
  75. 204 CONTINUE
  76. DO 205 IB=1,NVAR
  77. IF (NUATYP(IB).EQ.'EVOLUTIO') GOTO 206
  78. 205 CONTINUE
  79. C SEGDES MNUAGE
  80. INTERR(1)=MNUAGE
  81. MOTERR(1:8)='EVOLUTIO'
  82. CALL ERREUR(629)
  83. KERRE=629
  84. RETURN
  85. 206 CONTINUE
  86. NUAVFL=NUAPOI(IA)
  87. NUAVIN=NUAPOI(IB)
  88. SEGACT NUAVFL
  89. SEGACT NUAVIN
  90. NBC1=NUAFLO(/1)
  91. NBC2=NUAINT(/1)
  92. IF (NBC1.NE.NBC2) THEN
  93. C SEGDES MNUAGE,NUAVFL,NUAVIN
  94. CALL ERREUR(625)
  95. KERRE=625
  96. RETURN
  97. ENDIF
  98. IF (NBC1.LE.1) THEN
  99. C SEGDES MNUAGE,NUAVFL,NUAVIN
  100. INTERR(1)=MNUAGE
  101. INTERR(2)=2
  102. INTERR(3)=2
  103. CALL ERREUR(628)
  104. KERRE=628
  105. RETURN
  106. ENDIF
  107. NTABO3=NBC1
  108. J0=1
  109. NTABO4=J0
  110. SEGADJ WR11
  111. DO 301 I=1,NBC1
  112. MEVOLL=NUAINT(I)
  113. IF(MEVOLL.EQ.0) THEN
  114. MOTERR(1:8)='EVOLUTIO'
  115. CALL ERREUR(37)
  116. KERRE=37
  117. RETURN
  118. ENDIF
  119. SEGACT MEVOLL
  120. KEVOLL=IEVOLL(1)
  121. SEGACT KEVOLL
  122. MLREEL=IPROGX
  123. MLREE1=IPROGY
  124. C SEGDES KEVOLL
  125. SEGACT MLREEL,MLREE1
  126. NBPOIX=PROG(/1)
  127. IABLO3(I)=NBPOIX
  128. TABLO4(J0)=NUAFLO(I)
  129. DO 298 J=1,NBPOIX
  130. NTABO4=J0+(2*J)
  131. SEGADJ WR11
  132. TABLO4(J0+(2*J-1))=PROG(J)
  133. TABLO4(J0+2*J)=MLREE1.PROG(J)
  134. 298 CONTINUE
  135. IF (I.LT.NBC1) THEN
  136. J0=J0+1+(2*NBPOIX)
  137. NTABO4=J0
  138. SEGADJ WR11
  139. ENDIF
  140. C SEGDES MLREEL,MLREE1
  141. C SEGDES MEVOLL
  142. 301 CONTINUE
  143. C SEGDES NUAVFL
  144. C SEGDES NUAVIN
  145. C SEGDES MNUAGE
  146. RETURN
  147. END
  148.  
  149.  
  150.  
  151.  
  152.  

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