Télécharger depge1.eso

Retour à la liste

Numérotation des lignes :

depge1
  1. C DEPGE1 SOURCE CB215821 25/04/23 21:15:13 12247
  2. C
  3. SUBROUTINE DEPGE1(IPB,IPX,QI,MOT,IBBX2,IPLMOX,IPLMOY)
  4. C
  5. C********************************************************************
  6. C
  7. C SBR APPELE PAR DEPGEN
  8. C
  9. C CALCUL DES DEPLACEMENTS GENERALISES
  10. C """""""""""""""""""""""""""""""""""
  11. C ECRIT PAR D. BROCHARD 15/5/86
  12. C
  13. C
  14. C IPB POINTEUR MASSE
  15. C IPX POINTEUR MODE
  16. C PROPRE VECTEUR DES CARACTERISTIQUES MODALES)
  17. C MOT NOM DE LA COMPOSANTE
  18. C IBBX2 POINTEUR SUR CHPO M*X
  19. C IPLIMO POINTEUR SUR LIST MOTS TABLEAU UX FX ... POUR APPEL A
  20. C XTY1
  21. C
  22. C CE SBR CALCULE DTMU
  23. C TOUT D ABORD GENERATION DU VECTEUR U AYANT DES COMPOSANTES
  24. C DE VALEUR 1. SUR LES VARIABLES UX UY UZ OU SUR UR UT DANS
  25. C LEC CAS AXI OU FOURIER (1 OU -1 SELON L HARMONIQUE)
  26. C
  27. C SBR APPELANT : DEPGEN
  28. C
  29. C SBR APPELE : YTMX,DTCHPO,PLACE
  30. C
  31. C LE 15/05/86 : OPTION FOURIER N DIFF. 0 NON TESTEE
  32. C NUMERO D HARMONIQUE NON ECRITE DANS CHAMP POINT
  33. C
  34. C
  35. C
  36. C LE 08/07/86 : IFOPOI ET NOHARM CORRECTS SPR. TESTE DANS LE
  37. C CAS FOURIER AVEC UNE SEULE HARMONIQUE. RESTE
  38. C A TESTER LE CAS AXISYMETRIQUE.
  39. C
  40. C********************************************************************
  41. C
  42. IMPLICIT INTEGER(I-N)
  43. IMPLICIT REAL*8(A-H,O-Z)
  44.  
  45. -INC PPARAM
  46. -INC CCOPTIO
  47.  
  48. -INC SMCHPOI
  49. -INC SMCOORD
  50. -INC SMELEME
  51.  
  52. SEGMENT MTRA(NSOUP1)
  53. C
  54. REAL*8 QI
  55. CHARACTER*(*) MOT
  56.  
  57. CHARACTER*(LOCOMP) MOREF(3),MOT1,MOT2(3),MOT3
  58. DATA MOT2/'UR ','UT ','UZ '/,MOREF/'UX ','UY ','UZ '/
  59. C
  60. C EXTRAIRE LA COMPOSANTE DE NOM MOT
  61. C
  62. IHARM1=0
  63. MCHPO1=IPX
  64. SEGACT MCHPO1
  65. IF(MCHPO1.IFOPOI.NE.1) GOTO 1001
  66. LMOREF=3
  67. CALL PLACE(MOREF,LMOREF,IMOT,MOT)
  68. GOTO (1,2,3),IMOT
  69. 1 CONTINUE
  70. C
  71. C UX
  72. C
  73. IHARM1=1
  74. IDEB=1
  75. IFIN=2
  76. GOTO 1001
  77. 2 CONTINUE
  78. C
  79. C UY
  80. C
  81. IHARM1=-1
  82. IDEB=1
  83. IFIN=2
  84. GOTO 1001
  85. 3 CONTINUE
  86. C
  87. C UZ
  88. C
  89. IDEB=3
  90. IFIN=3
  91. C
  92. 1001 CONTINUE
  93. NSOUP1=MCHPO1.IPCHP(/1)
  94. SEGINI MTRA
  95. NSOUPO=0
  96. C
  97. C BOUCLE SUR LES SOUS PAQUETS DE MCHPO1
  98. C
  99. IF(MCHPO1.IFOPOI.EQ.1) GOTO 400
  100. DO 100 IA=1,NSOUP1
  101. MSOUP1=MCHPO1.IPCHP(IA)
  102. SEGACT MSOUP1
  103. NC1=MSOUP1.NOCOMP(/2)
  104. DO 110 IB=1,NC1
  105. MOT1=MSOUP1.NOCOMP(IB)
  106. IF(MOT1.NE.MOT) GOTO 110
  107. NSOUPO=NSOUPO+1
  108. MTRA(NSOUPO)=MSOUP1
  109. GOTO 401
  110. 110 CONTINUE
  111. 401 CONTINUE
  112. 100 CONTINUE
  113. GOTO 500
  114. 400 CONTINUE
  115. DO 410 IA=1,NSOUP1
  116. MSOUP1=MCHPO1.IPCHP(IA)
  117. SEGACT MSOUP1
  118. NC1=MSOUP1.NOCOMP(/2)
  119. DO 112 I=IDEB,IFIN
  120. MOT3=MOT2(I)
  121. DO 111 IB=1,NC1
  122. MOT1=MSOUP1.NOCOMP(IB)
  123. IHARM=MSOUP1.NOHARM(IB)
  124. IF(MOT1.EQ.MOT3.AND.IHARM.EQ.IHARM1) GOTO 112
  125. 111 CONTINUE
  126. GOTO 405
  127. 112 CONTINUE
  128. NSOUPO=NSOUPO+1
  129. MTRA(NSOUPO)=MSOUP1
  130. 405 CONTINUE
  131. 410 CONTINUE
  132. C
  133. 500 CONTINUE
  134. C
  135. IF(NSOUPO.EQ.0) GOTO 1000
  136. C
  137. IF(IHARM1.EQ.0) GOTO 300
  138. C
  139. C CREATION DU CHAMP POINT AYANT SELON LES CAS 1 OU -1 SU UR ET UT
  140. C
  141. NAT=1
  142. SEGINI MCHPOI
  143. IFOPOI=MCHPO1.IFOPOI
  144. NC=2
  145. DO 130 ISOUP=1,NSOUPO
  146. SEGINI MSOUPO
  147. IPCHP(ISOUP)=MSOUPO
  148. MSOUP1=MTRA(ISOUP)
  149. SEGACT MSOUP1
  150. IGEOC=MSOUP1.IGEOC
  151. NOCOMP(1)=MOT2(1)
  152. NOCOMP(2)=MOT2(2)
  153. NOHARM(1)=IHARM1
  154. NOHARM(2)=IHARM1
  155. MPOVA1=MSOUP1.IPOVAL
  156. SEGACT MPOVA1
  157. N=MPOVA1.VPOCHA(/1)
  158. SEGINI MPOVAL
  159. IPOVAL=MPOVAL
  160. DO 131 I=1,N
  161. VPOCHA(I,1)=1.0D0
  162. VPOCHA(I,2)=1.0D0
  163. IF(IHARM1.EQ.1) VPOCHA(I,2)=-1.0D0
  164. 131 CONTINUE
  165. 130 CONTINUE
  166. GOTO 310
  167. 300 NAT=1
  168. SEGINI MCHPOI
  169. IFOPOI=MCHPO1.IFOPOI
  170. C
  171. C CREATION D UN CHAMP POINT DE VALEUR 1.0 SUR UX OU UY OU UZ
  172. C
  173. NC=1
  174. DO 120 ISOUP=1,NSOUPO
  175. SEGINI MSOUPO
  176. IPCHP(ISOUP)=MSOUPO
  177. MSOUP1=MTRA(ISOUP)
  178. SEGACT MSOUP1
  179. IGEOC=MSOUP1.IGEOC
  180. NOCOMP(1)=MOT
  181. NOHARM(1)=0
  182. MPOVA1=MSOUP1.IPOVAL
  183. SEGACT MPOVA1
  184. N =MPOVA1.VPOCHA(/1)
  185. SEGINI MPOVAL
  186. IPOVAL=MPOVAL
  187. DO 121 I=1,N
  188. VPOCHA(I,1)= 1.D0
  189. 121 CONTINUE
  190. 120 CONTINUE
  191. 310 CONTINUE
  192. IP2=MCHPOI
  193. *
  194. IF(IBBX2.EQ.0) GOTO 2000
  195. CALL XTY1(IP2,IBBX2,IPLMOX,IPLMOY,QI)
  196. GOTO 2001
  197. C
  198. 2000 CALL YTMX(IPX,IP2,IPB,QI)
  199. 2001 CALL DTCHPO(IP2)
  200. GOTO 1100
  201. 1000 CONTINUE
  202. QI=0.D0
  203. 1100 CONTINUE
  204. SEGSUP MTRA
  205. END
  206.  
  207.  
  208.  
  209.  

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