Télécharger cosoce.eso

Retour à la liste

Numérotation des lignes :

cosoce
  1. C COSOCE SOURCE CB215821 20/11/25 13:22:38 10792
  2. SUBROUTINE COSOCE(IPT1,IPT2,IPT3,MPOVA1,MPOVAL)
  3. C---------------------------------------------------------------------
  4. C Cet subroutine crée un MPOVAL contenant la valeur moyenne d'un
  5. C champ connu par ses valeurs aux sommets
  6. C---------------------------------------------------------------------
  7. C
  8. C----------------
  9. C Entrée/Sortie :
  10. C----------------
  11. C
  12. C E/ IPT1 : MELEME CENTRE de la table DOMAINE
  13. C E/ IPT2 : MELEME SOMMET de la table DOMAINE
  14. C E/ IPT3 : MELEME MAILLAGE de la table DOMAINE
  15. C E/ MPOVA1 : MPOVAL des valeurs du CHPO aux SOMMET
  16. C /S MPOVAL : MPOVAL des valeurs du CHPO aux CENTRE - SEGMENT ACTIF
  17. C
  18. C---------------------------------------------------------------------
  19. IMPLICIT INTEGER(I-N)
  20. IMPLICIT REAL*8 (A-H,O-Z)
  21. C
  22. -INC SMCHPOI
  23. -INC SMELEME
  24. -INC SMLENTI
  25. C
  26. CALL KRIPAD(IPT2,MLENTI)
  27. SEGACT IPT1
  28. N = IPT1.NUM(/2)
  29. SEGDES IPT1
  30. SEGACT MPOVA1
  31. NC = MPOVA1.VPOCHA(/2)
  32. SEGINI MPOVAL
  33. SEGACT IPT3
  34. NBZONE = IPT3.LISOUS(/1)
  35. IF (NBZONE.EQ.0) NBZONE=1
  36. K = 0
  37. DO 40 L=1,NBZONE
  38. IPT4 = IPT3
  39. IF (NBZONE.NE.1) IPT4=IPT3.LISOUS(L)
  40. SEGACT IPT4
  41. NUMPTZ = IPT4.NUM(/1)
  42. NUMELZ = IPT4.NUM(/2)
  43. DO 30 I=1,NUMELZ
  44. K = K + 1
  45. DO 20 N=1,NC
  46. UU = 0.D0
  47. DO 10 J=1,NUMPTZ
  48. UU = UU + MPOVA1.VPOCHA(LECT(IPT4.NUM(J,I)),N)
  49. 10 CONTINUE
  50. VPOCHA(K,N) = UU / (FLOAT(NUMPTZ))
  51. C WRITE(6,*) 'K N',K,N,VPOCHA(K,N)
  52. 20 CONTINUE
  53. 30 CONTINUE
  54. SEGDES IPT4
  55. 40 CONTINUE
  56. SEGDES MPOVA1
  57. IF (NBZONE.NE.1) SEGDES IPT3
  58. SEGSUP MLENTI
  59. C
  60. RETURN
  61. END
  62.  
  63.  
  64.  
  65.  
  66.  

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