Télécharger inter4.eso

Retour à la liste

Numérotation des lignes :

  1. C INTER4 SOURCE BP208322 16/12/15 21:15:02 9267
  2. C
  3. SUBROUTINE INTER4(TEMPS,KTE,KFT,IRET)
  4. C
  5. CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
  6. C
  7. C INTERPOLATION LINEAIRE ; recherche par parcours des abscisses
  8. C
  9. CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
  10. C
  11. C TEMPS : valeur où interpoler la fonction
  12. C KTE : abscisses de la fonction à interpoler
  13. C KFT : ordonnées de la fonction à interpoler
  14. C LON : longueur de ces deux précédentes listes
  15. C IRET : code retour = pointeur vers listreel si succès, 0 sinon
  16. C
  17. CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
  18. IMPLICIT INTEGER(I-N)
  19. IMPLICIT REAL*8(A-H,O-Z)
  20. -INC SMLREEL
  21. -INC CCOPTIO
  22. -INC CCREEL
  23. *
  24. IRET=0
  25. JG=0
  26. SEGINI,MLREEL
  27.  
  28. MLREE1=KTE
  29. MLREE2=KFT
  30. LON1=MLREE1.PROG(/1)
  31.  
  32. I=0
  33. c -------------- BOUCLE SUR LES SEGMENTS
  34. 1 CONTINUE
  35. I=I+1
  36. IF(I.GE.LON1) GOTO 70
  37.  
  38. T1=MLREE1.PROG(I)
  39. T2=MLREE1.PROG(I+1)
  40.  
  41. c OK si (T1.LE.TEMPS.AND.TEMPS.LT.T2)
  42. c OR (T1.GE.TEMPS.AND.TEMPS.GT.T2)
  43. c REM : ON NE FAIT PAS D'ERREUR SI T1=T2=TEMPS
  44. IF(T1.LE.TEMPS.AND.TEMPS.LT.T2) THEN
  45. ELSEIF(T1.GE.TEMPS.AND.TEMPS.GT.T2) THEN
  46. ELSE
  47. GOTO 1
  48. ENDIF
  49.  
  50. c INTERPOLATION
  51. DT=T2-T1
  52. XP2=(TEMPS-T1)/DT
  53. XP1=(T2-TEMPS)/DT
  54. FT1=MLREE2.PROG(I)
  55. FT2=MLREE2.PROG(I+1)
  56. FT0=(XP1*FT1)+(XP2*FT2)
  57. PROG(**)=FT0
  58.  
  59. GOTO 1
  60. c -------------- FIN DE BOUCLE SUR LES SEGMENTS
  61.  
  62. 70 CONTINUE
  63. SEGDES,MLREEL
  64. IRET=MLREEL
  65.  
  66. RETURN
  67. END
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  

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