Télécharger ccgmur.eso

Retour à la liste

Numérotation des lignes :

  1. C CCGMUR SOURCE GOUNAND 05/12/21 21:16:36 5281
  2. SUBROUTINE CCGMUR(LCOF,
  3. $ FC,
  4. $ IMPR,IRET)
  5. IMPLICIT REAL*8 (A-H,O-Z)
  6. IMPLICIT INTEGER (I-N)
  7. C***********************************************************************
  8. C NOM : CCGMUR
  9. C DESCRIPTION : Calcul de la loi de comportement aux points de Gauss :
  10. C un mur.
  11. C
  12. C Si t1>t2 : coef = t3 * t4
  13. C Sinon : coef = t3
  14. C
  15. C
  16. C
  17. C LANGAGE : ESOPE
  18. C AUTEUR : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/LTMF)
  19. C mél : gounand@semt2.smts.cea.fr
  20. C***********************************************************************
  21. C APPELES :
  22. C APPELE PAR :
  23. C***********************************************************************
  24. C ENTREES :
  25. C ENTREES/SORTIES :
  26. C SORTIES : -
  27. C TRAVAIL :
  28. C***********************************************************************
  29. C VERSION : v1, 18/05/04, version initiale
  30. C HISTORIQUE : v1, 18/05/04, création
  31. C HISTORIQUE :
  32. C HISTORIQUE :
  33. C***********************************************************************
  34. C Prière de PRENDRE LE TEMPS de compléter les commentaires
  35. C en cas de modification de ce sous-programme afin de faciliter
  36. C la maintenance !
  37. C***********************************************************************
  38. -INC CCOPTIO
  39. CBEGININCLUDE SMCHAEL
  40. SEGMENT MCHAEL
  41. POINTEUR IMACHE(N1).MELEME
  42. POINTEUR ICHEVA(N1).MCHEVA
  43. ENDSEGMENT
  44. SEGMENT MCHEVA
  45. REAL*8 VELCHE(NBLIG,NBCOL,N2LIG,N2COL,NBPOI,NBELM)
  46. ENDSEGMENT
  47. SEGMENT LCHEVA
  48. POINTEUR LISCHE(NBCHE).MCHEVA
  49. ENDSEGMENT
  50. CENDINCLUDE SMCHAEL
  51. INTEGER NBLIG,NBCOL,N2LIG,N2COL,NBPOI,NBELM,N1
  52. POINTEUR FC.MCHEVA
  53. POINTEUR LCOF.LCHEVA
  54. POINTEUR T1.MCHEVA
  55. POINTEUR T2.MCHEVA
  56. POINTEUR T3.MCHEVA
  57. POINTEUR T4.MCHEVA
  58. *
  59. INTEGER IMPR,IRET
  60. *
  61. * Executable statements
  62. *
  63. IF (IMPR.GT.1) WRITE(IOIMP,*) 'Entrée dans ccgmur'
  64. NLFC=FC.VELCHE(/6)
  65. NPFC=FC.VELCHE(/5)
  66. T1=LCOF.LISCHE(1)
  67. T2=LCOF.LISCHE(2)
  68. T3=LCOF.LISCHE(3)
  69. T4=LCOF.LISCHE(4)
  70. NLC1=T1.VELCHE(/6)
  71. NPC1=T1.VELCHE(/5)
  72. NLC2=T2.VELCHE(/6)
  73. NPC2=T2.VELCHE(/5)
  74. NLC3=T3.VELCHE(/6)
  75. NPC3=T3.VELCHE(/5)
  76. NLC4=T4.VELCHE(/6)
  77. NPC4=T4.VELCHE(/5)
  78. DO ILFC=1,NLFC
  79. IF (NLC1.EQ.1) THEN
  80. ILC1=1
  81. ELSE
  82. ILC1=ILFC
  83. ENDIF
  84. IF (NLC2.EQ.1) THEN
  85. ILC2=1
  86. ELSE
  87. ILC2=ILFC
  88. ENDIF
  89. IF (NLC3.EQ.1) THEN
  90. ILC3=1
  91. ELSE
  92. ILC3=ILFC
  93. ENDIF
  94. IF (NLC4.EQ.1) THEN
  95. ILC4=1
  96. ELSE
  97. ILC4=ILFC
  98. ENDIF
  99. DO IPFC=1,NPFC
  100. IF (NPC1.EQ.1) THEN
  101. IPC1=1
  102. ELSE
  103. IPC1=IPFC
  104. ENDIF
  105. IF (NPC2.EQ.1) THEN
  106. IPC2=1
  107. ELSE
  108. IPC2=IPFC
  109. ENDIF
  110. IF (NPC3.EQ.1) THEN
  111. IPC3=1
  112. ELSE
  113. IPC3=IPFC
  114. ENDIF
  115. IF (NPC4.EQ.1) THEN
  116. IPC4=1
  117. ELSE
  118. IPC4=IPFC
  119. ENDIF
  120. XT1=T1.VELCHE(1,1,1,1,IPC1,ILC1)
  121. XT2=T2.VELCHE(1,1,1,1,IPC2,ILC2)
  122. XT3=T3.VELCHE(1,1,1,1,IPC3,ILC3)
  123. XT4=T4.VELCHE(1,1,1,1,IPC4,ILC4)
  124. IF (XT1.GT.XT2) THEN
  125. FC.VELCHE(1,1,1,1,IPFC,ILFC)=XT3
  126. ELSE
  127. FC.VELCHE(1,1,1,1,IPFC,ILFC)=XT4
  128. ENDIF
  129. ENDDO
  130. ENDDO
  131. * SEGPRT,T1
  132. * SEGPRT,T2
  133. * SEGPRT,T3
  134. * SEGPRT,T4
  135. * SEGPRT,FC
  136. * STOP 16
  137. *
  138. * Normal termination
  139. *
  140. IRET=0
  141. RETURN
  142. *
  143. * Format handling
  144. *
  145. *
  146. * Error handling
  147. *
  148. 9999 CONTINUE
  149. IRET=1
  150. WRITE(IOIMP,*) 'An error was detected in subroutine ccgmur'
  151. RETURN
  152. *
  153. * End of subroutine CCGMUR
  154. *
  155. END
  156.  
  157.  
  158.  

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