Télécharger kopsid.eso

Retour à la liste

Numérotation des lignes :

  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. -INC CCOPTIO
  54. C
  55. CHARACTER*6 MOT(1)
  56. CHARACTER*8 MTYP
  57. DATA MOT/'MATRIK'/
  58. C
  59. CALL QUETYP(MTYP,0,IRET)
  60. IF(IRET.EQ.0)THEN
  61. MOTERR(1:8) = 'LISTMOTS'
  62. C
  63. C******* Message d'erreur
  64. C 37 2
  65. C On ne trouve pas d'objet de type %m1:8
  66. C
  67. CALL ERREUR(37)
  68. GOTO 9999
  69. ELSEIF(MTYP .EQ. 'LISTMOTS')THEN
  70. CALL LIROBJ('LISTMOTS',LPRIM,1,IRET)
  71. ELSE
  72. MOTERR(1:8) = 'LISTMOTS'
  73. C
  74. C******* Message d'erreur
  75. C 37 2
  76. C On ne trouve pas d'objet de type %m1:8
  77. C
  78. CALL ERREUR(37)
  79. GOTO 9999
  80. ENDIF
  81. C
  82. CALL QUETYP(MTYP,0,IRET)
  83. IF(IRET.EQ.0)THEN
  84. MOTERR(1:8) = 'MAILLAGE'
  85. C
  86. C******* Message d'erreur
  87. C 37 2
  88. C On ne trouve pas d'objet de type %m1:8
  89. C
  90. CALL ERREUR(37)
  91. GOTO 9999
  92. ELSEIF(MTYP .EQ. 'MAILLAGE')THEN
  93. CALL LIROBJ('MAILLAGE',IGEOM,1,IRET)
  94. ELSE
  95. MOTERR(1:8) = 'MAILLAGE'
  96. C
  97. C******* Message d'erreur
  98. C 37 2
  99. C On ne trouve pas d'objet de type %m1:8
  100. C
  101. CALL ERREUR(37)
  102. GOTO 9999
  103. ENDIF
  104. *
  105. CALL LIRMOT(MOT,1,IRAN,0)
  106. IF (IRAN.EQ.1) THEN
  107. CALL KOPIDK(IGEOM,LPRIM,MATRIK)
  108. IF (IERR.NE.0) GOTO 9999
  109. CALL ECROBJ('MATRIK',MATRIK)
  110. ELSE
  111. CALL KOPIDR(IGEOM,LPRIM,MRIGID)
  112. IF (IERR.NE.0) GOTO 9999
  113. CALL ECROBJ('RIGIDITE',MRIGID)
  114. ENDIF
  115. C
  116. 9999 RETURN
  117. END
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  

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