Télécharger hbmini.eso

Retour à la liste

Numérotation des lignes :

hbmini
  1. C HBMINI SOURCE OF166741 26/05/11 21:15:12 12538
  2.  
  3. C=======================================================================
  4. C= HBMINI =
  5. C= -------- =
  6. C= =
  7. C= Fonction : =
  8. C= ---------- =
  9. C= A partir d'une approximation initiale, converge vers une solution =
  10. C= des equations d'equilibre pour une frequence donnee. =
  11. C= -->iterations hybrides NR - gradient conjuge =
  12. C= =
  13. C=======================================================================
  14.  
  15. SUBROUTINE HBMINI(KTKAM,KTQ,KTFEX,KTPAS,KTLIAA,KTEMP,KTLIAB,KTPHI,
  16. & KCPR,KOCLFA,KOCLB1,KPARNUM,NHBM,NFFT,CHECK,ITER)
  17.  
  18. IMPLICIT INTEGER(I-N)
  19. IMPLICIT REAL*8(A-H,O-Z)
  20.  
  21. -INC PPARAM
  22. -INC CCOPTIO
  23.  
  24. -INC TMDYNC
  25.  
  26. LOGICAL CHECK
  27. CHARACTER*8 FLAG
  28.  
  29. *-----------------------------------------------------------------------
  30. * Le contenu des segments est donne en entree a NEWT:
  31. *
  32. * Matrices XK,XASM,XM,GAM,IGAM
  33. MTKAM=KTKAM
  34. *
  35. * Variables generalisees: coefficients de Fourier et frequence
  36. MTQ=KTQ
  37. *
  38. * Forces externes
  39. MTFEX=KTFEX
  40. *
  41. * Variables sur un pas de temps
  42. MTPAS=KTPAS
  43. *
  44. * Liaisons sur base A
  45. MTLIAA = KTLIAA
  46. * Liaisons sur base B
  47. MTLIAB = KTLIAB
  48. *
  49. * Truc local base A
  50. LOCLFA = KOCLFA
  51. * Truc local base B
  52. LOCLB1 = KOCLB1
  53. *
  54. * Deformees modales
  55. MTPHI = KTPHI
  56. *
  57. * Parametres numeriques
  58. PARNUM = KPARNUM
  59. *
  60. MTEMP=KTEMP
  61. * Nombre de modes
  62. NDDL = XM(/1)
  63. NDDL2 = XM(/2)
  64. * Nombre d'inconnues
  65. NT = Q1(/1)
  66.  
  67. *----- Iterations de Newton Raphson -----------------------------------
  68.  
  69. * -systeme NON-Autonome (= force)
  70. IF (TYPS.EQ.'FORC') THEN
  71. CALL HBMNEWT(NT,NHBM,NDDL,NFFT,MTQ,MTKAM,MTPHI,MTEMP,PARNUM,
  72. & MTLIAA,MTLIAB,MTFEX,MTPAS,LOCLFA,LOCLB1,CHECK,'IF',ITER)
  73.  
  74. * -systeme AUTOnome (sans forces exterieures)
  75. ELSEIF (TYPS.EQ.'AUTO') THEN
  76. CALL HBMNEWT(NT,NHBM,NDDL,NFFT,MTQ,MTKAM,MTPHI,MTEMP,PARNUM,
  77. & MTLIAA,MTLIAB,MTFEX,MTPAS,LOCLFA,LOCLB1,CHECK,'IA',ITER)
  78.  
  79. * -systeme Hamiltonien (modes non lineaires)
  80. ELSEIF (TYPS.EQ.'NNM') THEN
  81. CALL HBMNEWT(NT,NHBM,NDDL,NFFT,MTQ,MTKAM,MTPHI,MTEMP,PARNUM,
  82. & MTLIAA,MTLIAB,MTFEX,MTPAS,LOCLFA,LOCLB1,CHECK,'IN',ITER)
  83. ELSE
  84. WRITE(IOIMP,*) 'DYNC : Type TYPS de probleme inconnu !'
  85. CALL ERREUR(5)
  86. RETURN
  87.  
  88. ENDIF
  89.  
  90. * Sortie
  91. KTQ = MTQ
  92. KTEMP=MTEMP
  93.  
  94. RETURN
  95. END
  96.  
  97.  
  98.  

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