Télécharger dimen3.eso

Retour à la liste

Numérotation des lignes :

  1. C DIMEN3 SOURCE PV 16/11/17 21:59:00 9180
  2. SUBROUTINE DIMEN3 (IPRIGI,NBRINC)
  3. ************************************************************************
  4. *
  5. * D I M E N 3
  6. * -----------
  7. *
  8. * FONCTION:
  9. * ---------
  10. *
  11. * DONNER LE NOMBRE D'INCONNUES DU PROBLEME PHYSIQUE ASSOCIE A UN
  12. * OBJET 'RIGIDITE'.
  13. *
  14. * MODE D'APPEL:
  15. * -------------
  16. *
  17. * CALL DIMEN3 (IPRIGI,NBRINC)
  18. *
  19. * PARAMETRES: (E)=ENTREE (S)=SORTIE
  20. * -----------
  21. *
  22. * IPRIGI ENTIER (E) POINTEUR D'UNE 'RIGIDITE'.
  23. * NBRINC ENTIER (S) NOMBRE D'INCONNUES DE LA 'RIGIDITE'.
  24. *
  25. * REMARQUES:
  26. * ----------
  27. *
  28. * CE SOUS-PROGRAMME FACTORISE L'OBJET 'RIGIDITE', SI CE N'EST DEJA
  29. * FAIT.
  30. *
  31. * AUTEUR, DATE DE CREATION:
  32. * -------------------------
  33. *
  34. * PASCAL MANIGOT 26 AOUT 1985
  35. *
  36. * LANGAGE:
  37. * --------
  38. *
  39. * ESOPE + FORTRAN77
  40. *
  41. ************************************************************************
  42. *
  43. IMPLICIT INTEGER(I-N)
  44. -INC CCOPTIO
  45. -INC SMMATRI
  46. -INC SMRIGID
  47. *
  48. integer insym
  49. insym = 0
  50. MRIGID = IPRIGI
  51. SEGACT,MRIGID
  52. NRG = IRIGEL(/1)
  53. NBR = IRIGEL(/2)
  54. c bp, 2014-11-27 : petit ajout pour les rigidites vides
  55. if(NBR.eq.0) then
  56. NBRINC=0
  57. SEGDES,MRIGID
  58. return
  59. endif
  60. IPMATR = ICHOLE
  61. c
  62. *
  63. IF(NORINC.GT.0 .AND. NORIND.GT.0) THEN
  64. INSYM = 1
  65. ENDIF
  66. IF (NRG.GE.7) THEN
  67. DO 9 IN = 1,NBR
  68. IANTI=IRIGEL(7,IN)
  69. IF(IANTI.GT.0) THEN
  70. INSYM = 1
  71. ENDIF
  72. 9 CONTINUE
  73. ENDIF
  74. C
  75. SEGDES,MRIGID
  76. IF (IPMATR .EQ. 0) THEN
  77. IF (INSYM .EQ. 0) THEN
  78. CALL TRIANG (IPRIGI,1D-18,0)
  79. ELSE
  80. CALL ldmt1(IPRIGI,1d-18)
  81. ENDIF
  82. IF (IERR .NE. 0) RETURN
  83. MRIGID = IPRIGI
  84. SEGACT,MRIGID
  85. IPMATR = ICHOLE
  86. SEGDES,MRIGID
  87. END IF
  88. *
  89. MMATRI = IPMATR
  90. SEGACT,MMATRI
  91. MILIGN = IILIGN
  92. SEGACT,MILIGN
  93. NBRINC = IPNO(/1)
  94. SEGDES,MILIGN
  95. SEGDES,MMATRI
  96. *
  97. END
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  

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