Télécharger karpohl.eso

Retour à la liste

Numérotation des lignes :

karpohl
  1. C KARPOHL SOURCE CHAT 05/01/13 00:51:36 5004
  2. C***********************************************************************
  3. C* *
  4. C* PROJET : Opérateur LIMI *
  5. C* NOM : KARPOHL *
  6. C* DESCRIPTION : Ce sous programme calcule les coefficients de l'équa- *
  7. C* tion intégrale de quantité de mouvement par la *
  8. C* méthode de Von Karmann-Pohlhausen *
  9. C* LANGAGE : Esope *
  10. C* AUTEUR : Guillaume VENCO - DRN/DMT/SEMT/LTMF *
  11. C* *
  12. C***********************************************************************
  13. C* *
  14. C* APPELES : QUIN2.eso, sous-programme *
  15. C* *
  16. C***********************************************************************
  17. C* *
  18. C* ENTREES : teta: -Epaisseur de quantité de mouvement, *
  19. C* correspond à l'inconnue de l'équation intégrale*
  20. C* de quantité de mouvement *
  21. C* DUE : -Gradient du champ de vitesse extérieure *
  22. C* UE : -Champ de vitesse extérieure *
  23. C* N : -Nombre de noeuds du maillage
  24. C* *
  25. C* SORTIES : H : -Facteur de forme *
  26. C* B : -Coefficient de la relation permettant de *
  27. C* calculer le coefficient de frottement *
  28. C* *
  29. C***********************************************************************
  30. C* *
  31. C* VERSION : 21/04/2000 *
  32. C* CREATION : *
  33. C* *
  34. C***********************************************************************
  35.  
  36. SUBROUTINE KARPOHL (teta,DUE,UE,N,H,B)
  37.  
  38. C* *********************************
  39. C* *** Déclaration des variables ***
  40. C* *********************************
  41.  
  42. IMPLICIT INTEGER(I-N)
  43. IMPLICIT REAL*8 (A-H,O-Z)
  44. REAL*8 H(N),B(N),teta(N)
  45. REAL*8 DUE(N),UE(N)
  46. REAL*8 a1,a2,a3,a4,a5,lambda,lambda2,NU
  47.  
  48. C* *********************************
  49. C* ******** Sous-programme *********
  50. C* *********************************
  51.  
  52. C---- Viscosité
  53. NU=1.d-6
  54.  
  55. C---- Coefficients du polynome en Lambda
  56. a1 = ((37./315.)**2)
  57. a2 = (-2.*37./(315.*945.))
  58. a3 = (1./(945.**2))-(2.*37./(9072.*315.))
  59. a4 = 2./(945.*9072.)
  60. a5 = 1./(9072.**2)
  61.  
  62. C---- Paramètre lambda
  63. C-----recherche de Lambda entre deux valeurs A0 et B0
  64.  
  65. A0=-17.5
  66. B0=12.
  67.  
  68. DO 10 I=1,N
  69.  
  70. C----- Calcul du paramètre lambda2
  71. Lambda2=(teta(I)**2)*DUE(I)*(1./NU)
  72.  
  73. C----- Calcul du paramètre lambda
  74. Lambda2=(-1.)*Lambda2
  75. IF (DUE(I).GE.0.) THEN
  76. A0=0.
  77. B0=12.
  78. ELSE
  79. A0=-17.5
  80. B0=0.
  81. ENDIF
  82. CALL QUIN2(Lambda2,a1,a2,a3,a4,a5,A0,B0,Lambda)
  83.  
  84. C---- Vérification de la validité de lambda
  85. C---- Lambda doit avoir le meme signe que DUE
  86. IF ((DUE(I)*Lambda).LT.0.) THEN
  87. write(6,*) 'ERREUR: Lambda et le gradient de vitesse de
  88. & signe différent'
  89. RETURN
  90. ENDIF
  91. IF ((Lambda.GT.28.2).OR.(Lambda.LT.(-37.79))) THEN
  92. write(6,*) 'ERREUR: Le calcul donne H<0'
  93. RETURN
  94. ENDIF
  95.  
  96. C----- Calcul du facteur de forme H et du B
  97. s1 =((3./10.)-(Lambda/120))
  98. s2 =((37./315.)-(Lambda/945.)-((Lambda**2)/9072.))
  99. s3 = (2.+(Lambda/6.))
  100. H(I) = s1*(s2**(-1))
  101. B(I) = s2*s3
  102.  
  103. 10 CONTINUE
  104.  
  105. RETURN
  106. END
  107.  
  108. C* *********************************
  109. C* **** Fin Sous-Programme *******
  110. C* *********************************
  111.  
  112.  
  113.  
  114.  
  115.  

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