Télécharger aft2.procedur

Retour à la liste

Numérotation des lignes :

  1. * AFT2 PROCEDUR BP208322 16/09/01 21:15:02 9010
  2.  
  3. ************************************************************************
  4. *
  5. * OBJET : Calcul de la force non lineaire frequentiel
  6. * a partir de son expression temporelle
  7. *
  8. * /!\ TOUS LES ARGUMENTS (SAUF FNL1) SONT PASSES IMPLICITEMENT /!\
  9. *
  10. ************************************************************************
  11.  
  12. DEBPROC AFT2 ;
  13.  
  14.  
  15. *=== CALCUL DE FNL PAR LES LIST_CHPO et TFR ============================
  16.  
  17. SI IFCHPO2;
  18.  
  19. ARGU FNL1*'LISTCHPO';
  20.  
  21. FNLFR FNLFI fprog = TFR OTFR FNL1 LISTDT 'REIM' 'ROUG' ;
  22. *
  23. FNLFR2 = VIDE 'LISTCHPO';
  24. FNLFI2 = VIDE 'LISTCHPO';
  25. in = 1;
  26. FNLFR2= FNLFR2 et (EXTR FNLFR 1);
  27. FNLFI2= FNLFI2 et (EXTR FNLFI 1);
  28. REPE Bcoef (nhbm); in = in + 1;
  29. FNLFR2 = FNLFR2 et ( 2. * (EXTR FNLFR in));
  30. FNLFI2 = FNLFI2 et (-2. * (EXTR FNLFI in));
  31. FIN Bcoef;
  32. ik = 0;
  33. * harmonique 0
  34. FNLFRE = EXCO (EXTR FNLFR2 1) NOMCOM NOMF0 'NOID' 'NATURE' 'DISCRET';
  35. * harmonique ik
  36. REPE Btfr nhbm ; ik = ik + 1;
  37. NOMFc = NHBMF . ik . 'COS';
  38. NOMFs = NHBMF . ik . 'SIN';
  39. FNLFRE = FNLFRE +
  40. (EXCO (EXTR FNLFR2 (ik+1)) NOMCOM NOMFc 'NOID' 'NATURE' 'DISCRET')
  41. + (EXCO (EXTR FNLFI2 (ik+1)) NOMCOM NOMFs 'NOID' 'NATURE' 'DISCRET');
  42. FIN Btfr;
  43.  
  44. SINON;
  45.  
  46. *=== CALCUL DE FNL PAR LES LISTREELS ===================================
  47. *
  48. ARGU FNL1*'TABLE';
  49.  
  50. FNLFRE = VIDE 'CHPOINT';
  51.  
  52. *-boucle sur les ddls physique NL (UX, UY, ...) ---------
  53. REPE Bnl1 (DIME FNL1); ia = &Bnl1;
  54. * TFR de l'evolution temporelle de cette composante
  55. EVFNLT = EVOL MANU LISTDT FNL1 . ia;
  56. EVFNLF = TFR OTFR EVFNLT 'REIM' 'ROUG' ;
  57. FNLFR = EXTR EVFNLF 'ORDO' 1;
  58. FNLFI = EXTR EVFNLF 'ORDO' 2;
  59. * recup du nom de composante, du point support
  60. icnl = EXTR COMP_FNL ia;
  61. icFnl = CHAI 'F' (EXTR icnl 2);
  62. SI (EGA (TYPE Pnl) 'POINT'); Ps = Pnl;
  63. SINON; Ps = EXTR Pnl ia;
  64. FINSI;
  65. *---recombinaison pour chaque harmonique ---
  66. FNLFRE = FNLFRE + ( MANU 'CHPO' Ps 1 ((EXTR FNLFR 1) )
  67. (EXTR COMPF . icFnl 1) 'NATURE' 'DISCRET');
  68. REPE Bcoef nhbm; ik = &Bcoef;
  69. FNLFRE = FNLFRE + (MANU CHPO Ps 1 (2. * (EXTR FNLFR (ik + 1)))
  70. (EXTR COMPF . icFnl (2*ik)) 'NATURE' 'DISCRET');
  71. FNLFRE = FNLFRE + (MANU CHPO Ps 1 (-2. * (EXTR FNLFI (ik + 1)))
  72. (EXTR COMPF . icFnl (2*ik + 1)) 'NATURE' 'DISCRET');
  73. FIN Bcoef;
  74. FIN Bnl1;
  75.  
  76. FINSI;
  77.  
  78. FINP FNLFRE;
  79.  
  80.  

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