Télécharger xnuag1.eso

Retour à la liste

Numérotation des lignes :

xnuag1
  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 PPARAM
  37. -INC CCOPTIO
  38. -INC SMNUAGE
  39. -INC SMEVOLL
  40. -INC SMLREEL
  41. *
  42. SEGMENT WR11
  43. INTEGER IABLO3(NTABO3)
  44. REAL*8 TABLO4(NTABO4)
  45. ENDSEGMENT
  46. *
  47. KERRE=0
  48. c MNUAGE=XMAT(JC)
  49. MNUAGE=nint(xmatjc)
  50. SEGACT MNUAGE
  51. IF(MNUAGE.EQ.0) THEN
  52. MOTERR(1:8)='NUAGE '
  53. CALL ERREUR(37)
  54. KERRE=37
  55. RETURN
  56. ENDIF
  57. NVAR=NUANOM(/2)
  58. IF(NVAR.LE.1) THEN
  59. C SEGDES MNUAGE
  60. INTERR(1)=MNUAGE
  61. INTERR(2)=2
  62. INTERR(3)=2
  63. CALL ERREUR(628)
  64. KERRE=628
  65. RETURN
  66. ENDIF
  67. DO 203 IA=1,NVAR
  68. IF (NUATYP(IA).EQ.'FLOTTANT') GOTO 204
  69. 203 CONTINUE
  70. C SEGDES MNUAGE
  71. INTERR(1)=MNUAGE
  72. MOTERR(1:8)='FLOTTANT'
  73. CALL ERREUR(629)
  74. KERRE=629
  75. RETURN
  76. 204 CONTINUE
  77. DO 205 IB=1,NVAR
  78. IF (NUATYP(IB).EQ.'EVOLUTIO') GOTO 206
  79. 205 CONTINUE
  80. C SEGDES MNUAGE
  81. INTERR(1)=MNUAGE
  82. MOTERR(1:8)='EVOLUTIO'
  83. CALL ERREUR(629)
  84. KERRE=629
  85. RETURN
  86. 206 CONTINUE
  87. NUAVFL=NUAPOI(IA)
  88. NUAVIN=NUAPOI(IB)
  89. SEGACT NUAVFL
  90. SEGACT NUAVIN
  91. NBC1=NUAFLO(/1)
  92. NBC2=NUAINT(/1)
  93. IF (NBC1.NE.NBC2) THEN
  94. C SEGDES MNUAGE,NUAVFL,NUAVIN
  95. CALL ERREUR(625)
  96. KERRE=625
  97. RETURN
  98. ENDIF
  99. IF (NBC1.LE.1) THEN
  100. C SEGDES MNUAGE,NUAVFL,NUAVIN
  101. INTERR(1)=MNUAGE
  102. INTERR(2)=2
  103. INTERR(3)=2
  104. CALL ERREUR(628)
  105. KERRE=628
  106. RETURN
  107. ENDIF
  108. NTABO3=NBC1
  109. J0=1
  110. NTABO4=J0
  111. SEGADJ WR11
  112. DO 301 I=1,NBC1
  113. MEVOLL=NUAINT(I)
  114. IF(MEVOLL.EQ.0) THEN
  115. MOTERR(1:8)='EVOLUTIO'
  116. CALL ERREUR(37)
  117. KERRE=37
  118. RETURN
  119. ENDIF
  120. SEGACT MEVOLL
  121. KEVOLL=IEVOLL(1)
  122. SEGACT KEVOLL
  123. MLREEL=IPROGX
  124. MLREE1=IPROGY
  125. C SEGDES KEVOLL
  126. SEGACT MLREEL,MLREE1
  127. NBPOIX=PROG(/1)
  128. IABLO3(I)=NBPOIX
  129. TABLO4(J0)=NUAFLO(I)
  130. DO 298 J=1,NBPOIX
  131. NTABO4=J0+(2*J)
  132. SEGADJ WR11
  133. TABLO4(J0+(2*J-1))=PROG(J)
  134. TABLO4(J0+2*J)=MLREE1.PROG(J)
  135. 298 CONTINUE
  136. IF (I.LT.NBC1) THEN
  137. J0=J0+1+(2*NBPOIX)
  138. NTABO4=J0
  139. SEGADJ WR11
  140. ENDIF
  141. C SEGDES MLREEL,MLREE1
  142. C SEGDES MEVOLL
  143. 301 CONTINUE
  144. C SEGDES NUAVFL
  145. C SEGDES NUAVIN
  146. C SEGDES MNUAGE
  147. RETURN
  148. END
  149.  
  150.  
  151.  
  152.  
  153.  

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