Télécharger clgama.eso

Retour à la liste

Numérotation des lignes :

clgama
  1. C CLGAMA SOURCE CB215821 26/08/24 21:15:34 12622
  2. SUBROUTINE CLGAMA (SIGMA,DSIGT,RT,DEFP,DDEFP,DEFRF,NBVECD,
  3. . KRITC1,KRITC2,KRITC3,KRITE1,KRITE2,KRITE3,GAMA,
  4. . YUNG,KOMPR,KERRE)
  5. C
  6. IMPLICIT INTEGER(I-N)
  7. IMPLICIT REAL*8(A-H,O-Z)
  8.  
  9. -INC PPARAM
  10. -INC CCOPTIO
  11. C
  12. DIMENSION SIGMA(*),DSIGT(*),SIGMAT(6),SIG(3),DSIG(3),KOMPR(*),
  13. . DEFP(*),DDEFP(*),DEFPT(6),DEFRF(*),RT(*),VGAMA(3,2)
  14. C
  15. C INITIALISATION
  16. C
  17. GAMRF=1.D-7
  18. DO 101 I=1,3
  19. DO 100 J=1,2
  20. VGAMA(I,J)=1.D0
  21. 100 CONTINUE
  22. 101 CONTINUE
  23. C
  24. C **********************************************************************
  25. C ******************* CAS DE NB DE VECT PROPRES DONNES = 0 *************
  26. C **********************************************************************
  27. C
  28. IF(NBVECD.EQ.0) THEN
  29. C
  30. CALL GAMT3 (SIGMA,DSIGT,RT(3),YUNG,GAMA,KERRE)
  31. IF (KERRE.NE.0) RETURN
  32. C
  33. IF(ABS(GAMA).LT.GAMRF) GAMA=0.D0
  34. C
  35. IF(IIMPI.EQ.9) THEN
  36. WRITE(IOIMP,*) ' GAMA =',GAMA
  37. ENDIF
  38. C
  39. RETURN
  40. ENDIF
  41. C
  42. C **********************************************************************
  43. C ******************* CAS DE NB DE VECT PROPRES DONNES = 1 *************
  44. C **********************************************************************
  45. C
  46. IF(NBVECD.EQ.1) THEN
  47. C
  48. IF(KRITC3.EQ.1) THEN
  49. RTI=RT(3)
  50. IF (KOMPR(3).EQ.1) RTI=0.D0
  51. CALL GAMTAF (SIGMA(3),DSIGT(3),RTI,VGAMA(3,1))
  52. ENDIF
  53. C
  54. IF(KRITE3.EQ.1) THEN
  55. CALL GAMTAF (DEFP(3),DDEFP(3),DEFRF(3),VGAMA(3,2))
  56. ENDIF
  57. C
  58. IF(KRITC1.EQ.1.OR.KRITC2.EQ.1) THEN
  59. CALL GAMT2 (SIGMA,DSIGT,RT(1),YUNG,VGAMA(1,1))
  60. ENDIF
  61. C
  62. GAMA=MIN (VGAMA(1,1),VGAMA(3,1),VGAMA(3,2))
  63. C
  64. IF(ABS(GAMA).LT.GAMRF) GAMA=0.D0
  65. C
  66. IF(IIMPI.EQ.9) THEN
  67. WRITE(IOIMP,*) ' GAMA =',GAMA
  68. WRITE(IOIMP,*) 'VGAMA11=',VGAMA(1,1)
  69. WRITE(IOIMP,*) 'VGAMA32=',VGAMA(3,2)
  70. ENDIF
  71. C
  72. RETURN
  73. ENDIF
  74. C
  75. C **********************************************************************
  76. C ******************* CAS DE NB DE VECT PROPRES DONNES = 2 *************
  77. C **********************************************************************
  78. C
  79. IF(NBVECD.EQ.2) THEN
  80. C
  81. IF(KRITC1.EQ.1) THEN
  82. RTI=RT(1)
  83. IF (KOMPR(1).EQ.1) RTI=0.D0
  84. CALL GAMTAF (SIGMA(1),DSIGT(1),RTI,VGAMA(1,1))
  85. ENDIF
  86. C
  87. IF(KRITE1.EQ.1) THEN
  88. CALL GAMTAF (DEFP(1),DDEFP(1),DEFRF(1),VGAMA(1,2))
  89. ENDIF
  90. C
  91. IF(KRITC2.EQ.1) THEN
  92. RTI=RT(2)
  93. IF (KOMPR(2).EQ.1) RTI=0.D0
  94. CALL GAMTAF (SIGMA(2),DSIGT(2),RTI,VGAMA(2,1))
  95. ENDIF
  96. C
  97. IF(KRITE2.EQ.1) THEN
  98. CALL GAMTAF (DEFP(2),DDEFP(2),DEFRF(2),VGAMA(2,2))
  99. ENDIF
  100. C
  101. IF(KRITC3.EQ.1) THEN
  102. RTI=RT(3)
  103. IF (KOMPR(3).EQ.1) RTI=0.D0
  104. CALL GAMTAF (SIGMA(3),DSIGT(3),RTI,VGAMA(3,1))
  105. ENDIF
  106. C
  107. IF(KRITE3.EQ.1) THEN
  108. CALL GAMTAF (DEFP(3),DDEFP(3),DEFRF(3),VGAMA(3,2))
  109. ENDIF
  110. C
  111. GAMA=MIN (VGAMA(1,1),VGAMA(1,2),
  112. . VGAMA(2,1),VGAMA(2,2),
  113. . VGAMA(3,1),VGAMA(3,2))
  114. C
  115. IF(ABS(GAMA).LT.GAMRF) GAMA=0.D0
  116. C
  117. IF(IIMPI.EQ.9) THEN
  118. WRITE(IOIMP,*) ' GAMA =',GAMA
  119. WRITE(IOIMP,*) 'VGAMA11=',VGAMA(1,1)
  120. WRITE(IOIMP,*) 'VGAMA12=',VGAMA(1,2)
  121. WRITE(IOIMP,*) 'VGAMA21=',VGAMA(2,1)
  122. WRITE(IOIMP,*) 'VGAMA22=',VGAMA(2,2)
  123. WRITE(IOIMP,*) 'VGAMA31=',VGAMA(3,1)
  124. WRITE(IOIMP,*) 'VGAMA32=',VGAMA(3,2)
  125. ENDIF
  126. C
  127. RETURN
  128. ENDIF
  129. C
  130. END
  131.  
  132.  
  133.  

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