Télécharger kopsid.eso

Retour à la liste

Numérotation des lignes :

kopsid
  1. C KOPSID SOURCE GOUNAND 11/05/24 21:15:38 6976
  2. SUBROUTINE KOPSID
  3. C
  4. C************************************************************************
  5. C
  6. C PROJET : CASTEM 2000
  7. C
  8. C NOM : KOPSID
  9. C
  10. C DESCRIPTION : Cette subroutine cree la matrice identité
  11. C sous la forme des objets elementaires de type
  12. C MATRIK
  13. C
  14. C LANGAGE : FORTRAN 77 + ESOPE 2000 (avec extensions CISI)
  15. C
  16. C AUTEUR : A. BECCANTINI, DRN/DMT/SEMT/TTMF
  17. C S. GOUNAND
  18. C************************************************************************
  19. C
  20. C
  21. C APPELES (Outils) :
  22. C
  23. C APPELES (Calcul) :
  24. C
  25. C
  26. C************************************************************************
  27. C
  28. C PHRASE D'APPELLE GIBIANE
  29. C
  30. C MAT1 = 'KOPS' 'MATIDE' LMOT1 GEO1 ('MATRIK') ;
  31. C
  32. C ENTREES : LMOT1 : objet de type LISTMOTS des variables primales (et
  33. C duales)
  34. C
  35. C GEO1 : objet de type MAILLAGE, des variables primales
  36. C (et duales)
  37. C
  38. C SORTIES: MAT1 : objet de type RIGIDITE ou MATRIK,
  39. C qui contient la matrice identité
  40. C Mis à jour le 18/05/2011
  41. C************************************************************************
  42. C
  43. C HISTORIQUE (Anomalies et modifications éventuelles)
  44. C
  45. C HISTORIQUE : Cree le 23-8-2000
  46. C
  47. C************************************************************************
  48. C
  49. C**** Les includes
  50. C
  51. IMPLICIT REAL*8 (A-H,O-Z)
  52. IMPLICIT INTEGER(I-N)
  53.  
  54. -INC PPARAM
  55. -INC CCOPTIO
  56. C
  57. CHARACTER*6 MOT(1)
  58. CHARACTER*8 MTYP
  59. DATA MOT/'MATRIK'/
  60. C
  61. CALL QUETYP(MTYP,0,IRET)
  62. IF(IRET.EQ.0)THEN
  63. MOTERR(1:8) = 'LISTMOTS'
  64. C
  65. C******* Message d'erreur
  66. C 37 2
  67. C On ne trouve pas d'objet de type %m1:8
  68. C
  69. CALL ERREUR(37)
  70. GOTO 9999
  71. ELSEIF(MTYP .EQ. 'LISTMOTS')THEN
  72. CALL LIROBJ('LISTMOTS',LPRIM,1,IRET)
  73. ELSE
  74. MOTERR(1:8) = 'LISTMOTS'
  75. C
  76. C******* Message d'erreur
  77. C 37 2
  78. C On ne trouve pas d'objet de type %m1:8
  79. C
  80. CALL ERREUR(37)
  81. GOTO 9999
  82. ENDIF
  83. C
  84. CALL QUETYP(MTYP,0,IRET)
  85. IF(IRET.EQ.0)THEN
  86. MOTERR(1:8) = 'MAILLAGE'
  87. C
  88. C******* Message d'erreur
  89. C 37 2
  90. C On ne trouve pas d'objet de type %m1:8
  91. C
  92. CALL ERREUR(37)
  93. GOTO 9999
  94. ELSEIF(MTYP .EQ. 'MAILLAGE')THEN
  95. CALL LIROBJ('MAILLAGE',IGEOM,1,IRET)
  96. ELSE
  97. MOTERR(1:8) = 'MAILLAGE'
  98. C
  99. C******* Message d'erreur
  100. C 37 2
  101. C On ne trouve pas d'objet de type %m1:8
  102. C
  103. CALL ERREUR(37)
  104. GOTO 9999
  105. ENDIF
  106. *
  107. CALL LIRMOT(MOT,1,IRAN,0)
  108. IF (IRAN.EQ.1) THEN
  109. CALL KOPIDK(IGEOM,LPRIM,MATRIK)
  110. IF (IERR.NE.0) GOTO 9999
  111. CALL ECROBJ('MATRIK',MATRIK)
  112. ELSE
  113. CALL KOPIDR(IGEOM,LPRIM,MRIGID)
  114. IF (IERR.NE.0) GOTO 9999
  115. CALL ECROBJ('RIGIDITE',MRIGID)
  116. ENDIF
  117. C
  118. 9999 RETURN
  119. END
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  

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