Télécharger cmct.eso

Retour à la liste

Numérotation des lignes :

cmct
  1. C CMCT SOURCE MB234859 25/02/17 21:15:02 12155
  2. SUBROUTINE CMCT
  3. *_______________________________________________________________________
  4. c
  5. c chapeau de l'opérateur cmct
  6. c
  7. c récupération des objets
  8. c quelques tests sur les objets obtenus
  9. c
  10. C ri2 = CMCT mrigid ri1
  11. C mrigid rigidite ( sans dependences)
  12. C ri1 rigidite de dependence
  13.  
  14. *_______________________________________________________________________
  15. IMPLICIT INTEGER(I-N)
  16. IMPLICIT REAL*8(A-H,O-Z)
  17. *
  18.  
  19. -INC PPARAM
  20. -INC CCOPTIO
  21. -INC SMRIGID
  22. -INC SMELEME
  23.  
  24. *
  25. * lecture d'un objet rigidité
  26. *
  27. CALL LIROBJ('RIGIDITE',IRIG,1,IRET)
  28. IF (IERR .NE.0) THEN
  29. RETURN
  30. ENDIF
  31.  
  32.  
  33. * lecture optionnelle du champ par point
  34. *
  35. CALL LIROBJ('CHPOINT ',ICHP,0,IRET)
  36. IF(IRET .EQ. 1) CALL ACTOBJ('CHPOINT ',ICHP,1)
  37. IF (IERR .NE.0) RETURN
  38.  
  39. if(iret.eq.0) then
  40. C lecture de la matrice a condenser
  41. CALL LIROBJ('RIGIDITE',IRI1,1,IRET)
  42. IF (IERR .NE.0) THEN
  43. RETURN
  44. ENDIF
  45.  
  46. * on verifie que la rigidité ne contient est bien
  47. * de type dependance
  48. mrigid = iri1
  49. SEGACT , MRIGID
  50. DO 1510 I=1,IRIGEL(/2)
  51. C write(6,*) ' irigel(/1) irigel(8,I)',irigel(/1),IRIGEL(8,I)
  52. if(irigel(/1).LT.8.or.IRIGEL(8,I).eq.0) then
  53. CALL ERREUR(888)
  54. SEGDES MRIGID
  55. RETURN
  56. ENDIF
  57. 1510 CONTINUE
  58. segdes mrigid
  59. call depen3(mrigid,ri6)
  60. call scnd3(irig,ri6,irig2)
  61. if (ierr.ne.0) return
  62. segsup ri6
  63.  
  64. else
  65. *
  66. * verification que la rigidité ne contient que des relation
  67. * c'est à dire n'est supportée que par des maillage de type22
  68. *
  69. MRIGID = IRIG
  70. SEGACT, MRIGID*NOMOD
  71. DO 100 I=1,IRIGEL(/2)
  72. MELEME = IRIGEL(1,I)
  73. SEGACT , MELEME*NOMOD
  74. IF (ITYPEL.NE.22) THEN
  75. CALL ERREUR(837)
  76. SEGDES MELEME
  77. SEGDES MRIGID
  78. RETURN
  79. ENDIF
  80. 100 CONTINUE
  81. *
  82. CALL CMCT1(ICHP,IRIG,IRIG2)
  83. *
  84. IF ( IERR .NE. 0 ) RETURN
  85.  
  86. endif
  87. *
  88. CALL ECROBJ('RIGIDITE',IRIG2)
  89.  
  90. END
  91.  
  92.  
  93.  
  94.  

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