Télécharger coml14.eso

Retour à la liste

Numérotation des lignes :

  1. C COML14 SOURCE BP208322 17/03/01 21:16:16 9325
  2. SUBROUTINE COML14(iqmod,wrk52,wrk53,ib,igau,iretou)
  3.  
  4. IMPLICIT REAL*8(a-h,o-z)
  5. IMPLICIT INTEGER(I-N)
  6.  
  7. real*8 sst(3)
  8.  
  9. -INC CCOPTIO
  10. -INC CCREEL
  11. * segment deroulant le mcheml
  12. -INC DECHE
  13. -INC SMCHPOI
  14. -INC SMELEME
  15. -INC SMLENTI
  16. -INC SMLREEL
  17. -INC SMMODEL
  18.  
  19. imodel = iqmod
  20.  
  21. IF (cmate.eq.'AFFINE') then
  22. *à entrer par xmatf (CD composante facultative en fin de tableau)
  23. xkd = xmatf(1)
  24. xcoef1 = xmatf(2)
  25. xcoef2 = xmatf(3)
  26. do jj = 1,gradf(/1)
  27. * sigf(jj) = gradf(jj) * xkd/xcoef1 * (-1.)
  28. if (gradf(jj).ne.0.d0) then
  29. uu = ABS(gradf(jj))/gradf(jj)
  30. sst(jj) = (ABS(gradf(jj))**xcoef2)*uu*xkd/xcoef1*(-1.)
  31. * if (sigf(jj).ne.sst(jj)) write(6,*) ib,igau,jj,sigf(jj),sst(jj)
  32. sigf(jj) = sst(jj)
  33. else
  34. sigf(jj) = 0.d0
  35. endif
  36. enddo
  37. if (ib.eq.1.and.igau.eq.1) then
  38. * write(6,*) 'temps', temp0 ,xmatf(/1),xmatf(1)
  39. * write(6,*) 'contrainte ' , valmat(2),valmat(3),valmat(4)
  40. endif
  41. ENDIF
  42.  
  43. IF (cmate.eq.'VISQUEUS') THEN
  44. xkd = xmatf(1)
  45. xcoef1 = xmatf(2)
  46. xcoef2 = xmatf(3)
  47. delt = tempf - temp0
  48. ycoef = (xcoef2/delt) + xcoef1
  49.  
  50. do jj = 1,gradf(/1)
  51. vic1 = var0(jj)
  52. uu = gradf(jj)
  53. delvic1 = xcoef1*(uu -vic1)/ycoef
  54. varf(jj) = vic1 + delvic1
  55. sigf(jj)= delvic1 * xcoef2/delt
  56. enddo
  57.  
  58. if (ib.eq.1.and.igau.eq.1) then
  59. * write(6,*) xcoef1, xcoef2, ycoef
  60. * write(6,*) 'contrainte ' , (sigf(jj),jj=1,sigf(/1))
  61. endif
  62.  
  63. ENDIF
  64. RETURN
  65. END
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  

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