Télécharger bwcw3d.eso

Retour à la liste

Numérotation des lignes :

bwcw3d
  1. C BWCW3D SOURCE PV090527 23/01/27 21:15:11 11574
  2. subroutine bwcw3d(bw,pw,mshr,kmat,epse6,epsk6,
  3. # epsm6,epspc6,epspt6,epspw6,epspg6,epsps6,bw1,pw1,mwat,
  4. # np,dp_deplc,dp_deplt,dp_deplw,dp_deplg,dp_depls,
  5. # dp_depse,dp_depsk,dp_depsm,slimtp)
  6.  
  7. c calcul de la pression de gel et du coeff de biot associé
  8.  
  9. implicit real*8 (a-h,o-z)
  10. implicit integer (i-n)
  11.  
  12. c variables externes
  13. real*8 bw,pw,mwat,bw1,pw1,mshr,kmat
  14. integer np
  15. real*8 dp_deplc(np,6),dp_deplt(np,6),dp_deplw(np,6),dp_deplg(np,6)
  16. real*8 dp_depls(np,6),dp_depse(np,6),dp_depsk(np,6),dp_depsm(np,6)
  17. real*8 epse6(6),epsk6(6),epsm6(6),epspc6(6),epspt6(6),slimtp(np)
  18. real*8 epspg6(6),epspw6(6),epsps6(6)
  19.  
  20. c variables locales
  21. real*8 trepsw,trepse,trepsk,trepsm
  22.  
  23. c contrainte maxi de traction compatible
  24. slimtp(1)=0.d0
  25.  
  26. if(pw.ne.0.) then
  27. if(bw.gt.0.) then
  28. c raideur des clusters hydriques
  29. mwat=-kmat/bw
  30. trepsw=0.d0
  31. do i=1,3
  32. trepsw=trepsw+epspw6(i)
  33. end do
  34. c reduction de l effet de leau a cause de la fissuration
  35. pw1=pw-mwat*trepsw
  36. bw1=bw
  37. if(pw1.gt.0.d0) then
  38. pw1=0.d0
  39. end if
  40. do i=1,6
  41. dp_depse(1,i)=0.d0
  42. dp_depsk(1,i)=0.d0
  43. dp_depsm(1,i)=0.d0
  44. dp_deplc(1,i)=0.d0
  45. dp_deplt(1,i)=0.d0
  46. if (i.le.3) then
  47. dp_deplw(1,i)=-mwat
  48. else
  49. dp_deplw(1,i)=0.d0
  50. end if
  51. dp_deplg(1,i)=0.d0
  52. dp_depls(1,i)=0.d0
  53. end do
  54. else
  55. c bwPw tend vers 0 bwpw tend vers Mshr (que si mvg=1/2 !)
  56. pw1=-mshr
  57. bw1=1.0d0
  58. do i=1,6
  59. dp_depse(1,i)=0.d0
  60. dp_depsk(1,i)=0.d0
  61. dp_depsm(1,i)=0.d0
  62. dp_deplc(1,i)=0.d0
  63. dp_deplt(1,i)=0.d0
  64. dp_deplw(1,i)=0.d0
  65. dp_deplg(1,i)=0.d0
  66. dp_depls(1,i)=0.d0
  67. end do
  68. end if
  69. else
  70. pw1=0.d0
  71. bw1=bw
  72. do i=1,6
  73. dp_depse(1,i)=0.d0
  74. dp_depsk(1,i)=0.d0
  75. dp_depsm(1,i)=0.d0
  76. dp_deplc(1,i)=0.d0
  77. dp_deplt(1,i)=0.d0
  78. dp_deplw(1,i)=0.d0
  79. dp_deplg(1,i)=0.d0
  80. dp_depls(1,i)=0.d0
  81. end do
  82. end if
  83. c do i=1,6
  84. c print*, 'bwcw3d dp_depse(1,',i,')=',dp_depse(1,i)
  85. c end do
  86. return
  87. end
  88.  
  89.  
  90.  
  91.  

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