Télécharger dcogaf.eso

Retour à la liste

Numérotation des lignes :

dcogaf
  1. C DCOGAF SOURCE GOUNAND 21/06/02 21:15:44 11022
  2. SUBROUTINE DCOGAF(JCOEFF,JDFFPG,SSFACT,NBELEF,
  3. $ JDCOFG,
  4. $ IMPR,IRET)
  5. IMPLICIT REAL*8 (A-H,O-Z)
  6. IMPLICIT INTEGER (I-N)
  7. C***********************************************************************
  8. C NOM : DCOGAF
  9. C PROJET : Noyau linéaire NLIN
  10. C DESCRIPTION :
  11. C
  12. C
  13. C LANGAGE : ESOPE
  14. C AUTEUR : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/LTMF)
  15. C mél : gounand@semt2.smts.cea.fr
  16. C***********************************************************************
  17. C APPELES :
  18. C APPELE PAR :
  19. C***********************************************************************
  20. C ENTREES :
  21. C
  22. C ENTREES/SORTIES : -
  23. C SORTIES :
  24. C CODE RETOUR (IRET) : = 0 si tout s'est bien passé
  25. C***********************************************************************
  26. C VERSION : v1, 03/10/03, version initiale
  27. C HISTORIQUE : v1, 03/10/03, création
  28. C HISTORIQUE :
  29. C HISTORIQUE :
  30. C***********************************************************************
  31. C Prière de PRENDRE LE TEMPS de compléter les commentaires
  32. C en cas de modification de ce sous-programme afin de faciliter
  33. C la maintenance !
  34. C***********************************************************************
  35.  
  36. -INC PPARAM
  37. -INC CCOPTIO
  38. -INC TNLIN
  39. *-INC SFACTIV
  40. *-INC SMCHAEL
  41. INTEGER NBLIG,NBCOL,N2LIG,N2COL,NBPOI,NBELM
  42. POINTEUR JCOEFF.MCHEVA
  43. POINTEUR JDCOFG.MCHEVA
  44. * Valeurs des fns d'interpolation du coeff. aux points de Gauss
  45. POINTEUR JDFFPG.MCHEVA
  46. *
  47. INTEGER IMPR,IRET
  48. *
  49. * Executable statements
  50. *
  51. IF (IMPR.GT.1) WRITE(IOIMP,*) 'Entrée dans dcogaf'
  52. IESREL=IDIM
  53. SEGACT SSFACT
  54. NBELFV=SSFACT.LFACTI(/1)
  55. NBELEV=SSFACT.LFACTI(/2)
  56. SEGACT JCOEFF
  57. NDLIG =JCOEFF.WELCHE(/1)
  58. NDCOL =JCOEFF.WELCHE(/2)
  59. N2DLIG=JCOEFF.WELCHE(/3)
  60. N2DCOL=JCOEFF.WELCHE(/4)
  61. NDNOEU=JCOEFF.WELCHE(/5)
  62. NBELEM=JCOEFF.WELCHE(/6)
  63. IF (NDLIG.NE.1.OR.N2DLIG.NE.1.OR.N2DCOL.NE.1
  64. $ .OR.NDNOEU.NE.1
  65. $ .OR.(NBELEM.NE.1.AND.NBELEM.NE.NBELEV)) THEN
  66. WRITE(IOIMP,*) 'Erreur dims JCOEFF'
  67. GOTO 9999
  68. ENDIF
  69. NDDL=NDCOL
  70. NLVCOF=NBELEM
  71. SEGACT JDFFPG
  72. NDLIG =JDFFPG.WELCHE(/1)
  73. NDCOL =JDFFPG.WELCHE(/2)
  74. N2DLIG=JDFFPG.WELCHE(/3)
  75. N2DCOL=JDFFPG.WELCHE(/4)
  76. NDNOEU=JDFFPG.WELCHE(/5)
  77. NBELEM=JDFFPG.WELCHE(/6)
  78. IF (NDLIG.NE.1.OR.NDCOL.NE.NDDL
  79. $ .OR.N2DLIG.NE.1.OR.N2DCOL.NE.IESREL
  80. $ .OR.NBELEM.NE.NBELEF) THEN
  81. WRITE(IOIMP,*) 'Erreur dims JDFFPG'
  82. GOTO 9999
  83. ENDIF
  84. NBPOGO=NDNOEU
  85. *
  86. * Initialisations...
  87. *
  88. NBLIG=1
  89. NBCOL=1
  90. N2LIG=1
  91. N2COL=IESREL
  92. NBPOI=NBPOGO
  93. NBELM=NBELEF
  94. SEGINI JDCOFG
  95. *
  96. * On effectue le calcul du coefficient aux points de Gauss
  97. *
  98. CALL DCOGF1(NDDL,IESREL,NBPOGO,NBELEV,NBELFV,NBELEF,
  99. $ NLVCOF,
  100. $ JCOEFF.WELCHE,JDFFPG.WELCHE,SSFACT.LFACTI,
  101. $ JDCOFG.WELCHE,
  102. $ IMPR,IRET)
  103. IF (IRET.NE.0) GOTO 9999
  104. SEGDES JDCOFG
  105. SEGDES SSFACT
  106. SEGDES JCOEFF
  107. SEGDES JDFFPG
  108. *
  109. * Normal termination
  110. *
  111. IRET=0
  112. RETURN
  113. *
  114. * Format handling
  115. *
  116. *
  117. * Error handling
  118. *
  119. 9999 CONTINUE
  120. IRET=1
  121. WRITE(IOIMP,*) 'An error was detected in subroutine dcogaf'
  122. RETURN
  123. *
  124. * End of subroutine DCOGAF
  125. *
  126. END
  127.  
  128.  
  129.  
  130.  

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