Télécharger cupcpo.eso

Retour à la liste

Numérotation des lignes :

cupcpo
  1. C CUPCPO SOURCE PV 22/01/18 21:15:03 11267
  2. subroutine cupcpo(bu,bufPos,pChpo)
  3. C=======================================================================
  4. C COLlaborateur UnPAQuettage Champ par POint
  5. C Lecture d'un champ par point dans le buffer d'envoi bu
  6. C=======================================================================
  7. integer bufPos
  8. integer lonBuf
  9. integer nat,nbComp,nbNoeu,nSoupo,n,nc
  10. integer iSoupo,mofour
  11. character*8 typChp
  12. character*72 desChp
  13. C character*72 soutyp
  14. -INC SMCHPOI
  15. -INC PPARAM
  16. -INC TMCOLAC
  17. segment BUFFER
  18. character ffer(lonBuf)
  19. endsegment
  20.  
  21. pointeur pChpo.MCHPOI
  22. pointeur pSoupo.MSOUPO
  23. pointeur pPoval.MPOVAL
  24. pointeur bu.BUFFER
  25.  
  26. C write(ioimp,*) 'Entre dans CUPCPO'
  27. C write(ioimp,*)'Position du buffer',bufPos
  28. lonBuf=bu.ffer(/2)
  29. C write(ioimp,*)'Taille du buffer',lonBuf
  30. call mpiupC(typChp,8, bu,bufPos)
  31.  
  32. C write(ioimp,*)'Type du champ',typChp
  33. C write(ioimp,*)'Position du buffer',bufPos
  34. call mpiupC(desChp,72, bu,bufPos)
  35.  
  36. C write(ioimp,*)'Description du champ',desChp
  37. C write(ioimp,*)'Position du buffer',bufPos
  38. call mpiupI(mofour,1, bu,bufPos)
  39.  
  40. C write(ioimp,*)'Ifopoi',mofour
  41. C write(ioimp,*)'Position du buffer',bufPos
  42. call mpiupI(nSoupo,1, bu,bufPos)
  43.  
  44. C write(ioimp,*)'nsoupo',nsoupo
  45. C write(ioimp,*)'Position du buffer',bufPos
  46. call mpiupI(nat,1, bu,bufPos)
  47.  
  48. C write(ioimp,*) 'Buff', bufPos,lonBuf
  49. C write(ioimp,*)'nat',nat
  50. if (pChpo.ne.0) then
  51. segact pChpo*mod
  52. segadj pChpo
  53. else
  54. segini pChpo
  55. endif
  56. pChpo.MTYPOI=typChp
  57. pChpo.MOCHDE=desChp
  58. pChpo.IFOPOI=mofour
  59.  
  60. if(nat.gt.0) then
  61. call mpiupI(pChpo.jattri(1), nat, bu,bufPos)
  62. endif
  63. C write(ioimp,*)'jattri',(pChpo.jattri(i),i=1,nat)
  64. do iSoupo=1,nSoupo
  65. C write(ioimp,*) 'Soupo :',iSoupo
  66. call mpiupI(nbComp,1, bu,bufPos)
  67.  
  68. C write(ioimp,*)'nbComp',nbComp
  69. call mpiupI(nbNoeu,1, bu,bufPos)
  70.  
  71. C write(ioimp,*)'nbNoeu',nbNoeu
  72. nc=nbComp
  73. segini pSoupo
  74. pChpo.ipchp(iSoupo)=pSoupo
  75. n=nbNoeu
  76. segini pPoval
  77. pSoupo.ipoval=pPoval
  78. if(nbNoeu.gt.0.and.nbComp.gt.0) then
  79. C write(ioimp,*)'Lecture des valeurs'
  80. call mpiupR( pPoval.vpocha(1,1),nbNoeu*nbComp, bu,bufPos)
  81.  
  82. endif
  83. segdes pPoval
  84. C write(ioimp,*) 'iSoupo',iSoupo
  85. C write(ioimp,*) 'pSoupo',pSoupo
  86. call mpiupI( pSoupo.igeoc,1, bu,bufPos)
  87.  
  88. C write(ioimp,*)'pSoupo.igeoc',pSoupo.igeoc
  89. if(nbComp.gt.0)then
  90. call mpiupC( pSoupo.nocomp(1),nbComp*4, bu,bufPos)
  91.  
  92. C write(ioimp,*)'Lecture du nom de composante'
  93. C SOUTYP=pSoupo.nocomp(1)
  94. C write(ioimp,*) 'Nom composante',soutyp
  95. C write(ioimp,*)'Position du buffer',bufPos
  96. C write(ioimp,*)'Position du buffer',bufPos
  97. call mpiupI( pSoupo.noharm(1),nbComp, bu,bufPos)
  98.  
  99. C write(ioimp,*)'Lecture du numero des harmoniques',
  100. C & (pSoupo.noharm(i),i=1,nbComp)
  101. C write(ioimp,*)'Position du buffer',bufPos
  102. endif
  103. segdes pSoupo
  104. enddo
  105. segdes pChpo
  106. C write(ioimp,*) 'Sortie de CUPCPO'
  107. end
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  

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