Télécharger kp.eso

Retour à la liste

Numérotation des lignes :

kp
  1. C KP SOURCE CB215821 23/07/12 21:15:07 11704
  2. SUBROUTINE KP
  3. C_______________________________________________________________________
  4. C
  5. C OPERATEUR KP
  6. C
  7. C Construction de la matrice des pressions associees à la linearisation
  8. C des actions de pression sur la géometrie deformée.
  9. C
  10. C
  11. C Nouvelle syntaxe:
  12. C _________________
  13. *
  14. * 1ere option
  15. C
  16. C RIG1 =KP MODL1 PRES1 ('FLAM') ('ASYM');
  17. C
  18. C MODL1 = objet modele de type MMODEL
  19. C
  20. C PRES1=MCHAML ou CHPOINT de PRESSION
  21. C
  22. C 'FLAM' = MOT-CLE N{CESSAIRE SI L'ON VEUT UTILISER LA MATRICE
  23. C POUR FAIRE UNE ANALYSE DE FLAMBAGE.
  24. C
  25. C RIG1=Matrice KP de sous type RIGIDITE
  26. *
  27. * 2ème option
  28. *
  29. * RIG1=KP MODL1 RG (VEC1) ('ASYM')
  30. *
  31. * MOD1 : MODELE DE CALCUL, TYPE MMODEL
  32. * RG : COEFFICIENT MULTIPLICATIF DE RIGIDITE
  33. * VEC1 : vecteur (type point) qui definit le sens de
  34. * la "pesanTeur"(facultatif). S'il n'est pas
  35. * fourni vec1 est consideré suivant la normale
  36. * à chaque élément.
  37. * ASYM : mot clé pour avoir la matrice dissymetrique
  38. *
  39. * la deuxième version CALCULE LA MATRICE DE RAIDEUR LIEE A LA
  40. * VARIATION DE PRESSION DUE AU MOUVEMENT VERTICAL DANS UN CHAMP DE
  41. * PESANTEUR (on peut l'utiliser dans d'autres cas aussi, p.ex. plaque
  42. * sur sol elastique)
  43. C
  44. C ces matrices sont en general non symetriques, mais leur combinaison peut
  45. c etre symetrique (p.ex. en cas de pression hydrostatique). C'est pourquoi
  46. c nous voulons avoir la possibilité de construire les matrices symetriques
  47. c ou disymetriques.
  48. C
  49. C
  50. C CODE COMBESCURE JANV 87
  51. C
  52. C Passage aux nouveaux CHAMELEMs par P.DOWLATYARI le 5/4/91
  53. C
  54. C Ajout de la 2ème option I. Politopoulos Aout 1995
  55. C_______________________________________________________________________
  56. C
  57. IMPLICIT INTEGER(I-N)
  58. IMPLICIT REAL*8(A-H,O-Z)
  59. C
  60.  
  61. -INC PPARAM
  62. -INC CCOPTIO
  63. -INC SMCOORD
  64. C
  65. CHARACTER*4 MOFLAM(1)
  66. CHARACTER*4 MOASYM(1)
  67. DATA MOFLAM/'FLAM'/
  68. DATA MOASYM/'ASYM'/
  69.  
  70. C
  71. C
  72. IPMODL=0
  73. IPCHP=0
  74. IPRIG=0
  75. IFLAM=0
  76. ICHA=0
  77. IDISS=0
  78. segact mcoord
  79.  
  80. C
  81. CALL LIRMOT(MOFLAM,1,IFLAM,0)
  82. IF (IERR.NE.0) RETURN
  83. C
  84. CALL LIRMOT(MOASYM,1,IDISS,0)
  85. IF (IERR.NE.0) RETURN
  86.  
  87. C
  88. CALL LIROBJ('MMODEL',IPMODL,1,IRT1)
  89. IF (IERR.NE.0) RETURN
  90. CALL ACTOBJ('MMODEL ',IPMODL,1)
  91.  
  92. CALL LIROBJ('MCHAML',IPIN,0,IRT2)
  93. IF (IERR.NE.0) RETURN
  94. IF(IRT2.EQ.1) THEN
  95. CALL ACTOBJ('MCHAML ',IPIN,1)
  96. CALL REDUAF(IPIN,IPMODL,IPCHP,0,IR,KER)
  97. IF(IR .NE. 1) CALL ERREUR(KER)
  98. IF(IERR .NE. 0) RETURN
  99. ICHA=1
  100. ELSE
  101. CALL LIROBJ('CHPOINT ',IPCHP,0,IRT3)
  102. IF (IERR.NE.0) RETURN
  103. IF(IRT3.EQ.0) GO TO 10
  104. CALL ACTOBJ('CHPOINT ',IPCHP,1)
  105. ENDIF
  106. C
  107. CALL KPRES(IPMODL,IPCHP,ICHA,ICONV,IFLAM,IDISS,IPRIG,IRET)
  108. GOTO 20
  109. C
  110. *** matrice associee à un gradient de pression imposée
  111. 10 CONTINUE
  112. CALL LIRREE(XRG,1,IRET)
  113. IF (IRET.EQ.0) GOTO 666
  114. CALL LIROBJ('POINT',IPOIN1,0,IRET2)
  115.  
  116. CALL KGRAV1 (IPMODL,XRG,IPOIN1,IPRIG,IRET,IDISS,IFLAM)
  117. *
  118. * ecriture de la rigidite
  119.  
  120. 20 CONTINUE
  121. IF (IRET.EQ.1) THEN
  122. CALL ECROBJ('RIGIDITE',IPRIG)
  123. ENDIF
  124.  
  125. 666 CONTINUE
  126. END
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  

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