Télécharger fpcoq8.eso

Retour à la liste

Numérotation des lignes :

fpcoq8
  1. C FPCOQ8 SOURCE MB234859 16/10/07 21:15:07 9121
  2. SUBROUTINE FPCOQ8(IPTVPR,IPMAIL,IPTINT,IVACAR,IPTNOE,IVAFOR)
  3. *______________________________________________________________________
  4. *
  5. * CALCULE LES FORCES DE PRESSION AUX NOEUDS DES COQUES COQ8 ,COQ6
  6. *
  7. *
  8. * ENTREES :
  9. * ---------
  10. *
  11. * IPTVPR POINTEUR SUR LE CHAMELEM DES PRESSIONS (actif)
  12. * IPMAIL POINTEUR LE MAILLAGE (actif)
  13. * IPTINT POINTEUR SUR LE CHAMELEM DE L'INTEGRATION
  14. * (SEGMENT ACTIF EN ENTREE, NON MODIFIE EN SORTIE)
  15. * IVACAR POINTEUR SUR UN SEGMENT MPTVAL CONCERNANT LES CARA-
  16. * CTERISTIQUES (EPAISSEUR AUX NOEUDS)
  17. * IPTNOE POINTEUR SUR L'ALIAS DU CHAMELEM D'INTEGRATION CONTENANT
  18. * LES FONCTIONS DE FORME AUX NOEUDS
  19. * IVAFOR POINTEUR SUR UN MPTVAL ET MELVALS ASSOCIEES AUX FORCES
  20. * ET MOMENTS AUX NOEUDS
  21. *
  22. * PASSAGE AUX NOUVEAU CHAMELEM PAR JM CAMPENON LE 13 09 90
  23. *
  24. *_______________________________________________________________________
  25. *
  26. IMPLICIT INTEGER(I-N)
  27. IMPLICIT REAL*8(A-H,O-Z)
  28. *
  29. -INC SMCHAML
  30. -INC SMELEME
  31. -INC SMINTE
  32. -INC SMCOORD
  33.  
  34. -INC PPARAM
  35. -INC CCOPTIO
  36. *
  37. SEGMENT MPTVAL
  38. INTEGER IPOS(NS) ,NSOF(NS)
  39. INTEGER IVAL(NCOSOU)
  40. CHARACTER*16 TYVAL(NCOSOU)
  41. ENDSEGMENT
  42. *
  43. DIMENSION TH(8),VNGAU(3),XJ(3,3),TXR(3,3,8),XE(3,8)
  44. *
  45. MELVA1=IPTVPR
  46. *
  47. MINTE=IPTINT
  48. c* SEGACT MINTE <- Actif en E/S
  49. NBPGAU=POIGAU(/1)
  50. NBGAU2=NBPGAU/2
  51. *
  52. MINTE1=IPTNOE
  53. SEGACT MINTE1
  54. *
  55. MELEME=IPMAIL
  56. NBELEM=NUM(/2)
  57. NBNN=NUM(/1)
  58. *
  59. * BOUCLE SUR LES ELEMENTS
  60. *
  61. DO 1 IB=1,NBELEM
  62. *
  63. * CALCUL DE L'INDICE D'ORIENTATION DE LA COQUE % PRESSION
  64. * DANS FPCOQU LES ELEMENTS SONT REORIENTES EN FONCTION DU VECTEUR
  65. * DIRECTIONNEL DE LA PRESSION DONC LA PRESSION EST APPLIQUEE
  66. * SUR LA FACE -1
  67. *
  68. ZETA=-1.D0
  69. *
  70. * CALCUL DE L EPAISSEUR MOYENNE
  71. * CALCUL DE TH(IPTELE)
  72. *
  73. EPAI=0.D0
  74. MPTVAL=IVACAR
  75. MELVAL=IVAL(1)
  76. IBMN=MIN(IB,VELCHE(/2))
  77. IF(VELCHE(/1).EQ.1) EPAI=VELCHE(1,IBMN)
  78. IF(VELCHE(/1).GT.1) THEN
  79. DO 2 I=1,VELCHE(/1)
  80. EPAI=EPAI+VELCHE(I,IBMN)
  81. 2 CONTINUE
  82. EPAI=EPAI/VELCHE(/1)
  83. ENDIF
  84. DO 3 J=1,NBNN
  85. TH(J)=EPAI
  86. 3 CONTINUE
  87. *
  88. * DETERMINATION DES REPERES LOCAUX AUX NOEUDS
  89. *
  90. CALL DOXE(XCOOR,IDIM,NBNN,NUM,IB,XE)
  91. CALL CQ8LOC(XE,NBNN,MINTE1.SHPTOT,TXR,IRR)
  92. *
  93. * BOUCLE SUR LES POINTS DE GAUSS
  94. *
  95. IBMN=MIN(IB,MELVA1.VELCHE(/2))
  96. DO 10 IGAU=1,NBGAU2
  97. IGMN=MIN(IGAU,MELVA1.VELCHE(/1))
  98. PRE=MELVA1.VELCHE(IGMN,IBMN)
  99. *
  100. * VECTEUR NORMAL A LA SURFACE DE L ELEMENT AU PT DE GAUSS IGAU
  101. * NE PAS NORMALISER LE VECTEUR CAR IL INTEGRE L'ELEMENT
  102. * DE SURFACE POUR L'INTEGRATION
  103. *
  104. CALL COQ8JC(IGAU,NBNN,ZETA,XE,TH,TXR,SHPTOT,XJ,DET,IRR)
  105. VNGAU(1)=XJ(1,2)*XJ(2,3)-XJ(2,2)*XJ(1,3)
  106. VNGAU(2)=XJ(1,3)*XJ(2,1)-XJ(2,3)*XJ(1,1)
  107. VNGAU(3)=XJ(1,1)*XJ(2,2)-XJ(2,1)*XJ(1,2)
  108. *
  109. * BOUCLE SUR NOEUDS DE L'ELEMENT
  110. *
  111. MPTVAL=IVAFOR
  112. DO 20 J=1,NBNN
  113. *
  114. * FORCES AUX NOEUDS
  115. *
  116. WGTF=POIGAU(IGAU)*PRE
  117. MELVAL=IVAL(1)
  118. VELCHE(J,IB)=VELCHE(J,IB)+WGTF*SHPTOT(1,J,IGAU)*VNGAU(1)
  119. MELVAL=IVAL(2)
  120. VELCHE(J,IB)=VELCHE(J,IB)+WGTF*SHPTOT(1,J,IGAU)*VNGAU(2)
  121. MELVAL=IVAL(3)
  122. VELCHE(J,IB)=VELCHE(J,IB)+WGTF*SHPTOT(1,J,IGAU)*VNGAU(3)
  123. *
  124. * (V2JT)
  125. * MOMENTS AUX NDS = 0.5*ZETA*WT*P*TH(J)* (V1J,-V2J)(V1JT) *(VNGAU)
  126. *
  127. * CALCUL DE LA MATRICE DE PASSAGE NOTEE XJ(3,3)
  128. *
  129. DO 50 I=1,3
  130. XJ(I,I)=0.
  131. 50 CONTINUE
  132. XJ(1,2) = TXR(1,1,J)*TXR(2,2,J)-TXR(2,1,J)*TXR(1,2,J)
  133. XJ(1,3) = TXR(1,1,J)*TXR(3,2,J)-TXR(1,2,J)*TXR(3,1,J)
  134. XJ(2,3) = TXR(2,1,J)*TXR(3,2,J)-TXR(2,2,J)*TXR(3,1,J)
  135. DO 51 I=1,3
  136. DO 51 L=I,3
  137. XJ(L,I) = -XJ(I,L)
  138. 51 CONTINUE
  139. *
  140. * VALEURS DES MOMENTS AUX NOEUDS
  141. *
  142. WGTM=0.5D0*ZETA*TH(J)*POIGAU(IGAU)*PRE
  143. *
  144. DO 60 I=1,3
  145. MELVAL=IVAL(4)
  146. VELCHE(J,IB)=VELCHE(J,IB)+WGTM*SHPTOT(1,J,IGAU)*XJ(I,1)*VNGAU(I)
  147. MELVAL=IVAL(5)
  148. VELCHE(J,IB)=VELCHE(J,IB)+WGTM*SHPTOT(1,J,IGAU)*XJ(I,2)*VNGAU(I)
  149. MELVAL=IVAL(6)
  150. VELCHE(J,IB)=VELCHE(J,IB)+WGTM*SHPTOT(1,J,IGAU)*XJ(I,3)*VNGAU(I)
  151. 60 CONTINUE
  152. 20 CONTINUE
  153. 10 CONTINUE
  154. 1 CONTINUE
  155.  
  156. c* SEGDES MINTE <- Actif en E/S
  157. SEGDES MINTE1
  158. * Segment supprime dans fpcoqu.eso
  159. c* SEGSUP MELVA1
  160.  
  161. RETURN
  162. END
  163.  
  164.  
  165.  
  166.  

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