Télécharger devsor.eso

Retour à la liste

Numérotation des lignes :

  1. C DEVSOR SOURCE BP208322 17/07/18 21:15:08 9498
  2. SUBROUTINE DEVSOR(KPREF,KTQ,KTKAM,KTPHI,KTLIAA,KTLIAB,KTFEX,
  3. & KTPAS,KTRES,KTNUM,NINS,IPMAIL,REPRIS,ICHAIN,
  4. & KOCLFA,KOCLB1,LMODYN,ITDYN)
  5. IMPLICIT INTEGER(I-N)
  6. IMPLICIT REAL*8(A-H,O-Z)
  7. *--------------------------------------------------------------------*
  8. * *
  9. * Operateur DYNE : algorithme de Fu - de Vogelaere *
  10. * ________________________________________________ *
  11. * *
  12. * Sortie de la table resultat et nettoyage de la memoire. *
  13. * *
  14. * Parametres: *
  15. * *
  16. * e KPREF Segment des points de référence *
  17. * e KTQ Segment contenant les variables généralisées
  18. * (et les travaux)
  19. * e KTKAM Segment contenant les matrices XK, XASM et XM *
  20. * e KTPHI Segment contenant les déformées modales *
  21. * e KTLIAA Segment descriptif des liaisons en base A *
  22. * e KTLIAB Segment descriptif des liaisons en base B *
  23. * e KTFEX Segment contenant les chargements libres *
  24. * e KTPAS Segment des variables au cours d'un pas de temps *
  25. * e KTRES Segment de sauvegarde des résultats *
  26. * e KTNUM Segment contenant les paramètres numériques *
  27. * e NINS On veut une sortie tous les NINS pas de calcul *
  28. * e IPMAIL Maillage de référence *
  29. * e REPRIS Vrai si reprise de calcul, faux sinon *
  30. * e ICHAIN Segment MLENTI (ACTIF) contenant les adresses des *
  31. * chaines dans la pile des mots de CCNOYAU *
  32. * *
  33. * Auteur, date de creation: *
  34. * *
  35. * Denis ROBERT-MOUGIN, le 1er juin 1989. *
  36. * *
  37. *--------------------------------------------------------------------*
  38. -INC CCOPTIO
  39. -INC SMTABLE
  40. -INC SMLREEL
  41. -INC SMLENTI
  42. -INC SMELEME
  43. *
  44. SEGMENT,MTQ
  45. REAL*8 Q1(NA1,4),Q2(NA1,4),Q3(NA1,4)
  46. REAL*8 WEXT(NA1,2),WINT(NA1,2)
  47. ENDSEGMENT
  48. SEGMENT,MTKAM
  49. REAL*8 XK(NA1,NB1K),XASM(NA1,NB1C),XM(NA1,NB1M)
  50. REAL*8 XOPER(NB1,NB1,NOPER)
  51. ENDSEGMENT
  52. SEGMENT,MTPHI
  53. INTEGER IBASB(NPLB),IPLSB(NPLB),INMSB(NSB),IORSB(NSB)
  54. INTEGER IAROTA(NSB)
  55. REAL*8 XPHILB(NSB,NPLSB,NA2,IDIMB)
  56. ENDSEGMENT
  57. SEGMENT,MTLIAA
  58. INTEGER IPALA(NLIAA,NIPALA),IPLIA(NLIAA,NPLAA),JPLIA(NPLA)
  59. REAL*8 XPALA(NLIAA,NXPALA)
  60. ENDSEGMENT
  61. SEGMENT,MTLIAB
  62. INTEGER IPALB(NLIAB,NIPALB),IPLIB(NLIAB,NPLBB),JPLIB(NPLB)
  63. REAL*8 XPALB(NLIAB,NXPALB)
  64. REAL*8 XABSCI(NLIAB,NIP),XORDON(NLIAB,NIP)
  65. ENDSEGMENT
  66. SEGMENT,MTFEX
  67. REAL*8 FEXA(NPFEXA,NPC1,2)
  68. REAL*8 FEXPSM(NPLB,NPC1,2,IDIMB)
  69. REAL*8 FTEXB(NPLB,NPC1,2,IDIM)
  70. INTEGER IFEXA(NPFEXA),IFEXB(NPFEXB)
  71. ENDSEGMENT
  72. SEGMENT,MTPAS
  73. REAL*8 FTOTA(NA1,4),FTOTB(NPLB,IDIMB),FTOTBA(NA1)
  74. REAL*8 XPTB(NPLB,4,IDIMB),FINERT(NA1,4)
  75. REAL*8 XVALA(NLIAA,4,NTVAR),XVALB(NLIAB,4,NTVAR)
  76. REAL*8 FEXB(NPLB,2,IDIM),XCHPFB(2,NLIAB,4,NPLB)
  77. ENDSEGMENT
  78. SEGMENT,MTRES
  79. REAL*8 XRES(NRES,NCRES,NPRES),XREP(NREP,NCRES)
  80. REAL*8 XRESLA(NLSA,NPRES,NVALA),XRESLB(NLSB,NPRES,NVALB)
  81. REAL*8 XMREP(NLIAB,4,IDIMB)
  82. INTEGER ICHRES(NVES),IPORES(NRES,NPRES),IPOREP(NREP)
  83. INTEGER IPOLA(NLSA),INULA(NLSA),IPLRLA(NLSA,NVALA)
  84. INTEGER IPOLB(NLSB),INULB(NLSB),IPLRLB(NLSB,NVALB)
  85. INTEGER ILIREA(NLSA,NTVAR),ILIREB(NLSB,NTVAR)
  86. INTEGER ILIRNA(NLSA,NTVAR),ILIRNB(NLSB,NTVAR)
  87. INTEGER IPOLR(1),IMREP(NLIAB,2),IPPREP(NLIAB,4)
  88. INTEGER ILPOLA(NLIAA,2)
  89. ENDSEGMENT
  90. SEGMENT,MTNUM
  91. REAL*8 XDT(NPC1),XTEMPS(NPC1)
  92. ENDSEGMENT
  93. SEGMENT,MPREF
  94. INTEGER IPOREF(NPREF)
  95. ENDSEGMENT
  96. * Segment "local" pour DEVLFA ...
  97. SEGMENT,LOCLFA
  98. REAL*8 FTEST(NA1,4),FTOTA0(NA1,4)
  99. ENDSEGMENT
  100. * Segment "local" pour DEVLB1 ...
  101. SEGMENT,LOCLB1
  102. REAL*8 FTEST2(NPLB,6),FTOTB0(NPLB,6)
  103. ENDSEGMENT
  104. *
  105. LOGICAL REPRIS,LMODYN
  106. *
  107. * Remplissage des CHPOINTs résultats:
  108. *
  109. CALL DEVSO2(KTRES)
  110. IF (IERR.NE.0) RETURN
  111. *
  112. * Création et sous-typage de la table contenant les résultats:
  113. *
  114. CALL DEVSO4(KPREF,KTRES,KTLIAA,KTLIAB,KTNUM,NINS,ICHAIN,
  115. & MTABLE,REPRIS,LMODYN,ITDYN,0)
  116. IF (IERR.NE.0) RETURN
  117. *
  118. * Ecriture de la table résultat:
  119. *
  120. if (.not.lmodyn) CALL ECROBJ('TABLE',MTABLE)
  121. IF (IERR.NE.0) RETURN
  122. *
  123. * Nettoyage de la mémoire:
  124. *
  125. IF (IIMPI.EQ.333) THEN
  126. WRITE(IOIMP,*)'DEVSOR: nettoyage de la mémoire'
  127. ENDIF
  128. MELEME = IPMAIL
  129. SEGDES,MELEME
  130. *
  131. MTQ = KTQ
  132. SEGSUP,MTQ
  133. *
  134. MTFEX = KTFEX
  135. SEGSUP,MTFEX
  136. *
  137. MTPHI = KTPHI
  138. SEGSUP,MTPHI
  139. *
  140. MTLIAA = KTLIAA
  141. SEGSUP,MTLIAA
  142. *
  143. MTLIAB = KTLIAB
  144. SEGSUP,MTLIAB
  145. *
  146. MTRES = KTRES
  147. SEGSUP,MTRES
  148. *
  149. MTNUM = KTNUM
  150. SEGSUP,MTNUM
  151. MPREF = KPREF
  152. SEGSUP,MPREF
  153. *
  154. MTKAM = KTKAM
  155. SEGSUP,MTKAM
  156. *
  157. MTPAS = KTPAS
  158. SEGSUP,MTPAS
  159. *
  160. LOCLFA = KOCLFA
  161. SEGSUP,LOCLFA
  162. LOCLB1 = KOCLB1
  163. SEGSUP,LOCLB1
  164. *
  165. MLENTI = ICHAIN
  166. SEGSUP,MLENTI
  167. ICHAIN = 0
  168. *
  169. RETURN
  170. END
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  

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