Télécharger pilotage_indirect_2.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : pilotage_indirect_2.dgibi
  2. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  3. * Problem description:
  4. *
  5. * In the example below, we study the behaviour of a holed plate under
  6. * tensile loading. The mesh is irregular and the load is applied at
  7. * the right edge under displacement control. At this edge, only the
  8. * direction of the displacement is known a priori. The displacement
  9. * intensity is calculated in such a way to respect the path equation
  10. * specified by the user. Here, the defaut path equation (CMSI) is
  11. * utilised.
  12. *
  13. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  14. *'OPTI' 'ECHO' 0;
  15. 'OPTI' 'DIME' 2 'ELEM' 'TRI3' 'MODE' 'PLAN CONTR';
  16. 'OPTI' 'TRAC' 'PSC';
  17. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  18. * export psc figures
  19. PLT1 = faux;
  20. * export output text
  21. EXP1 = faux;
  22. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  23. *
  24. * DEFINING THE PARAMETRIC GEOMETRY
  25. *
  26. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  27. pig = 3.141592654;
  28. R = 0.5;
  29. e = (pig/80.)*R;
  30. e1 = (pig/80.)*R;
  31. CC = 1. 0.85;
  32.  
  33. DTETA = ((e/R)/pig)*180.;
  34. SINDT = 'SIN'(DTETA);
  35. COSDT = 'COS'(DTETA);
  36.  
  37. DTETA1 = ((e1/R)/pig)*180.;
  38. SINDT1 = 'SIN'(DTETA1);
  39. COSDT1 = 'COS'(DTETA1);
  40.  
  41. dens1 = 1./5.;
  42. dens2 = 1./8.;
  43. dens3 = 2.*R*(SINDT);
  44. dens4 = 2.*R*(SINDT1);
  45.  
  46. PA = 0. 0.;
  47. PB = 2. 0.;
  48. PC = 2. 2.;
  49. PD = 0. 2.;
  50.  
  51. PE = (1.-(R*SINDT)) 0.;
  52. PF = (1.+(R*SINDT)) 0.;
  53. PG = (1.+(R*SINDT1)) 2.;
  54. PH = (1.-(R*SINDT1)) 2.;
  55.  
  56. PI = 2. 0.85;
  57. PL = 0. 0.85;
  58.  
  59. PC1 = (1.+(R*SINDT)) (0.35+(R*(1-COSDT)));
  60. PC2 = 1.5 0.85;
  61. PC3 = (1.+(R*SINDT1)) (1.35-(R*(1-COSDT1)));
  62. PC4 = (1.-(R*SINDT1)) (1.35-(R*(1-COSDT1)));
  63. PC5 = 0.5 0.85;
  64. PC6 = (1.-(R*SINDT)) (0.35+(R*(1-COSDT)));
  65.  
  66. LAE = 'DROI' PA PE 'DINI' dens1 'DFIN' dens3;
  67. LC6E = 'DROI' PE PC6 'DINI' dens3 'DFIN' dens3;
  68. LC5C6 = 'CERC' PC6 CC PC5 'DINI' dens3 'DFIN' dens2;
  69. LC5L = 'DROI' PC5 PL 'DINI' dens2 'DFIN' dens1;
  70. LLA = 'DROI' PL PA 'DINI' dens1 'DFIN' dens1;
  71. LSW = LAE 'ET' LC6E 'ET' LC5C6 'ET' LC5L 'ET' LLA;
  72. SSW = 'SURF' LSW;
  73.  
  74. LEF = 'DROI' 1 PE PF;
  75. LC1F = 'DROI' PF PC1 'DINI' dens3 'DFIN' dens3;
  76. LC6C1 = 'CERC' PC1 CC PC6 'DINI' dens3 'DFIN' dens3;
  77. LS = LEF 'ET' LC1F 'ET' LC6C1 'ET' ('INVE' LC6E);
  78. SS = 'SURF' LS;
  79.  
  80. LFB = 'DROI' PF PB 'DINI' dens3 'DFIN' dens1;
  81. LBI = 'DROI' PB PI 'DINI' dens1 'DFIN' dens1;
  82. LC2I = 'DROI' PI PC2 'DINI' dens1 'DFIN' dens2;
  83. LC2C1 = 'CERC' PC2 CC PC1 'DINI' dens2 'DFIN' dens3;
  84. LSE = LFB 'ET' LBI 'ET' LC2I 'ET' LC2C1 'ET' ('INVE' LC1F);
  85. SSE = 'SURF' LSE;
  86.  
  87. LIC = 'DROI' PI PC 'DINI' dens1 'DFIN' dens1;
  88. LCG = 'DROI' PC PG 'DINI' dens1 'DFIN' dens4;
  89. LGC3 = 'DROI' PG PC3 'DINI' dens4 'DFIN' dens4;
  90. LC3C2 = 'CERC' PC3 CC PC2 'DINI' dens4 'DFIN' dens2;
  91. LNE = ('INVE' LC2I) 'ET' LIC 'ET' LCG 'ET' LGC3 'ET' LC3C2;
  92. SNE = 'SURF' LNE;
  93.  
  94. LC3C4 = 'CERC' PC3 CC PC4 'DINI' dens4 'DFIN' dens4;
  95. LGH = 'DROI' 1 PG PH;
  96. LHC4 = 'DROI' PH PC4 'DINI' dens4 'DFIN' dens4;
  97. LN = LC3C4 'ET' ('INVE' LGC3) 'ET' LGH 'ET' LHC4;
  98. SN = 'SURF' LN;
  99.  
  100. LC4C5 = 'CERC' PC5 CC PC4 'DINI' dens2 'DFIN' dens4;
  101. LHD = 'DROI' PH PD 'DINI' dens4 'DFIN' dens1;
  102. LDL = 'DROI' PD PL 'DINI' dens1 'DFIN' dens1;
  103. LNW = ('INVE' LC5L) 'ET' LC4C5 'ET' ('INVE' LHC4) 'ET' LHD 'ET' LDL;
  104. SNW = 'SURF' LNW;
  105.  
  106. DAMMPART = SS 'ET' SN;
  107. ELASPART = SSW 'ET' SSE 'ET' SNE 'ET' SNW;
  108.  
  109. LAT_E = LDL 'ET' LLA;
  110. LAT_D = LIC 'ET' LBI;
  111.  
  112. ESTRUT = (DAMMPART 'ET' ELASPART);
  113.  
  114. 'SI' PLT1;
  115. 'TRAC' ESTRUT;
  116. 'FINSI';
  117. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  118. *
  119. * END OF PARAMETRIC GEOMETRY
  120. *
  121. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  122.  
  123. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  124. *
  125. * DEFINING MODEL AND MATERIAL
  126. *
  127. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  128. AT=1.0e0;
  129. AC=1.2e0;
  130. BC=1.5e+03;
  131. BT=1.0E4;
  132. epsd0=1.0E-4;
  133. YG=1.0E+9;
  134. BBT=1.06e0;
  135. NNU=0.0;
  136. RO =2.3E+03;
  137.  
  138. MOD1 = 'MODE' ELASPART 'MECANIQUE' 'ELASTIQUE' 'ISOTROPE';
  139. MAT1 = 'MATE' MOD1 'YOUN' YG 'NU' NNU 'RHO' RO;
  140.  
  141. MOD2 = 'MODE' DAMMPART 'MECANIQUE' 'ELASTIQUE' 'ISOTROPE'
  142. 'ENDOMMAGEMENT' 'MAZARS';
  143. MAT2 = 'MATE' MOD2 'YOUN' YG 'NU' NNU 'RHO' RO 'BTRA' BT
  144. 'KTR0' epsd0 'ATRA' AT 'ACOM' AC 'BCOM' BC 'BETA' BBT;
  145.  
  146. MODTOT = MOD1 'ET' MOD2;
  147. MATTOT = MAT1 'ET' MAT2;
  148.  
  149. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  150. *
  151. * END OF MODEL AND MATERIAL
  152. *
  153. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  154.  
  155. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  156. *
  157. * DEFINING BOUNDARY CONDITIONS (known a priori)
  158. *
  159. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  160. CL1 = 'BLOQ' 'UX' LAT_E;
  161. CL2 = 'BLOQ' 'UY' PA;
  162. CLT = CL1 'ET' CL2;
  163.  
  164. LA = ESTRUT 'POIN' 'DROIT' PA PB 0.00001;
  165. CL4 = 'BLOQ' 'UY' LA;
  166. CLT = CLT 'ET' CL4;
  167.  
  168. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  169. *
  170. * END OF BOUNDARY CONDITIONS
  171. *
  172. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  173.  
  174. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  175. *
  176. * PROBLEM SOLUTION
  177. *
  178. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  179. *
  180. * number of time increments
  181. ntincrem = 100;
  182. *
  183. * control parameter
  184. TAU = 1.0E-4;
  185. *
  186. * direction of the applied displacement (u_hat)
  187. CL3 = 'BLOQ' 'UX' LAT_D;
  188. CLT = CLT 'ET' CL3;
  189. uch = 'DEPI' CL3 1.0 ;
  190. *
  191. lis_incr= 'PROG' 0. 'PAS' 1 (ntincrem. * 1) ;
  192. lis_tau = 'PROG' 0. 'PAS' TAU (ntincrem. * TAU) ;
  193. ev1 = 'EVOL' 'MANU' 't' lis_incr 'tau' lis_tau ;
  194. *
  195. **** preparing PASAPAS input table
  196. tab1 = 'TABLE';
  197. tab1 . 'MOVA' = 'D' ;
  198. tab1 . 'BLOCAGES_MECANIQUES' = CLT ;
  199. tab1 . 'CARACTERISTIQUES' = mattot ;
  200. tab1 . 'MODELE' = modtot ;
  201. tab1 . 'TEMPS_CALCULES' = lis_incr ;
  202.  
  203. **** lines to be included for ativating path-following control ******
  204. tab1 . 'PILOTAGE_INDIRECT' = VRAI;
  205. tab1 . 'DEPLACEMENTS_PILOTES' = uch ;
  206. tab1 . 'PARAMETRE_DE_PILOTAGE' = ev1 ;
  207. tab1 . 'PRECISION' = 1.0e-7;
  208.  
  209. PASAPAS tab1;
  210.  
  211. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  212. *
  213. * END OF SOLUTION
  214. *
  215. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  216.  
  217. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  218. *
  219. * BEGIN OF POST-PROCESSING
  220. *
  221. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  222. *
  223. **** procedure @TOTAL adapted
  224. 'DEBPROC' RESFORCE CH1*'CHPOINT' GEO*'MAILLAGE' COMP1*'MOT' ;
  225. CH2 = 'REDU' CH1 GEO ;
  226. CHTOT = 'RESU' CH2 ;
  227. P1 = ('EXTR' CHTOT MAIL) 'POIN' 1 ;
  228. TOT1 = 'EXTR' CHTOT COMP1 P1 ;
  229. 'FINPROC' TOT1 ;
  230. *
  231. *
  232. nn = 'DIME' tab1 . 'TEMPS';
  233. *
  234. PROF = 'PROG' 0.;
  235. PROT = 'PROG' 0.;
  236. PROD = 'PROG' 0.;
  237. *
  238. 'REPE' LAB (nn - 1 ) ;
  239. ii = &LAB ;
  240. TT = tab1 . 'TEMPS' . ii ;
  241. deplac = tab1 . 'DEPLACEMENTS' . ii ;
  242. force_indirect = 'REAC' CL1 deplac ;
  243. FF = RESFORCE force_indirect LAT_E 'FX' ;
  244. DD = 'EXTR' deplac 'UX' PB ;
  245.  
  246. PROT = PROT 'ET' ( 'PROG' TT) ;
  247. PROF = PROF 'ET' ( 'PROG' (-1.*FF)) ;
  248. PROD = PROD 'ET' ( 'PROG' DD) ;
  249. 'FIN' LAB ;
  250.  
  251. 'SI' PLT1;
  252. PROETA = TAB1 . 'COEFFICIENT_DE_PILOTAGE' ;
  253. evo11 = 'EVOL' 'TURQ' 'MANU' 'disp' PROD 'forc' PROF ;
  254. evo12 = 'EVOL' 'ROUG' 'MANU' 'increment' PROT 'eta' PROETA ;
  255. 'DESS' evo11 ;
  256. 'DESS' evo12 ;
  257. 'FINSI';
  258.  
  259. 'SI' EXP1;
  260. @EXCEL1 evo11 'forc_displ_cmsi.txt' ;
  261. 'FINSI';
  262.  
  263. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  264. *
  265. * END OF POST-PROCESSING
  266. *
  267. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  268.  
  269. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  270. *
  271. * BEGIN OF ERROR TESTING
  272. *
  273. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  274.  
  275. refx = 'PROG' 0.;
  276. refx = refx 'ET' ('PROG' 7.25234E-05);
  277. refx = refx 'ET' ('PROG' 9.52043E-05);
  278. refx = refx 'ET' ('PROG' 8.90173E-05);
  279. refx = refx 'ET' ('PROG' 8.23523E-05);
  280. refx = refx 'ET' ('PROG' 7.52624E-05);
  281. refx = refx 'ET' ('PROG' 6.99765E-05);
  282. refx = refx 'ET' ('PROG' 6.64275E-05);
  283. refx = refx 'ET' ('PROG' 6.47229E-05);
  284. refx = refx 'ET' ('PROG' 6.31895E-05);
  285. refx = refx 'ET' ('PROG' 6.25926E-05);
  286. refx = refx 'ET' ('PROG' 6.19542E-05);
  287. refx = refx 'ET' ('PROG' 6.13881E-05);
  288. refx = refx 'ET' ('PROG' 6.11670E-05);
  289. refx = refx 'ET' ('PROG' 6.06850E-05);
  290. refx = refx 'ET' ('PROG' 6.06745E-05);
  291. refx = refx 'ET' ('PROG' 6.05893E-05);
  292. refx = refx 'ET' ('PROG' 6.04648E-05);
  293. refx = refx 'ET' ('PROG' 6.02701E-05);
  294. refx = refx 'ET' ('PROG' 5.98903E-05);
  295. refx = refx 'ET' ('PROG' 6.06235E-05);
  296. refx = refx 'ET' ('PROG' 6.10159E-05);
  297. refx = refx 'ET' ('PROG' 6.09750E-05);
  298. refx = refx 'ET' ('PROG' 6.15300E-05);
  299. refx = refx 'ET' ('PROG' 6.13401E-05);
  300. refx = refx 'ET' ('PROG' 6.16858E-05);
  301. refx = refx 'ET' ('PROG' 6.21556E-05);
  302. refx = refx 'ET' ('PROG' 6.19956E-05);
  303. refx = refx 'ET' ('PROG' 6.23896E-05);
  304. refx = refx 'ET' ('PROG' 6.21802E-05);
  305. refx = refx 'ET' ('PROG' 6.23712E-05);
  306. refx = refx 'ET' ('PROG' 6.20276E-05);
  307. refx = refx 'ET' ('PROG' 6.14528E-05);
  308. refx = refx 'ET' ('PROG' 6.25645E-05);
  309. refx = refx 'ET' ('PROG' 6.24348E-05);
  310. refx = refx 'ET' ('PROG' 6.21010E-05);
  311. refx = refx 'ET' ('PROG' 6.28804E-05);
  312. refx = refx 'ET' ('PROG' 6.19484E-05);
  313. refx = refx 'ET' ('PROG' 6.18783E-05);
  314. refx = refx 'ET' ('PROG' 6.12946E-05);
  315. refx = refx 'ET' ('PROG' 5.94620E-05);
  316. refx = refx 'ET' ('PROG' 5.94464E-05);
  317. refx = refx 'ET' ('PROG' 5.48346E-05);
  318. refx = refx 'ET' ('PROG' 5.00176E-05);
  319. refx = refx 'ET' ('PROG' 3.55282E-05);
  320. refx = refx 'ET' ('PROG' 3.02823E-05);
  321. refx = refx 'ET' ('PROG' 2.82446E-05);
  322. refx = refx 'ET' ('PROG' 2.79204E-05);
  323. refx = refx 'ET' ('PROG' 2.95119E-05);
  324. refx = refx 'ET' ('PROG' 3.21104E-05);
  325. refx = refx 'ET' ('PROG' 3.53427E-05);
  326. refx = refx 'ET' ('PROG' 3.89299E-05);
  327. refx = refx 'ET' ('PROG' 4.26923E-05);
  328. refx = refx 'ET' ('PROG' 4.65366E-05);
  329. refx = refx 'ET' ('PROG' 5.04177E-05);
  330. refx = refx 'ET' ('PROG' 5.43149E-05);
  331. refx = refx 'ET' ('PROG' 5.82192E-05);
  332. refx = refx 'ET' ('PROG' 6.21265E-05);
  333. refx = refx 'ET' ('PROG' 6.60349E-05);
  334. refx = refx 'ET' ('PROG' 6.99438E-05);
  335. refx = refx 'ET' ('PROG' 7.38529E-05);
  336. refx = refx 'ET' ('PROG' 7.77621E-05);
  337. refx = refx 'ET' ('PROG' 8.16713E-05);
  338. refx = refx 'ET' ('PROG' 8.55805E-05);
  339. refx = refx 'ET' ('PROG' 8.94897E-05);
  340. refx = refx 'ET' ('PROG' 9.33989E-05);
  341. refx = refx 'ET' ('PROG' 9.73081E-05);
  342. refx = refx 'ET' ('PROG' 1.01217E-04);
  343. refx = refx 'ET' ('PROG' 1.05127E-04);
  344. refx = refx 'ET' ('PROG' 1.01457E-04);
  345. refx = refx 'ET' ('PROG' 9.27572E-05);
  346. refx = refx 'ET' ('PROG' 8.45790E-05);
  347. refx = refx 'ET' ('PROG' 7.88846E-05);
  348. refx = refx 'ET' ('PROG' 7.51973E-05);
  349. refx = refx 'ET' ('PROG' 7.26282E-05);
  350. refx = refx 'ET' ('PROG' 7.03561E-05);
  351. refx = refx 'ET' ('PROG' 6.88321E-05);
  352. refx = refx 'ET' ('PROG' 6.75941E-05);
  353. refx = refx 'ET' ('PROG' 6.65391E-05);
  354. refx = refx 'ET' ('PROG' 6.60840E-05);
  355. refx = refx 'ET' ('PROG' 6.49857E-05);
  356. refx = refx 'ET' ('PROG' 6.34483E-05);
  357. refx = refx 'ET' ('PROG' 6.19822E-05);
  358. refx = refx 'ET' ('PROG' 6.05333E-05);
  359. refx = refx 'ET' ('PROG' 5.77906E-05);
  360. refx = refx 'ET' ('PROG' 5.31490E-05);
  361. refx = refx 'ET' ('PROG' 4.25939E-05);
  362. refx = refx 'ET' ('PROG' 3.43240E-05);
  363. refx = refx 'ET' ('PROG' 2.93451E-05);
  364. refx = refx 'ET' ('PROG' 2.74954E-05);
  365. refx = refx 'ET' ('PROG' 2.81269E-05);
  366. refx = refx 'ET' ('PROG' 3.02495E-05);
  367. refx = refx 'ET' ('PROG' 3.32799E-05);
  368. refx = refx 'ET' ('PROG' 3.67737E-05);
  369. refx = refx 'ET' ('PROG' 4.04981E-05);
  370. refx = refx 'ET' ('PROG' 4.43358E-05);
  371. refx = refx 'ET' ('PROG' 4.82257E-05);
  372. refx = refx 'ET' ('PROG' 5.21371E-05);
  373. refx = refx 'ET' ('PROG' 5.60573E-05);
  374. refx = refx 'ET' ('PROG' 5.99810E-05);
  375. refx = refx 'ET' ('PROG' 6.39061E-05);
  376. *
  377. * suite a modification de mazar pour mettre un endommagement residuel nouvelle liste de valeur
  378. *
  379. REFX = 'PROG' 0.000000 7.25234E-05 9.52044E-05 8.90173E-05 8.23523E-05 7.52625E-05 6.99765E-05 6.64275E-05 6.47228E-05;
  380. REFX = REFX 'ET' ('PROG' 6.31895E-05 6.25926E-05 6.19542E-05 6.13881E-05 6.11671E-05 6.06880E-05 6.06790E-05 6.05976E-05);
  381. REFX = REFX 'ET' ('PROG' 6.04768E-05 6.02842E-05 5.99090E-05 6.06467E-05 6.10430E-05 6.10057E-05 6.15633E-05 6.13763E-05);
  382. REFX = REFX 'ET' ('PROG' 6.17253E-05 6.21982E-05 6.20421E-05 6.24373E-05 6.22293E-05 6.24231E-05 6.20775E-05 6.15096E-05);
  383. REFX = REFX 'ET' ('PROG' 6.26263E-05 6.24904E-05 6.21702E-05 6.29478E-05 6.20093E-05 6.19512E-05 6.13524E-05 5.95224E-05);
  384. REFX = REFX 'ET' ('PROG' 5.95014E-05 5.48704E-05 5.00570E-05 4.35154E-05 3.60484E-05 3.07921E-05 2.85441E-05 2.81884E-05);
  385. REFX = REFX 'ET' ('PROG' 2.95751E-05 3.21451E-05 3.53807E-05 3.89711E-05 4.28356E-05 4.67677E-05 5.06999E-05 5.46320E-05);
  386. REFX = REFX 'ET' ('PROG' 5.85641E-05 6.24962E-05 6.64283E-05 7.03604E-05 7.42926E-05 7.82247E-05 8.21568E-05 8.60889E-05);
  387. REFX = REFX 'ET' ('PROG' 9.00210E-05 9.39531E-05 9.78852E-05 1.01817E-04 1.05750E-04 1.04886E-04 9.61616E-05 8.74241E-05);
  388. REFX = REFX 'ET' ('PROG' 8.11869E-05 7.66412E-05 7.36086E-05 7.09466E-05 6.91937E-05 6.81026E-05 6.69824E-05 6.62705E-05);
  389. REFX = REFX 'ET' ('PROG' 6.56305E-05 6.39545E-05 6.23256E-05 6.09259E-05 5.86086E-05 5.49990E-05 4.57171E-05 3.65636E-05);
  390. REFX = REFX 'ET' ('PROG' 3.05317E-05 2.78188E-05 2.77164E-05 2.94886E-05 3.23281E-05 3.57223E-05 3.93977E-05 4.33015E-05);
  391. REFX = REFX 'ET' ('PROG' 4.72388E-05 5.11762E-05 5.51135E-05 5.90509E-05);
  392.  
  393.  
  394. refy = 'PROG' 0.;
  395. refy = refy 'ET' ('PROG' 4.45463E+04);
  396. refy = refy 'ET' ('PROG' 5.83719E+04);
  397. refy = refy 'ET' ('PROG' 5.43956E+04);
  398. refy = refy 'ET' ('PROG' 5.00694E+04);
  399. refy = refy 'ET' ('PROG' 4.53975E+04);
  400. refy = refy 'ET' ('PROG' 4.17647E+04);
  401. refy = refy 'ET' ('PROG' 3.92294E+04);
  402. refy = refy 'ET' ('PROG' 3.77753E+04);
  403. refy = refy 'ET' ('PROG' 3.63999E+04);
  404. refy = refy 'ET' ('PROG' 3.56303E+04);
  405. refy = refy 'ET' ('PROG' 3.47410E+04);
  406. refy = refy 'ET' ('PROG' 3.39867E+04);
  407. refy = refy 'ET' ('PROG' 3.33804E+04);
  408. refy = refy 'ET' ('PROG' 3.25917E+04);
  409. refy = refy 'ET' ('PROG' 3.21308E+04);
  410. refy = refy 'ET' ('PROG' 3.15410E+04);
  411. refy = refy 'ET' ('PROG' 3.09996E+04);
  412. refy = refy 'ET' ('PROG' 3.03773E+04);
  413. refy = refy 'ET' ('PROG' 2.96708E+04);
  414. refy = refy 'ET' ('PROG' 2.95883E+04);
  415. refy = refy 'ET' ('PROG' 2.92486E+04);
  416. refy = refy 'ET' ('PROG' 2.87976E+04);
  417. refy = refy 'ET' ('PROG' 2.86039E+04);
  418. refy = refy 'ET' ('PROG' 2.79892E+04);
  419. refy = refy 'ET' ('PROG' 2.77311E+04);
  420. refy = refy 'ET' ('PROG' 2.74429E+04);
  421. refy = refy 'ET' ('PROG' 2.69136E+04);
  422. refy = refy 'ET' ('PROG' 2.66394E+04);
  423. refy = refy 'ET' ('PROG' 2.60137E+04);
  424. refy = refy 'ET' ('PROG' 2.56496E+04);
  425. refy = refy 'ET' ('PROG' 2.49869E+04);
  426. refy = refy 'ET' ('PROG' 2.42949E+04);
  427. refy = refy 'ET' ('PROG' 2.43173E+04);
  428. refy = refy 'ET' ('PROG' 2.37479E+04);
  429. refy = refy 'ET' ('PROG' 2.32228E+04);
  430. refy = refy 'ET' ('PROG' 2.30970E+04);
  431. refy = refy 'ET' ('PROG' 2.22625E+04);
  432. refy = refy 'ET' ('PROG' 2.18520E+04);
  433. refy = refy 'ET' ('PROG' 2.11716E+04);
  434. refy = refy 'ET' ('PROG' 2.00706E+04);
  435. refy = refy 'ET' ('PROG' 1.96542E+04);
  436. refy = refy 'ET' ('PROG' 1.76046E+04);
  437. refy = refy 'ET' ('PROG' 1.56278E+04);
  438. refy = refy 'ET' ('PROG' 1.03518E+04);
  439. refy = refy 'ET' ('PROG' 8.46019E+03);
  440. refy = refy 'ET' ('PROG' 7.54396E+03);
  441. refy = refy 'ET' ('PROG' 7.11231E+03);
  442. refy = refy 'ET' ('PROG' 7.28604E+03);
  443. refy = refy 'ET' ('PROG' 7.77220E+03);
  444. refy = refy 'ET' ('PROG' 8.46328E+03);
  445. refy = refy 'ET' ('PROG' 9.27464E+03);
  446. refy = refy 'ET' ('PROG' 1.01473E+04);
  447. refy = refy 'ET' ('PROG' 1.10496E+04);
  448. refy = refy 'ET' ('PROG' 1.19656E+04);
  449. refy = refy 'ET' ('PROG' 1.28878E+04);
  450. refy = refy 'ET' ('PROG' 1.38130E+04);
  451. refy = refy 'ET' ('PROG' 1.47395E+04);
  452. refy = refy 'ET' ('PROG' 1.56665E+04);
  453. refy = refy 'ET' ('PROG' 1.65938E+04);
  454. refy = refy 'ET' ('PROG' 1.75211E+04);
  455. refy = refy 'ET' ('PROG' 1.84486E+04);
  456. refy = refy 'ET' ('PROG' 1.93760E+04);
  457. refy = refy 'ET' ('PROG' 2.03034E+04);
  458. refy = refy 'ET' ('PROG' 2.12308E+04);
  459. refy = refy 'ET' ('PROG' 2.21583E+04);
  460. refy = refy 'ET' ('PROG' 2.30857E+04);
  461. refy = refy 'ET' ('PROG' 2.40088E+04);
  462. refy = refy 'ET' ('PROG' 2.49235E+04);
  463. refy = refy 'ET' ('PROG' 2.38237E+04);
  464. refy = refy 'ET' ('PROG' 2.15515E+04);
  465. refy = refy 'ET' ('PROG' 1.93316E+04);
  466. refy = refy 'ET' ('PROG' 1.76276E+04);
  467. refy = refy 'ET' ('PROG' 1.64231E+04);
  468. refy = refy 'ET' ('PROG' 1.54226E+04);
  469. refy = refy 'ET' ('PROG' 1.45048E+04);
  470. refy = refy 'ET' ('PROG' 1.37513E+04);
  471. refy = refy 'ET' ('PROG' 1.29944E+04);
  472. refy = refy 'ET' ('PROG' 1.23544E+04);
  473. refy = refy 'ET' ('PROG' 1.17698E+04);
  474. refy = refy 'ET' ('PROG' 1.10863E+04);
  475. refy = refy 'ET' ('PROG' 1.03002E+04);
  476. refy = refy 'ET' ('PROG' 9.53999E+03);
  477. refy = refy 'ET' ('PROG' 8.76775E+03);
  478. refy = refy 'ET' ('PROG' 7.77889E+03);
  479. refy = refy 'ET' ('PROG' 6.50887E+03);
  480. refy = refy 'ET' ('PROG' 4.50567E+03);
  481. refy = refy 'ET' ('PROG' 2.98532E+03);
  482. refy = refy 'ET' ('PROG' 1.85411E+03);
  483. refy = refy 'ET' ('PROG' 1.07094E+03);
  484. refy = refy 'ET' ('PROG' 5.96771E+02);
  485. refy = refy 'ET' ('PROG' 3.10709E+02);
  486. refy = refy 'ET' ('PROG' 1.56888E+02);
  487. refy = refy 'ET' ('PROG' 7.53307E+01);
  488. refy = refy 'ET' ('PROG' 3.32747E+01);
  489. refy = refy 'ET' ('PROG' 1.35795E+01);
  490. refy = refy 'ET' ('PROG' 5.44144E+00);
  491. refy = refy 'ET' ('PROG' 2.16530E+00);
  492. refy = refy 'ET' ('PROG' 8.56639E-01);
  493. refy = refy 'ET' ('PROG' 3.37225E-01);
  494. refy = refy 'ET' ('PROG' 1.32182E-01);
  495. REFY = 'PROG' 0.0000 44546. 58372. 54396. 50069. 45398. 41765. 39229. 37775.;
  496. REFY = REFY 'ET' ('PROG' 36400. 35630. 34741. 33987. 33381. 32594. 32134. 31547.);
  497. REFY = REFY 'ET' ('PROG' 31009. 30388. 29685. 29606. 29270. 28822. 28630. 28019.);
  498. REFY = REFY 'ET' ('PROG' 27763. 27478. 26952. 26679. 26056. 25694. 25031. 24343.);
  499. REFY = REFY 'ET' ('PROG' 24370. 23799. 23281. 23156. 22321. 21916. 21230. 20130.);
  500. REFY = REFY 'ET' ('PROG' 19713. 17655. 15677. 13114. 10574. 8673.6 7680.6 7238.2);
  501. REFY = REFY 'ET' ('PROG' 7333.2 7809.2 8504.0 9319.4 10233. 11173. 12112. 13052.);
  502. REFY = REFY 'ET' ('PROG' 13991. 14930. 15870. 16809. 17748. 18688. 19627. 20567.);
  503. REFY = REFY 'ET' ('PROG' 21506. 22445. 23385. 24318. 25244. 24883. 22607. 20270.);
  504. REFY = REFY 'ET' ('PROG' 18464. 17029. 15949. 14884. 14098. 13383. 12723. 12117.);
  505. REFY = REFY 'ET' ('PROG' 11474. 10675. 9827.5 9087.1 8125.5 7045.6 5140.8 3478.0);
  506. REFY = REFY 'ET' ('PROG' 2212.9 1326.5 748.85 419.76 243.85 152.52 108.16 109.91);
  507. REFY = REFY 'ET' ('PROG' 119.91 129.90 139.89 149.89);
  508.  
  509.  
  510. tol1 = 1.0e-2;
  511. maxres = 0.;
  512. 'REPE' BTEST (nn - 1 ) ;
  513. V1 = 'EXTR' refx (&BTEST + 1);
  514. V2 = 'EXTR' prod (&BTEST + 1);
  515. res1 = 'ABS' ((V1 - V2)/V1);
  516. 'SI' (res1 > maxres); maxres = res1; 'FINSI';
  517.  
  518. W1 = 'EXTR' refy (&BTEST + 1);
  519. W2 = 'EXTR' prof (&BTEST + 1);
  520. res2 = 'ABS' ((W1 - W2)/W1);
  521. 'SI' (res2 > maxres); maxres = res2; 'FINSI';
  522.  
  523. 'FIN' BTEST ;
  524.  
  525. err1 = maxres > tol1;
  526.  
  527.  
  528. 'SI' err1;
  529. 'ERRE' 5 ;
  530. 'FINSI';
  531.  
  532. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  533. *
  534. * END OF ERROR TESTING
  535. *
  536. *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  537. 'FIN';
  538.  
  539.  
  540.  
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  

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