Télécharger vertytab.procedur

Retour à la liste

Numérotation des lignes :

  1. * VERTYTAB PROCEDUR MAGN 18/06/08 21:15:14 9840
  2. 'DEBPROC' VERTYTAB ;
  3. ARGU KAS/'ENTIER' ;
  4. *******************************************************************
  5. *******************************************************************
  6. * VERTYTAB rxt 'YAIR' 'FLOTTANT' ;
  7. * on vérifie que 'YAIR' est bien une entrée de rxt et que c'est
  8. * un FLOTTANT -/> erreur
  9. *
  10. * VERTYTAB lxt 'YAIR' 'MOT' ;
  11. * on vérifie que 'YAIR' est bien une entrée de lxt (LISTMOTS)
  12. * 'MOT' n'est pas testé pour le moment -/> erreur
  13. *
  14. * VERTYTAB 'ERREUR' 'ERREUR' 'message' ;
  15. * dans ce cas on imprime le message et retour
  16. *
  17. *******************************************************************
  18. Si (Exist KAS) ;
  19. ARGU GEO*'TABLE' mt*'MAILLAGE' ;
  20. ltpvf = elem mt 'TYPE' ;
  21. nbe= dime ltpvf ;
  22.  
  23. Ellin1D= mots 'SEG2' ;
  24. Ellin2D= mots 'TRI3' 'QUA4' ;
  25. Ellin3D= mots 'CUB8' 'PRI6' 'TET4' 'PYR5' ;
  26. Elqad1D= mots 'SEG3' ;
  27. Elqad2D= mots 'TRI6' 'QUA8' ;
  28. Elqad3D= mots 'CU20' 'PR15' 'TE10' 'PY13' ;
  29. Elqaf1D= mots 'SEG3' ;
  30. Elqaf2D= mots 'TRI7' 'QUA9' ;
  31. Elqaf3D= mots 'CU27' 'PR21' 'TE15' 'PY19' ;
  32. elref=extr ltpvf 1 ;
  33.  
  34. Si ('EGA' KAS 0) ;
  35.  
  36. Si ('EXIST' Ellin2D elref) ;
  37. TYEL='LIN2D' ;
  38. Finsi ;
  39. Si ('EXIST' Ellin3D elref) ;
  40. TYEL='LIN3D' ;
  41. Finsi ;
  42.  
  43. Si ('EXIST' Elqad2D elref) ;
  44. TYEL='QAD2D' ;
  45. Finsi ;
  46. Si ('EXIST' Elqad3D elref) ;
  47. TYEL='QAD3D' ;
  48. Finsi ;
  49.  
  50. Si ('EXIST' Elqaf2D elref) ;
  51. TYEL='QAF2D' ;
  52. Finsi ;
  53. Si ('EXIST' Elqaf3D elref) ;
  54. TYEL='QAF3D' ;
  55. Finsi ;
  56.  
  57. GEO.'TYEL' = TYEL ;
  58. mess ' On vérifie la cohérence des maillages' ;
  59. mess ' Le premier type d élément du maillage donné pour vtf est ' ELREF;
  60. mess ' On vérifie que les éléments des maillages fournis pour les';
  61. mess ' besoins du calcul (parois, conditions limites etc) sont' ;
  62. mess ' compatibles avec les éléments géométriques de type ' TYEL ;
  63. mess ' et ceci indépendamment de la discrétisations choisie.' ;
  64. mess ' Les points d un arc de cercle suivant qu il est maillé en ';
  65. mess ' LINE ou en QUAD ne sont pas forcément à la même position.' ;
  66.  
  67. FINSI ;
  68.  
  69. SI (KAS '<EG' 1) ;
  70. TYEL = GEO.'TYEL' ;
  71. nbe= dime ltpvf ;
  72.  
  73. Si ('EGA' TYEL 'LIN2D') ;
  74. REPETER BTYEL nbe ;
  75. el=extr ltpvf &BTYEL ;
  76. Si (NON ('EXIST' Ellin2D el)) ;
  77. Mess ;
  78. Mess '*********************************************************' ;
  79. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  80. Mess ' ' ;
  81. Mess ' ' ;
  82. mess ' On attend des éléments de type linéaire 2D ' ;
  83. mess ' Le maillage contient des éléments de type ' el ;
  84. Mess '*********************************************************' ;
  85. Mess ;
  86. ERREUR 21 ;
  87. quitter VERTYTAB ;
  88. Finsi ;
  89. FIN BTYEL ;
  90. FINSI ;
  91.  
  92. Si ('EGA' TYEL 'LIN3D') ;
  93. REPETER BTYEL nbe ;
  94. el=extr ltpvf &BTYEL ;
  95. Si (NON ('EXIST' Ellin3D el)) ;
  96. Mess ;
  97. Mess '*********************************************************' ;
  98. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  99. Mess ' ' ;
  100. Mess ' ' ;
  101. mess ' On attend des éléments de type linéaire 3D ' ;
  102. mess ' Le maillage contient des éléments de type ' el ;
  103. Mess '*********************************************************' ;
  104. Mess ;
  105. ERREUR 21 ;
  106. quitter VERTYTAB ;
  107. Finsi ;
  108. FIN BTYEL ;
  109. FINSI ;
  110.  
  111. Si ('EGA' TYEL 'QAD2D') ;
  112. REPETER BTYEL nbe ;
  113. el=extr ltpvf &BTYEL ;
  114. Si (NON ('EXIST' Elqad2D el)) ;
  115. Mess ;
  116. Mess '*********************************************************' ;
  117. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  118. Mess ' ' ;
  119. Mess ' ' ;
  120. mess ' On attend des éléments de type quadratique 2D ' ;
  121. mess ' Le maillage contient des éléments de type ' el ;
  122. Mess '*********************************************************' ;
  123. Mess ;
  124. ERREUR 21 ;
  125. quitter VERTYTAB ;
  126. Finsi ;
  127. FIN BTYEL ;
  128. FINSI ;
  129.  
  130. Si ('EGA' TYEL 'QAD3D') ;
  131. REPETER BTYEL nbe ;
  132. el=extr ltpvf &BTYEL ;
  133. Si (NON ('EXIST' Elqad3D el)) ;
  134. Mess ;
  135. Mess '*********************************************************' ;
  136. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  137. Mess ' ' ;
  138. Mess ' ' ;
  139. mess ' On attend des éléments de type quadratique 3D' ;
  140. mess ' Le maillage contient des éléments de type ' el ;
  141. Mess '*********************************************************' ;
  142. Mess ;
  143. ERREUR 21 ;
  144. quitter VERTYTAB ;
  145. Finsi ;
  146. FIN BTYEL ;
  147. FINSI ;
  148.  
  149. Si ('EGA' TYEL 'QAF2D') ;
  150. REPETER BTYEL nbe ;
  151. el=extr ltpvf &BTYEL ;
  152. Si (NON ('EXIST' Elqaf2D el)) ;
  153. Mess ;
  154. Mess '*********************************************************' ;
  155. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  156. Mess ' ' ;
  157. Mess ' ' ;
  158. mess ' On attend des éléments de type QUAF 2D ' ;
  159. mess ' Le maillage contient des éléments de type ' el ;
  160. Mess '*********************************************************' ;
  161. Mess ;
  162. ERREUR 21 ;
  163. quitter VERTYTAB ;
  164. Finsi ;
  165. FIN BTYEL ;
  166. FINSI ;
  167.  
  168. Si ('EGA' TYEL 'QAF3D') ;
  169. REPETER BTYEL nbe ;
  170. el=extr ltpvf &BTYEL ;
  171. Si (NON ('EXIST' Elqaf3D el)) ;
  172. Mess ;
  173. Mess '*********************************************************' ;
  174. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  175. Mess ' ' ;
  176. Mess ' ' ;
  177. mess ' On attend des éléments de type QUAF 3D' ;
  178. mess ' Le maillage contient des éléments de type ' el ;
  179. Mess '*********************************************************' ;
  180. Mess ;
  181. ERREUR 21 ;
  182. quitter VERTYTAB ;
  183. Finsi ;
  184. FIN BTYEL ;
  185. FINSI ;
  186.  
  187. FINSI ;
  188.  
  189.  
  190. SI (KAS 'EGA' 2) ;
  191. TYEL = GEO.'TYEL' ;
  192. nbe = dime ltpvf ;
  193.  
  194. Si ('EGA' TYEL 'LIN2D') ;
  195. REPETER BTYEL nbe ;
  196. el=extr ltpvf &BTYEL ;
  197. Si (NON ('EXIST' Ellin1D el)) ;
  198. Mess ;
  199. Mess '*********************************************************' ;
  200. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  201. Mess ' ' ;
  202. Mess ' Conditions limites ' ;
  203. mess ' On attend des éléments de type linéaire 1D (SEG2) ' ;
  204. mess ' Le maillage contient des éléments de type ' el ;
  205. Mess '*********************************************************' ;
  206. Mess ;
  207. ERREUR 21 ;
  208. quitter VERTYTAB ;
  209. Finsi ;
  210. FIN BTYEL ;
  211. FINSI ;
  212.  
  213. Si ('EGA' TYEL 'LIN3D') ;
  214. REPETER BTYEL nbe ;
  215. el=extr ltpvf &BTYEL ;
  216. Si (NON ('EXIST' Ellin2D el)) ;
  217. Mess ;
  218. Mess '*********************************************************' ;
  219. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  220. Mess ' ' ;
  221. Mess ' Conditions limites ' ;
  222. mess ' On attend des éléments de type linéaire 2D (TRI3 ou QUA4)';
  223. mess ' Le maillage contient des éléments de type ' el ;
  224. Mess '*********************************************************' ;
  225. Mess ;
  226. ERREUR 21 ;
  227. quitter VERTYTAB ;
  228. Finsi ;
  229. FIN BTYEL ;
  230. FINSI ;
  231.  
  232. Si ('EGA' TYEL 'QAD2D') ;
  233. REPETER BTYEL nbe ;
  234. el=extr ltpvf &BTYEL ;
  235. Si (NON ('EXIST' Elqad1D el)) ;
  236. Mess ;
  237. Mess '*********************************************************' ;
  238. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  239. Mess ' ' ;
  240. Mess ' Conditions limites ' ;
  241. mess ' On attend des éléments de type quadratique 1D (SEG3)' ;
  242. mess ' Le maillage contient des éléments de type ' el ;
  243. Mess '*********************************************************' ;
  244. Mess ;
  245. ERREUR 21 ;
  246. quitter VERTYTAB ;
  247. Finsi ;
  248. FIN BTYEL ;
  249. FINSI ;
  250.  
  251. Si ('EGA' TYEL 'QAD3D') ;
  252. REPETER BTYEL nbe ;
  253. el=extr ltpvf &BTYEL ;
  254. Si (NON ('EXIST' Elqad2D el)) ;
  255. Mess ;
  256. Mess '*********************************************************' ;
  257. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  258. Mess ' ' ;
  259. Mess ' Conditions limites ' ;
  260. mess ' On attend des éléments de type quadratique 2D (TRI6 ou QUA8)';
  261. mess ' Le maillage contient des éléments de type ' el ;
  262. Mess '*********************************************************' ;
  263. Mess ;
  264. ERREUR 21 ;
  265. quitter VERTYTAB ;
  266. Finsi ;
  267. FIN BTYEL ;
  268. FINSI ;
  269.  
  270. Si ('EGA' TYEL 'QAF2D') ;
  271. REPETER BTYEL nbe ;
  272. el=extr ltpvf &BTYEL ;
  273. Si (NON ('EXIST' Elqaf1D el)) ;
  274. Mess ;
  275. Mess '*********************************************************' ;
  276. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  277. Mess ' ' ;
  278. Mess ' Conditions limites ' ;
  279. mess ' On attend des éléments de type QUAF 1D (SEG3)' ;
  280. mess ' Le maillage contient des éléments de type ' el ;
  281. Mess '*********************************************************' ;
  282. Mess ;
  283. ERREUR 21 ;
  284. quitter VERTYTAB ;
  285. Finsi ;
  286. FIN BTYEL ;
  287. FINSI ;
  288.  
  289. Si ('EGA' TYEL 'QAF3D') ;
  290. REPETER BTYEL nbe ;
  291. el=extr ltpvf &BTYEL ;
  292. Si (NON ('EXIST' Elqaf2D el)) ;
  293. Mess ;
  294. Mess '*********************************************************' ;
  295. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  296. Mess ' ' ;
  297. Mess ' Conditions limites ' ;
  298. mess ' On attend des éléments de type QUAF 2D (TRI7 ou QUA9)' ;
  299. mess ' Le maillage contient des éléments de type ' el ;
  300. Mess '*********************************************************' ;
  301. Mess ;
  302. ERREUR 21 ;
  303. quitter VERTYTAB ;
  304. Finsi ;
  305. FIN BTYEL ;
  306. FINSI ;
  307.  
  308. FINSI ;
  309.  
  310.  
  311.  
  312. quitter VERTYTAB;
  313. FINSI ;
  314.  
  315. ARGU KAS/'ENTIER'
  316. rxt/'TABLE'
  317. lxt/'LISTMOTS'
  318. entree*mot typr*mot
  319. lco/'MOT' ;
  320. *******************************************************************
  321. Si (Exist rxt) ;
  322. Si (non (exist rxt entree));
  323. Mess '*********************************************************' ;
  324. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  325. Mess ' ' ;
  326. Mess 'L entree ' ENTREE ' n existe pas dans la table ' ;
  327. Mess ' ' ;
  328. Mess '*********************************************************' ;
  329. erreur 21 ;
  330. quitter VERTYTAB;
  331. Finsi ;
  332.  
  333. Si (non (exist lco));
  334. Si(NON ('EGA' TYPR (TYPE rxt.entree))) ;
  335. Mess '***********************************************************' ;
  336. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  337. Mess ' ' ;
  338. Mess ' On attend un ' TYPR ' pour l entree ' entree ' de la table';
  339. Mess ' ' ;
  340. Mess '***********************************************************' ;
  341. erreur 21 ;
  342. Finsi ;
  343. Sinon;
  344. Si((NON ('EGA' TYPR (TYPE rxt.entree)))
  345. et (NON ('EGA' lco (TYPE rxt.entree))) ) ;
  346. Mess '***********************************************************' ;
  347. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  348. Mess ' ' ;
  349. Mess ' On attend un ' TYPR ' ou un ' lco
  350. ' pour l entree ' entree ' de la table';
  351. Mess ' ' ;
  352. Mess '***********************************************************' ;
  353. erreur 21 ;
  354. Finsi ;
  355.  
  356. Finsi;
  357.  
  358. quitter VERTYTAB;
  359.  
  360. Finsi ;
  361.  
  362. Si (Exist lxt) ;
  363.  
  364. Si (non (exist lxt entree));
  365. Mess '*********************************************************' ;
  366. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  367. Mess ' ' ;
  368. Mess 'Le mot ' ENTREE ' n existe pas dans la liste ' ;
  369. Mess ' ' ;
  370. Mess 'Le contenu de la liste est ';
  371. list lxt ;
  372. Mess ' ' ;
  373. Mess '*********************************************************' ;
  374.  
  375. erreur 21 ;
  376. quitter VERTYTAB;
  377. Finsi ;
  378.  
  379. Finsi ;
  380.  
  381. Si (Exist lco);
  382.  
  383. Mess '*********************************************************' ;
  384. Mess ' ERREUR ERREUR ERREUR ERREUR ERREUR ERREUR ' ;
  385. Mess ' ' ;
  386. Mess lco ;
  387. Mess ' ' ;
  388. Mess ' ' ;
  389. Mess '*********************************************************' ;
  390.  
  391. erreur 21 ;
  392. quitter VERTYTAB;
  393.  
  394. Finsi ;
  395.  
  396. FINPROC ;
  397.  
  398.  
  399.  

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