Télécharger insi.eso

Retour à la liste

Numérotation des lignes :

insi
  1. C INSI SOURCE CHAT 05/01/13 00:39:12 5004
  2. C$$$$ INSI
  3. C INSI SOURCE ISPRA 90/06/12
  4. SUBROUTINE INSI
  5. IMPLICIT INTEGER(I-N)
  6. IMPLICIT REAL*8(A-H,O-Z)
  7. C=======================================================================
  8. C OPERATEUR INSI
  9. C
  10. C D*EVOLUTION V*EVOLUTION = INSI A*EVOLUTION (METH*MOT)
  11. C
  12. C=======================================================================
  13. C PROGRAMMEUR : P.P.
  14. C=======================================================================
  15. C
  16. CHARACTER *72 TI
  17. CHARACTER*12 MOTX,MOTY
  18. C
  19. PARAMETER (NMOCLE=2)
  20. CHARACTER*4 MOTCLE(NMOCLE)
  21. C
  22.  
  23. -INC PPARAM
  24. -INC CCOPTIO
  25. -INC SMEVOLL
  26. -INC SMLREEL
  27. C
  28. POINTEUR IACCE.MLREEL,IVITE.MLREEL,IDEPL.MLREEL,ITEMP.MLREEL
  29. POINTEUR JACCE.MEVOLL,JVITE.MEVOLL,JDEPL.MEVOLL
  30. POINTEUR KACCE.KEVOLL,KVITE.KEVOLL,KDEPL.KEVOLL
  31. C
  32. C 1) LECTURE DES DONNEES GIBIANE
  33. C
  34. C 1.1) LISTE DES MOTS CLEF
  35. C
  36. DATA MOTCLE/'SIMP','LINE'/
  37. C
  38. C 1.2) DEFAUTS
  39. C
  40. IMETH=1
  41. C
  42. C 1.3) LECTURE DE L'OBJET EVOLUTIO CONTENANT L'ACCELERATION
  43. C
  44. CALL LIROBJ('EVOLUTIO',JACCE,1,IRET)
  45. IF(IRET.EQ.0) RETURN
  46. C
  47. C 1.4) LECTURE DU MOT-CLEF
  48. C (OPTIONEL)
  49. C
  50. CALL LIRMOT(MOTCLE,NMOCLE,IVAL,0)
  51. C
  52. IF(IVAL.NE.0)THEN
  53. IMETH=IVAL
  54. ENDIF
  55. C
  56. C
  57. C 2) INITIALISATION DIVERSES
  58. C
  59. SEGACT, JACCE
  60. N=JACCE.IEVOLL(/1)
  61. C
  62. TI=JACCE.IEVTEX
  63. SEGINI, JVITE
  64. SEGINI, JDEPL
  65. JVITE.IEVTEX='Integration ('//MOTCLE(IMETH)//') de:'//TI(1:50)
  66. JDEPL.IEVTEX='Integration ('//MOTCLE(IMETH)//') de:'//TI(1:50)
  67. C
  68. C 3) LOOP DE CALCUL
  69. C
  70. DO 100 IE1=1,N
  71. C
  72. C 3.1) INITIALISATION ET ACTIVATION
  73. C
  74. KACCE=JACCE.IEVOLL(IE1)
  75. SEGACT, KACCE
  76. C
  77. ITEMP=KACCE.IPROGX
  78. IACCE=KACCE.IPROGY
  79. ICOUL=KACCE.NUMEVX
  80. SEGDES, KACCE
  81. C
  82. SEGACT, IACCE
  83. SEGACT, ITEMP
  84. NPT=ITEMP.PROG(/1)
  85. JG=NPT
  86. C
  87. SEGINI, KVITE
  88. JVITE.IEVOLL(IE1)=KVITE
  89. C
  90. WRITE(TI,'(A17,1X,A6,1X,I2)')'Signal en vitesse',
  91. > 'numero',IE1
  92. WRITE(MOTY,'(9HVitesse ,1X,I2)')IE1
  93. SEGINI, IVITE
  94. C
  95. KVITE.KEVTEX=TI
  96. KVITE.NUMEVX=ICOUL
  97. KVITE.NUMEVY='REEL'
  98. KVITE.TYPX='LISTREEL'
  99. KVITE.IPROGX=ITEMP
  100. KVITE.TYPY='LISTREEL'
  101. KVITE.IPROGY=IVITE
  102. KVITE.NOMEVY=MOTY(1:12)
  103. SEGDES, KVITE
  104. C
  105. SEGINI, KDEPL
  106. JDEPL.IEVOLL(IE1)=KDEPL
  107. C
  108. WRITE(TI,'(A21,1X,A6,1X,I2)')'Signal en deplacement',
  109. > 'numero',IE1
  110. WRITE(MOTY,'(9HDeplacem.,1X,I2)')IE1
  111. SEGINI, IDEPL
  112. C
  113. KDEPL.KEVTEX=TI
  114. KDEPL.NUMEVX=ICOUL
  115. KDEPL.NUMEVY='REEL'
  116. KDEPL.TYPX='LISTREEL'
  117. KDEPL.IPROGX=ITEMP
  118. KDEPL.TYPY='LISTREEL'
  119. KDEPL.IPROGY=IDEPL
  120. KDEPL.NOMEVY=MOTY(1:12)
  121. SEGDES, KDEPL
  122. C
  123. C 3.2) CALCUL DE V(I) ET D(I)
  124. C
  125. C 3.2.1) METHODE SIMPLIFIEE
  126. C
  127. IF(IMETH.EQ.1)THEN
  128. IVITE.PROG(1)=0.D0
  129. IDEPL.PROG(1)=0.D0
  130. DO 20 IE2=2,NPT
  131. DT=ITEMP.PROG(IE2)-ITEMP.PROG(IE2-1)
  132. IVITE.PROG(IE2)=IVITE.PROG(IE2-1)
  133. > +DT*(IACCE.PROG(IE2-1)+IACCE.PROG(IE2))/2
  134. IDEPL.PROG(IE2)=IDEPL.PROG(IE2-1)
  135. > +DT*(IVITE.PROG(IE2-1)+IVITE.PROG(IE2))/2
  136. 20 CONTINUE
  137. ENDIF
  138. C
  139. C 3.2.2) METHODE LINEAIRE
  140. C
  141. IF(IMETH.EQ.2)THEN
  142. IVITE.PROG(1)=0.D0
  143. IDEPL.PROG(1)=0.D0
  144. DO 25 IE2=2,NPT
  145. DT=ITEMP.PROG(IE2)-ITEMP.PROG(IE2-1)
  146. IVITE.PROG(IE2)=IVITE.PROG(IE2-1)
  147. > +DT*(IACCE.PROG(IE2-1)+IACCE.PROG(IE2))/2
  148. IDEPL.PROG(IE2)=IDEPL.PROG(IE2-1)
  149. > +DT*(IVITE.PROG(IE2-1)
  150. > +DT*(IACCE.PROG(IE2)+2*IACCE.PROG(IE2-1))/6)
  151. 25 CONTINUE
  152. ENDIF
  153. C
  154. C 3.3) FIN ACTIVATION
  155. C
  156. SEGDES, IACCE
  157. SEGDES, ITEMP
  158. SEGDES, IVITE
  159. SEGDES, IDEPL
  160. C
  161. 100 CONTINUE
  162. C
  163. C
  164. C
  165. SEGDES, JACCE
  166. SEGDES, JVITE
  167. SEGDES, JDEPL
  168. C
  169. C 4) RETOUR A GIBIANE
  170. C
  171. CALL ECROBJ('EVOLUTIO',JVITE)
  172. CALL ECROBJ('EVOLUTIO',JDEPL)
  173. C
  174. C
  175. 666 CONTINUE
  176. RETURN
  177. END
  178.  
  179.  
  180.  
  181.  
  182.  

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