Télécharger clgama.eso

Retour à la liste

Numérotation des lignes :

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

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