Télécharger hbm_duffing.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : hbm_duffing.dgibi
  2. ******************************************************************
  3. *
  4. * Systeme a un degre de liberte
  5. *
  6. * Oscillateur de Duffing calcule en k harmoniques :
  7. *
  8. * m*x'' + c*x' + k*x + a*x^3 = f*cos(w*t)
  9. *
  10. * Continuation + HBM + AFT
  11. *
  12. ******************************************************************
  13.  
  14. *-----------------------------------------------------------------------
  15. * CHARMECA.PROCEDUR
  16. * Calcul de la force non lineaire fnl(x,t) et de sa derivee dfnl(x,t)/dx
  17. * dans le domaine temporel
  18. *-----------------------------------------------------------------------
  19. *
  20. * EN ENTREE :
  21. *
  22. * TAB1
  23. * >> parametres génériques :
  24. * . 'DEP_NL' : LISTCHPO DE DEPLACEMENTS TEMPORELLES
  25. * ou (pas encore programmé)
  26. * . i . 'CHPOINT' = CHPOINT unitaire des deplacements NL
  27. * . i . 'LISTREEL' = evolution temporelle coefficient du chpoint
  28. * >> parametres propres a ce cas test :
  29. * . 'COEFF_FNL' : coefficient de non linearite
  30. * . 'POINT_FNL' : point de non linearite
  31. * . 'COMP_FNL' : composante de non linearite
  32. *
  33. *
  34. * EN SORTIE :
  35. *
  36. * TAB1
  37. * >> parametres génériques :
  38. * . 'FNL_T' : LISTCHPO DES FORCES NON LINEAIRES TEMPORELLES
  39. * ou TABLE d'indice : (pas encore programmé)
  40. * . i . 'CHPOINT' = CHPOINT unitaire des forces non lineaires
  41. * . i . 'LISTREEL' = evolution temporelle coefficient du chpoint
  42. * . 'KNL_T' : DERIVEE DE FORCES NON LINEAIRES sous forme de TABLE :
  43. * . i . j = 'LISTREEL' evolution temporelle de dFi/dxj
  44. *
  45. *-----------------------------------------------------------------------
  46. DEBPROC CHARMECA TAB1*'TABLE';
  47.  
  48. ******** parametres d'entree propres a ce cas test **********
  49.  
  50. *coefficient de la force nl
  51. SI (exis TAB1 . 'COEFF_FNL');
  52. AL = TAB1 . 'COEFF_FNL';
  53. SINON;
  54. AL = 0.;
  55. MESS 'CHARMECA: PAS D EFFET NON LINEAIRE !';
  56. FINSI;
  57.  
  58. SI (EXIS TAB1 . 'POINT_FNL');
  59. pNL = TAB1 . 'POINT_FNL';
  60. SINON;
  61. MESS 'CHARMECA: IL MANQUE LA GEOMETRIE NL dans POINT_FNL'; ERRE 21;
  62. FINSI;
  63.  
  64. SI (EXIS TAB1 . 'COMP_FNL');
  65. COMP_FNL = TAB1 . 'COMP_FNL';
  66. n_CNL = DIME COMP_FNL;
  67. SINON;
  68. MESS 'CHARMECA: IL MANQUE LA COMPOSANTE NL dans COMP_FNL'; ERRE 21;
  69. FINSI;
  70.  
  71. ******** parametres d'entree génériques **********
  72.  
  73. *DEPNL : list de champ par points, deplacements temporels du point nl
  74. *
  75. SI (EXIS TAB1 'DEP_NL');
  76. DEPNL = TAB1 . 'DEP_NL';
  77. IFCHPO = ega (type DEPNL) 'LISTCHPO';
  78. si (non IFCHPO);
  79. si (neg (type DEPNL) 'TABLE');
  80. mess 'CHARMECA: DEP_NL doit etre de type LISTCHPO ou TABLE';
  81. ERRE 21;
  82. sinon;
  83. si (neg (type DEPNL . 1) 'LISTREEL');
  84. mess 'CHARMECA: DEP_NL . i doit etre un LISTREEL';
  85. ERRE 21;
  86. finsi;
  87. finsi;
  88. finsi;
  89. SINON;
  90. MESS 'CHARMECA: IL MANQUE LA LISTE DES DEPLACEMENTS dans DEP_NL';
  91. ERRE 21;
  92. FINSI;
  93.  
  94. * calcul de fnl ET dfnl/dx ? dans le doute on calcule tout...
  95. SI (NEG (TYPE IFFNL) 'LOGIQUE'); IFFNL = VRAI; FINSI;
  96. SI (NEG (TYPE IFKNL) 'LOGIQUE'); IFKNL = VRAI; FINSI;
  97.  
  98.  
  99.  
  100. ******** Calcul de FNL ********
  101.  
  102. *---------------- Cas DEPNL LISTCHPO
  103. SI IFCHPO;
  104.  
  105. * preparation des donnees de sortie
  106. FNLTEMP = VIDE 'LISTCHPO';
  107. FNLm = prog;
  108. KNLp = prog;
  109. CNL = EXTR COMP_FNL 1;
  110.  
  111. * nbt : nombre de pas de temps
  112. nbt = DIME DEPNL;
  113. ib = 0;
  114. REPE BFOR nbt; ib = ib + 1;
  115.  
  116. DEP_ib = extr DEPNL ib;
  117. DEP_i = DEP_ib ;
  118. FNL_i = -1.*al* (DEP_i **3) ;
  119. FNLTEMP = FNLTEMP et FNL_i;
  120. FNLm = FNLm et (MAXI FNL_i 'ABS');
  121.  
  122. * pour le Calcul de DFNL :
  123. SI (IFKNL);
  124. xDEP_i = extr DEP_i pNL CNL;
  125. KNLp = KNLp et (3.*al* (xDEP_i **2));
  126. FINSI;
  127.  
  128. FIN BFOR;
  129. FNLmax = maxi (ABS FNLm);
  130.  
  131. *---------------- Cas DEPNL TABLE de LISTREEL
  132. SINON;
  133.  
  134. * DEPNL : table de listreel, indicée par les ddls NL
  135.  
  136. * nbt : nombre de pas de temps
  137. nbt = DIME DEPNL . 1;
  138. ib = 0;
  139. FNLTEMP = TABLE; FNLTEMP . 1 = PROG;
  140. KNLp = prog;
  141. REPE bfor nbt; ib = ib + 1;
  142. DEP_i0 = EXTR DEPNL . 1 ib;
  143. DEP_i = DEP_i0 ;
  144. FNLTEMP . 1 = FNLTEMP . 1 et (-1.*al* (DEP_i **3));
  145. SI (IFKNL);
  146. KNLp = KNLp et ( 3.*al* (DEP_i **2));
  147. FINSI;
  148. FIN bfor;
  149. FNLmax = maxi (ABS FNLTEMP . 1);
  150.  
  151. FINSI;
  152.  
  153.  
  154. ******** Calcul de DFNL ********
  155.  
  156. SI (IFKNL);
  157. * uniquement sous forme de LISTREELs
  158. KNLT1A = TABL;
  159. KNLT1A . 1 = tabl;
  160. KNLT1A . 1 . 1 = KNLp;
  161. FINSI;
  162.  
  163. TAB1 . 'FNL_T' = FNLTEMP;
  164. TAB1 . 'KNL_T' = KNLT1A;
  165. TAB1 . 'FNLMAX' = FNLmax;
  166.  
  167. FINPROC;
  168. *-----------------------------------------------------------------------
  169.  
  170.  
  171.  
  172. ************************************************************************
  173. *
  174. * dynamique non lineaire
  175. * reponse forcee d'un oscillateur de type Duffing
  176. * reponse par HBM
  177. *
  178. ************************************************************************
  179.  
  180. *opti echo 0 ;
  181. opti debug 1;
  182. OPTI DIME 2 ELEM SEG2 MODE PLAN ;
  183. OPTI EPSI LINEAIRE;
  184.  
  185. GRAPH = FAUX ; SAVE = FAUX; TNR = VRAI;
  186. * GRAPH = VRAI ; SAVE = VRAI; TNR = FAUX;
  187.  
  188.  
  189. *-------- Definition des options du calcul :
  190.  
  191. * CALCUL NON LINEAIRE via charmeca? (DEFAUT : VRAI)
  192. Calc_nl = VRAI;
  193. * si calcul par les listchpo dans AFT et DFT (DEFAUT : FAUX -> listreel)
  194. IFCHPO = FAUX;
  195. * IFCHPO = vrai;
  196.  
  197.  
  198. *-------- Definition des parametres du calcul :
  199.  
  200. *nombre d'harmoniques utilises
  201. * nhbm = 1;
  202. * nhbm = 3;
  203. nhbm = 7;
  204. * nhbm = 11;
  205.  
  206. *parametre de l'adimensionnement
  207. u1max = 1.;
  208.  
  209. *des iterations
  210. itmoy = 6;
  211. *ds = 0.1;
  212. ds = 1.;
  213. dsmax = 1.;
  214. dsmin = 1.E-3 ;
  215.  
  216. * si AFT, OTFR tel que le nb de points pour TFR = 2**OTFR
  217. * OTFR = 7;
  218. OTFR = ENTI 'SUPERIEUR' (log (2 * (2 * nhbm + 1)) / (log 2));
  219. mess 'OTFR = ' OTFR;
  220.  
  221.  
  222. *-------- Definition des donnees d'oscillateur ---------------
  223.  
  224. * M d2u/dt2 + C du/dt + K u + pfnl*u^3 = F(t)
  225. *mass
  226. pmass = 1.;
  227. *amortissement
  228. pamor = 0.1 ;
  229. *rigidite
  230. prigi = 1.;
  231. *force d'exterieur
  232. pfext = 0.5;
  233. *coefficient de la force non lineaire
  234. pfnl = 0.25;
  235. *pfnl = 1.;
  236. * pfnl = 5.;
  237. fprec = 1.E-3;
  238. si (ega pfnl 0.25 fprec) ; mofnl = mot '025'; finsi;
  239. si (ega pfnl 1.00 fprec) ; mofnl = mot '1'; finsi;
  240. si (ega pfnl 5.00 fprec) ; mofnl = mot '5'; finsi;
  241.  
  242. * prefix :
  243. prefix = chai 'hbm_duffing_' mofnl '_n' nhbm ;
  244. si GRAPH ;
  245. ficps = chai prefix '.ps';
  246. opti TRAC PSC EPTR 6 POTR 'HELVETICA_16' 'FTRA' ficps;
  247. finsi;
  248.  
  249. *plage d'etude de frequence en rad/s
  250. * par defaut, CONTINU va supposer que la FREQUENCE[rad/s] vaut w(t)=t
  251. t0 = 0.1;
  252. si (pfnl <eg 1.00); t1 = 2.45;
  253. sinon; t1 = 4.0;
  254. finsi;
  255. LIS1T = prog t0 PAS 0.05 t1;
  256.  
  257.  
  258. *------------- geometrie ---------------
  259. *
  260. P1 = 0. 0. ;
  261. P2 = 1. 0. ;
  262. ST = P1 D 1 P2 ;
  263.  
  264. *----------- matrices caracteristiques ----------
  265. *
  266. LIM1 = MOTS UY ;
  267. MASS1 = MASS 'UY' pmass P2 ;
  268. RI1 = MANU 'RIGI' P2 LIM1 (prog prigi);
  269. AMOR1 = MANU 'RIGI' P2 LIM1 (prog pamor);
  270.  
  271.  
  272. *------- on définit une unique table pour tout (HBM et CONTINU) -------
  273. TAB1 = TABLE ;
  274.  
  275. *--------- remplissage des matrices "temporelles" ---------
  276.  
  277. * ATTENTION AUX UNITES : ON VA TRAVAILLER EN rad/s ==> pas de 2pi
  278. TAB1 . 'MASSE_CONSTANTE' = MASS1 ;
  279. TAB1 . 'AMORTISSEMENT_CONSTANT' = AMOR1 ;
  280. TAB1 . 'RIGIDITE_CONSTANTE' = RI1 ;
  281. TAB1 . 'N_HARMONIQUE' = nhbm;
  282.  
  283. *------- remplissage des resultats attendus sur ddls "temporels" -------
  284. mycoul12 = mots VIOL BLEU BLEU TURQ TURQ OCEA OCEA VERT VERT OLIV OLIV
  285. JAUN JAUN ORAN ORAN ROUG ROUG ROSE ROSE AZUR AZUR GRIS GRIS DEFA DEFA ;
  286.  
  287. TAB1 . 'RESULTATS' = tabl;
  288. TAB1 . 'RESULTATS' . 1 = tabl;
  289. TAB1 . 'RESULTATS' . 1 . 'POINT_MESURE' = P2;
  290. TAB1 . 'RESULTATS' . 1 . 'COMPOSANTE' = mot 'UY';
  291. TAB1 . 'RESULTATS' . 1 . 'TITRE' = mot 'U';
  292. TAB1 . 'RESULTATS' . 1 . 'COULEUR' = mot 'BLEU';
  293. TAB1 . 'RESULTATS' . 1 . 'COULEUR_HBM' = mycoul12;
  294.  
  295.  
  296. *--------- passage du probleme en frequentiel ---------
  297.  
  298. HBM TAB1;
  299.  
  300. MESS '>>>>>>>>>>>>>>> COMPOSANTES DEP TEMPORELLES';
  301. LIST TAB1 .'COMPOSANTES' . 'DEPLACEMENT';
  302. MESS '>>>>>>>>>>>>>>> COMPOSANTES DEP FREQUENTIELLES';
  303. LIST TAB1 .'COMPOSANTES' . 'DEPLACEMENT_HBM';
  304.  
  305. MESS 'RIGIDITE_HBM'; LIST TAB1 . 'RIGIDITE_HBM' ;
  306. MESS 'BLOCAGES_HBM'; LIST TAB1 . 'BLOCAGES_HBM' ;
  307. MESS 'AMORTISSEMENT_HBM'; LIST TAB1 . 'AMORTISSEMENT_HBM' ;
  308. MESS 'MASSE_HBM'; LIST TAB1 . 'MASSE_HBM' ;
  309. MESS 'MASSE_HBM_1'; LIST TAB1 . 'MASSE_HBM_1' ;
  310. MESS 'MASSE_HBM_2'; LIST TAB1 . 'MASSE_HBM_2' ;
  311. MESS 'AMORTISSEMENT_HBM_1'; LIST TAB1 . 'AMORTISSEMENT_HBM_1';
  312.  
  313.  
  314. *----------- definition du chargement ----------------------------------
  315.  
  316. * ici, on definit directement le chargement en frequentiel
  317. * F2 : composante en cos 1wt
  318. FP11 = MANU 'CHPO' p2 1 'F2' pfext 'NATURE' 'DISCRET' ;
  319. *
  320. LIX1 = PROG 0. pas 0.1 (t1+10.) ;
  321. LIY1 = PROG (dime LIX1)*1.;
  322. EV1 = EVOL MANU 'w' LIX1 'F(w)' LIY1 ;
  323. CHA1 = CHAR MECA FP11 EV1 ;
  324.  
  325.  
  326. *----------- conditions initiales -----------------------
  327.  
  328. * U0 = MANU CHPO p2 3 'U1' 0. 'U2' 0. 'V2' 0. ;
  329. * en equilibre statique lineaire :
  330. K0tot = TAB1 . 'RIGIDITE_HBM' et TAB1 . 'BLOCAGES_HBM';
  331. U0 = RESO K0tot FP11;
  332. *-> estimation lineaire l'equilibre n'est donc pas respecté !
  333.  
  334.  
  335. *----------- OPTIONS DE CALCUL ----------------------
  336.  
  337. TAB1 . 'GRANDS_DEPLACEMENTS' = FAUX ;
  338. TAB1 . 'GEOMETRIE' = P2;
  339. TAB1 . 'CHARGEMENT' = CHA1;
  340. TAB1 . 'PRECISION' = 1.E-5;
  341. TAB1 . 'TEMPS_CALCULES' = LIS1T;
  342. TAB1 . 'MAXIPAS' = 1000;
  343. TAB1 . 'ACCELERATION' = 4;
  344. TAB1 . 'DEPLACEMENTS' = TABLE;
  345. TAB1 . 'DEPLACEMENTS' . 0 = U0 ;
  346. TAB1 . 'NB_ITERATION' = itmoy;
  347. TAB1 . 'MAXITERATION' = 30;
  348. TAB1 . 'WTABLE' = tabl;
  349. TAB1 . 'WTABLE' . 'DS' = ds;
  350. TAB1 . 'WTABLE' . 'DSMAX' = dsmax;
  351. TAB1 . 'WTABLE' . 'DSMIN' = dsmin;
  352. TAB1 . 'MAXI_DEPLACEMENT' = u1max;
  353. TAB1 . 'PAS_SAUVES' = 2;
  354.  
  355. * calcul des forces NL
  356. TAB1 . 'PROCEDURE_CHAR_MECA'= Calc_nl ;
  357. TAB1 . 'CALC_CHPO' = IFCHPO;
  358. TAB1 . 'PROCEDURE_FREQUENCE_TEMPS' = mot 'AFT';
  359. TAB1 . 'N_PT_TFR' = OTFR;
  360.  
  361. * parametres du cas test lié a AFT et CHARMECA
  362. TAB1 . 'COEFF_FNL' = pfnl;
  363. TAB1 . 'POINT_FNL' = P2;
  364. TAB1 . 'COMP_FNL' = mots 'UY' ;
  365.  
  366. * stabilité
  367. TAB1 . 'STABILITE' = MOTS 'DIAG' 'HILL';
  368.  
  369.  
  370. *----------- resolution par la procedure CONTINU -----------------------
  371.  
  372. *calcul avec continuation
  373. CONTINU TAB1;
  374.  
  375. TEMP 'IMPR' 'MAXI';
  376.  
  377. *------------------------- post-traitement -----------------------------
  378.  
  379.  
  380. ********** tracé de toutes les harmoniques individuellement **********
  381.  
  382. wprog = TAB1 . 'TEMPS_PROG';
  383. evtot = TAB1 . 'RESULTATS_HBM' . 'RESULTATS_EVOL';
  384.  
  385. TDESS1 = TABL;
  386. TDESS1 . 'TITRE' = TAB1 . 'RESULTATS_HBM' . 'TITRE';
  387.  
  388. si GRAPH;
  389. dess evtot
  390. TITX '\w/\w_{0}' POSX CENT
  391. TITY 'U_{k}' POSY CENT TDESS1 LEGE NO;
  392. finsi;
  393.  
  394. ******************* uy2p : amplitude en norme 2 ******************
  395.  
  396. ihbm = 0;
  397. uy2p = TAB1 . 'RESULTATS_HBM' . 1 . 'RESULTATS' ** 2;
  398. repe BUYHBM nhbm; ihbm = ihbm + 1;
  399. ikcos = 2*ihbm;
  400. iksin = 2*ihbm + 1;
  401. uy2p = uy2p
  402. + (0.5* ( (TAB1 . 'RESULTATS_HBM' . ikcos . 'RESULTATS' ** 2)
  403. + (TAB1 . 'RESULTATS_HBM' . iksin . 'RESULTATS' ** 2)) );
  404. fin BUYHBM;
  405.  
  406. *** evolution + tracé ***
  407. evuy2 = evol VIOL MANU wprog uy2p;
  408. si GRAPH;
  409. dess evuy2
  410. TITX '\w/\w_{0}' POSX CENT
  411. TITY '|U|_{2}' POSY CENT ;
  412. finsi;
  413.  
  414.  
  415. ********** traduction des resultats frequentiels en temporels **********
  416.  
  417. HBM_POST TAB1;
  418.  
  419. ************* tracé du max d'amplitude max_t(u(t)) *********************
  420.  
  421. evuyamp = TAB1 . 'RESULTATS' . 'RESULTATS_EVOL';
  422.  
  423. si GRAPH;
  424. dess evuyamp
  425. TITX '\w/\w_{0}' POSX CENT
  426. TITY 'max|U(t)|' POSY CENT ;
  427. finsi;
  428.  
  429. ************* tracé du max d'amplitude avec la stabilite ! *************
  430.  
  431. istab = TAB1 . 'RESULTATS_STABILITE' . 'FLOQ' . 'STABILITE';
  432. Tdess2 = TABL;
  433. Tdess2 . 'LIGNE_VARIABLE' = TABL;
  434. Tdess2 . 'LIGNE_VARIABLE' . 1 = istab;
  435. si GRAPH;
  436. dess evuyamp
  437. TITX '\w/\w_{0}' POSX CENT
  438. TITY 'max|U(t)|' POSY CENT Tdess2;
  439. finsi;
  440. * zoom
  441. Tdess2 . 1 = mot 'MARQ S PLUS';
  442.  
  443. si GRAPH;
  444. dess evuyamp
  445. TITX '\w/\w_{0}' POSX CENT XBOR 1.55 1.70 YBOR 2.8 3.1
  446. TITY 'max|U(t)|' POSY CENT Tdess2;
  447. dess evuyamp
  448. TITX '\w/\w_{0}' POSX CENT XBOR 1.28 1.31 YBOR 0.8 1.5
  449. TITY 'max|U(t)|' POSY CENT Tdess2;
  450. finsi;
  451.  
  452. * autres tracé de la stabilite : lambda_R en fonction de W
  453. mycoul = mots 'VIOL' 'BLEU' 'AZUR' 'TURQ' 'VERT' 'OLIV'
  454. 'JAUN' 'ORAN' 'ROUG' 'ROSE';
  455. ncoul = dime mycoul;
  456. wprog2 = enle wprog (dime wprog);
  457. evlrtot = VIDE 'EVOLUTIO' ;
  458. evlitot = VIDE 'EVOLUTIO' ;
  459. nl = dime TAB1 . 'RESULTATS_STABILITE' . 'FLOQ' . 'EXPOSANT_REEL';
  460. il = 0;
  461. icoul = 0;
  462. repe bl nl; il = il + 1; icoul = icoul + 1;
  463. si(icoul > ncoul); icoul = 1; finsi; coul1 = extr mycoul icoul;
  464. lr1 = TAB1 . 'RESULTATS_STABILITE' . 'FLOQ' . 'EXPOSANT_REEL' . il;
  465. evlrtot = evlrtot
  466. et (evol coul1 MANU '\w/\w_{0}' wprog2 '\l_{R}' lr1);
  467. li1 = TAB1 . 'RESULTATS_STABILITE' . 'FLOQ' . 'EXPOSANT_IMAG' . il;
  468. evlitot = evlitot
  469. et (evol coul1 MANU '\w/\w_{0}' wprog2 '\l_{I}' li1);
  470. fin bl;
  471. wprog3 = prog (mini wprog2) (maxi wprog2);
  472. evzero = evol manu '\w/\w_{0}' wprog3 '\l_{R}' (0.*wprog3);
  473. Tdess3 = tabl;
  474. Tdess3 . 1 = mot 'TIRR';
  475.  
  476. si GRAPH;
  477. dess (evzero et evlrtot)
  478. 'TITY' '\l_{R} (s^{-1})' Tdess3;
  479. dess (evlitot) 'TITY' '\l_{I} (Hz)' ;
  480. finsi;
  481.  
  482.  
  483.  
  484. *-------------------------- sauvegarde -----------------------------
  485.  
  486. si SAVE ;
  487. ficxdr = chai prefix '.xdr';
  488. mess 'sauvegarde dans ' ficxdr;
  489. opti sauv ficxdr;
  490. finsi;
  491.  
  492.  
  493.  
  494. *--------------------- test de non regression ---------------------
  495.  
  496. si TNR ;
  497.  
  498. * recup valeurs de la courbes de reponse
  499. wamp = extr evuyamp 'ABSC';
  500. uyamp = extr evuyamp 'ORDO';
  501. namp = DIME uyamp;
  502.  
  503. * on teste la presence de 2 points limites
  504. dw1 = ( wamp enle 1) - ( wamp enle namp);
  505. dw1dw0 = (dw1 enle 1) * (dw1 enle (namp - 1));
  506. mptlim = (lect 0) et (enti 'PROCH' (masq dw1dw0 'EGINFE' 0.)) et 0;
  507. nptlim = somm mptlim;
  508. si (nptlim neg 2);
  509. mess 'Il devrait y avoir 2 points limites !';
  510. list nptlim;
  511. ERRE 5;
  512. finsi;
  513.  
  514. * on verifie que pour ces 2 points il y a chgt de stabilité
  515. iptlim = posi 1 DANS mptlim 'TOUS' ;
  516. sumstab = (extr istab (iptlim - 1)) + (extr istab (iptlim));
  517. * sumstab doit valoir 1 (ni 0 ni 2)
  518. si ( ((mini sumstab) neg 1) ou ((maxi sumstab) neg 1) );
  519. mess 'Les 2 points limites doivent correspondre a un changement '
  520. 'de stabilite!';
  521. list sumstab;
  522. ERRE 5;
  523. finsi;
  524.  
  525. * on termine par verifier l'amplitude en ces 2 points + l'amplitude max
  526. Utest = (extr uyamp iptlim) et (maxi uyamp) ;
  527. * on compare a une precedente execution (lors de la creation du cas test)
  528. Uref = prog 3.0705 1.0831 3.0874;
  529. si ( (MAXI (Utest - Uref) 'ABS') > 0.01 );
  530. mess 'Erreur dans les amplitudes predites !';
  531. list Utest;
  532. ERRE 5;
  533. finsi;
  534.  
  535. finsi;
  536.  
  537.  
  538. fin ;
  539.  
  540.  
  541.  
  542.  
  543.  
  544.  

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