Télécharger spal_canalperiod.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : spal_canalperiod.dgibi
  2. ************************************************************************
  3. * NOM : spal_canalperiod.dgibi
  4. *
  5. * DESCRIPTION : Calcule l'écoulement turbulent d'un fluide dans un canal
  6. * plan grâce au modèle de Spalart-Allmaras. Pour obtenir
  7. * un régime hydrauliquement établi, on maille seulement
  8. * une courte tranche du canal et on impose des conditions
  9. * de périodicité entre l'entrée et la sortie. Le
  10. * mouvement du fluide est entretenu par un gradient de
  11. * pression constant imposé entre ces mêmes frontières.
  12. *
  13. * 1) PROCÉDURES UTILISATEUR .................... 107
  14. * 2) CRÉATION DU MAILLAGE ...................... 427
  15. * 3) RÉSOLUTION DU PROBLÈME .................... 690
  16. * 4) POST-TRAITEMENT DES RÉSULTATS ............. 906
  17. * 5) COMPTE-RENDU DU CALCUL ................... 1656
  18. *
  19. * MOTS-CLÉS : canal plan ; écoulement de Poiseuille ; turbulence ;
  20. * RANS ; SA ; DNS Moser Kim Mansour ; périodicité ;
  21. * gradient de pression
  22. *
  23. ************************************************************************
  24. * HISTORIQUE : 7/10/2010 : JCARDO : création du jeu de données
  25. * HISTORIQUE :
  26. * HISTORIQUE :
  27. ************************************************************************
  28. * Prière de PRENDRE LE TEMPS DE COMPLÉTER LES COMMENTAIRES
  29. * en cas de modification de ce cas test afin de faciliter
  30. * la maintenance !
  31. ************************************************************************
  32. * CONFIGURATION :
  33. *
  34. * HAUT:
  35. * U=V=NU0=0
  36. *
  37. * PT1 PT4
  38. * A +-------+
  39. * | | |
  40. * | ENTREE: | | SORTIE:
  41. * | P=P1 | | P=0
  42. * LY=2*HH | PT5+-------+PT6 U(SORTIE) =U(ENTREE)
  43. * | =(0;0) | V(SORTIE) =V(ENTREE)
  44. * | | | NU0(SORTIE)=NU0(ENTREE)
  45. * | | |
  46. * V +-------+
  47. * PT2 PT3
  48. *
  49. * BAS:
  50. * U=V=NU0=0
  51. *
  52. *
  53. * <------->
  54. * LX << LY
  55. *
  56. *
  57. ************************************************************************
  58. * PARAMÈTRES :
  59. *
  60. * Nombre de Reynolds turbulent visé (basé sur UTAU et HH)
  61. * Le maillage sera raffiné automatiquement près des parois
  62. * /!\ Les données DNS (section 4) proviennent d'un calcul à RETAU=590
  63. RETAU0 = 590 ;
  64. *
  65. * Calcul complet ? (si FAUX: test de non-regression rapide)
  66. COMPLET = FAUX ;
  67. *
  68. * Affichage graphique ?
  69. GRAPH = FAUX ;
  70. *
  71. * Nouveau calcul ? (si FAUX: post-traitement d'un calcul déjà effectué)
  72. NOUVEAU = VRAI ;
  73. *
  74. * Type d'éléments finis utilisés
  75. DISCR = 'QUAF' ;
  76. KPRES = 'CENTREP1' ;
  77. *
  78. * Décentrement
  79. DCENTR = 'SUPG' ;
  80. KCMD = 0. ;
  81. *
  82. ************************************************************************
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93. SMALL = 1.E-7 ;
  94.  
  95. OPTI 'DIME' 2 'ELEM' 'QUA4' ;
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106. * +===================================================================+
  107. * | |
  108. * | 1 - P R O C É D U R E S U T I L I S A T E U R |
  109. * | |
  110. * +===================================================================+
  111.  
  112.  
  113.  
  114.  
  115. * ======================================================================
  116. * 1) GESTION DES CONDITIONS DE PÉRIODICITÉ
  117. * ======================================================================
  118.  
  119. ************************************************************************
  120. * NOM : PCLIM
  121. * DESCRIPTION : Impose des conditions de périodicité entre 2 frontières
  122. * pendant un calcul de mécanique des fluides.
  123. ************************************************************************
  124. * HISTORIQUE : 9/11/2010 : JCARDO : création de la procédure
  125. * HISTORIQUE :
  126. * HISTORIQUE :
  127. ************************************************************************
  128. * Prière de PRENDRE LE TEMPS DE COMPLÉTER LES COMMENTAIRES
  129. * en cas de modification de ce sous-programme afin de faciliter
  130. * la maintenance !
  131. ************************************************************************
  132. * Syntaxe (cf. opérateur EQEX) :
  133. * ______________________________
  134. *
  135. * 'ZONE' $MD 'OPER' 'PCLIM' GEOM1 (LENTI1)
  136. * GEOM2 (LENTI2)
  137. * 'INCO' MOT1 ;
  138. *
  139. * - MOT1 : objet 'MOT' contenant le nom de l'inconnue
  140. * - GEOM1,GEOM2 : objets MAILLAGE à mettre en relation
  141. * - LENTI1,LENTI2 : dans le cas d'une inconnue vectorielle, objets
  142. * LISTENTI indiquant les composantes concernées
  143. *
  144. ************************************************************************
  145.  
  146. DEBP PCLIM ;
  147. ARGU RX*'TABLE' ;
  148. RV = RX . 'EQEX' ;
  149.  
  150. SI (EGA (RX . 'IARG') 2) ;
  151. GEOM1 = RX . 'ARG1' ;
  152. GEOM2 = RX . 'ARG2' ;
  153. LENTI1 = 0 ;
  154. LENTI2 = 0 ;
  155. SINON ;
  156. GEOM1 = RX . 'ARG1' ;
  157. GEOM2 = RX . 'ARG3' ;
  158. LENTI1 = RX . 'ARG2' ;
  159. LENTI2 = RX . 'ARG4' ;
  160. FINS ;
  161.  
  162. MINC = EXTR (RX . 'LISTINCO') 1 ;
  163. CINC = RV . 'INCO' . MINC ;
  164. LCO = EXTR CINC 'COMP' ;
  165. NCO = DIME LCO ;
  166.  
  167.  
  168. * La matrice de rigidité correspondant aux conditions périodiques
  169. * n'est construite que lors du premier appel à la procédure PCLIM.
  170. * Lors des appels suivants, la procédure se contente de renvoyer la
  171. * matrice déjà calculée.
  172.  
  173. SI ('EXIS' RX 'MRELA') ;
  174. ST1 = RX . 'SRELA' ;
  175. MAT1 = RX . 'MRELA' ;
  176.  
  177.  
  178. SINON ;
  179.  
  180. MLAG = 'LX' ;
  181.  
  182.  
  183. * Inconnue VECTORIELLE
  184. * --------------------
  185. SI (NCO > 1) ;
  186.  
  187. ST1 MAT1 = KOPS 'MATRIK' ;
  188.  
  189. SI (EGA LENTI1 0) ;
  190. LENTI1 = LECT 1 'PAS' 1 NCO ;
  191. LENTI2 = LENTI1 ;
  192. FINS ;
  193.  
  194. REPE BLOC0 (DIME LENTI2) ;
  195. MAT0 = RELA 'UX' GEOM1 - 'UY' GEOM2 ;
  196. ST0 = DEPI MAT0 0. ;
  197. MAT0 = KOPS 'RIMA' MAT0 ;
  198.  
  199.  
  200. MCO1 = EXTR LCO (EXTR LENTI1 &BLOC0) ;
  201. MCO2 = EXTR LCO (EXTR LENTI2 &BLOC0) ;
  202.  
  203. MATI = KOPS 'CHANINCO' MAT0
  204. (MOTS 'LX' 'UX' 'UY') (MOTS MLAG MCO1 MCO2)
  205. (MOTS 'FLX' 'FX' 'FY') (MOTS MLAG MCO1 MCO2) ;
  206. STI = EXCO ST0 'FLX' MLAG ;
  207.  
  208. MAT1 = MAT1 ET MATI ;
  209. ST1 = ST1 ET STI ;
  210.  
  211. FIN BLOC0 ;
  212.  
  213.  
  214. * Inconnue SCALAIRE
  215. * -----------------
  216. SINON ;
  217. MAT0 = RELA 'UX' GEOM1 - 'UY' GEOM2 ;
  218. ST0 = DEPI MAT0 0. ;
  219. MAT0 = KOPS 'RIMA' MAT0 ;
  220.  
  221. MAT1 = KOPS 'CHANINCO' MAT0
  222. (MOTS 'LX' 'UX' 'UY') (MOTS MLAG MINC MINC)
  223. (MOTS 'FLX' 'FX' 'FY') (MOTS MLAG MINC MINC) ;
  224. ST1 = EXCO ST0 'FLX' MLAG ;
  225. FINS ;
  226.  
  227.  
  228. RX . 'SRELA' = ST1 ;
  229. RX . 'MRELA' = MAT1 ;
  230.  
  231. FINS ;
  232.  
  233. * Fin de la procédure
  234. FINP ST1 MAT1 ;
  235.  
  236.  
  237.  
  238.  
  239. * ======================================================================
  240. * 2) EXTENSION DE L'OPÉRATEUR 'FIMP' AUX INCONNUES VECTORIELLES
  241. * ======================================================================
  242.  
  243. ************************************************************************
  244. * NOM : FIMPV
  245. * DESCRIPTION : Impose un effort vectoriel sur une partie du domaine.
  246. ************************************************************************
  247. * HISTORIQUE : 9/11/2010 : JCARDO : création de la procédure
  248. * HISTORIQUE :
  249. * HISTORIQUE :
  250. ************************************************************************
  251. * Prière de PRENDRE LE TEMPS DE COMPLÉTER LES COMMENTAIRES
  252. * en cas de modification de ce sous-programme afin de faciliter
  253. * la maintenance !
  254. ************************************************************************
  255. * Syntaxe (cf. opérateur EQEX) :
  256. * ______________________________
  257. *
  258. * 'ZONE' $MD 'OPER' 'FIMPV' OBJ1 'INCO' MOT1
  259. *
  260. * - $MD : objet MMODEL relatif au sous-domaine concerné
  261. * - MOT1 : objet 'MOT' contenant le nom de l'inconnue
  262. * - OBJ1 : objet POINT ou CHPOINT SOMMET indiquant l'effort à
  263. * appliquer, EXPRIMÉ DANS LE REPÈRE CARTÉSIEN GLOBAL
  264. * (si OBJ1 est un 'MOT' on va chercher sa valeur dans la
  265. * table 'INCO')
  266. *
  267. ************************************************************************
  268.  
  269. DEBP FIMPV ;
  270. ARGU RX*'TABLE' ;
  271. $MD = RX . 'DOMZ' ;
  272. RV = RX . 'EQEX' ;
  273.  
  274. * Inconnue sur laquelle porte la contrainte
  275. MINC = EXTR (RX . 'LISTINCO') 1 ;
  276. CINC = RV . 'INCO' . MINC ;
  277. LCO = EXTR CINC 'COMP' ;
  278. NCO = DIME LCO ;
  279.  
  280. * Objet CHPOINT ou POINT (ou MOT) à imposer
  281. OBJ1 = RX . 'ARG1' ;
  282. SI (EGA (TYPE OBJ1) 'MOT') ;
  283. OBJ1 = RV . 'INCO' . OBJ1 ;
  284. FINS ;
  285.  
  286. * Construction des objets à renvoyer
  287. CHP0 MAT0 = KOPS 'MATRIK' ;
  288. CHP0 = KCHT $MD 'VECT' 'SOMMET' OBJ1 ;
  289. CHP0 = CHP0 * (DOMA $MD 'XXDIAGSI') ;
  290. LCO0 = EXTR CHP0 'COMP' ;
  291. CHP0 = NOMC LCO0 LCO CHP0 'NATURE' 'DISCRET' ;
  292.  
  293. FINP CHP0 MAT0 ;
  294.  
  295.  
  296.  
  297.  
  298. * ======================================================================
  299. * 3) CRÉATION DE LIGNES NON UNIFORMES AVEC RESPECT STRICT DES DENSITÉS
  300. * ======================================================================
  301.  
  302. ************************************************************************
  303. * NOM : @DROI
  304. * DESCRIPTION : Crée une ligne dont les éléments situés aux extrémités
  305. * ont une longueur rigoureusement respectée
  306. * /!\ La progression n'est plus parfaitement géométrique!
  307. ************************************************************************
  308. * HISTORIQUE : 25/02/2011 : JCARDO : création de la procédure
  309. * HISTORIQUE :
  310. * HISTORIQUE :
  311. ************************************************************************
  312. * Prière de PRENDRE LE TEMPS DE COMPLÉTER LES COMMENTAIRES
  313. * en cas de modification de ce sous-programme afin de faciliter
  314. * la maintenance !
  315. ************************************************************************
  316. * Syntaxe :
  317. * _________
  318. *
  319. * GEOM1 = @DROI | POIN1 | POIN2 ('DINI' DENS1) ('DFIN' DENS2) ;
  320. * | LIG1 |
  321. *
  322. * - GEOM1 : MAILLAGE résultat composé de SEG2 ou SEG3
  323. * - POIN1, POIN2: Objets POINT délimitant le segment GEOM1
  324. * - DENS1, DENS2: Longueur du premier et du dernier élément.
  325. * Une valeur négative signifie que la longueur doit
  326. * être strictement respectée.
  327. *
  328. * Si une ligne LIG1 est donnée à la place du point POIN1, cette
  329. * ligne est prolongée jusqu'au point POIN2.
  330. *
  331. ************************************************************************
  332.  
  333. DEBP @DROI ;
  334.  
  335. * ==============================
  336. * LECTURE DES ARGUMENTS
  337. * ==============================
  338.  
  339. * Lecture de POIN1 ou LIG1
  340. ARGU LIG1/'MAILLAGE' ;
  341. SI (EXIS LIG1) ;
  342. TYP1 = ELEM LIG1 'TYPE' ;
  343. SI ((EXIS TYP1 'SEG2') OU (EXIS TYP1 'SEG3')) ;
  344. PT1 = POIN LIG1 'FINAL' ;
  345. SINON ;
  346. MESS '/!\ On attendait un MAILLAGE linéique!' ;
  347. FIN ;
  348. FINS ;
  349. SINON ;
  350. ARGU PT1*'POINT' ;
  351. FINS ;
  352.  
  353. * Lecture de POIN2
  354. ARGU PT2*'POINT' ;
  355.  
  356. * Lecture éventuelle de DENS1 et/ou DENS2
  357. D1 = 0. ;
  358. D2 = 0. ;
  359. REPE BLOCA 2 ;
  360. ARGU MCLE/'MOT' ;
  361. SI (EXIS MCLE) ;
  362. SI (EGA MCLE 'DINI') ;
  363. ARGU D1*'FLOTTANT' ;
  364. ITER BLOCA ;
  365. FINS ;
  366. SI (EGA MCLE 'DFIN') ;
  367. ARGU D2*'FLOTTANT' ;
  368. ITER BLOCA ;
  369. FINS ;
  370. QUIT BLOCA ;
  371. SINON ;
  372. ITER BLOCA ;
  373. FINS ;
  374. FIN BLOCA ;
  375. D10 = ABS D1 ;
  376. D20 = ABS D2 ;
  377.  
  378.  
  379. * ==============================
  380. * CRÉATION DE LA DROITE
  381. * ==============================
  382.  
  383. * Détermination du vecteur directeur et de la longueur du segment
  384. DIR1 = PT2 MOIN PT1 ;
  385. LTOT = NORM DIR1 ;
  386. DIR1 = DIR1 / LTOT ;
  387.  
  388. * Raison de la progression géométrique (pas celle calculée par DECOUP!)
  389. * => correspond presque toujours à un nombre non entier d'éléments...
  390. K1 = (LTOT - D10) / (LTOT - D20) ;
  391.  
  392. * Préparation de la ligne de commande pour créer GEOM1
  393. CMD1 = 'PT1' ;
  394. SI (D1 < 0.) ;
  395. PT3 = PT1 PLUS (D10 * DIR1) ;
  396. D10 = D10 * K1 ;
  397. CMD1 = CHAI CMD1 ' DROI 1 PT3' ;
  398. FINS ;
  399. PT4 = PT2 ;
  400. CMD1 = CHAI CMD1 ' DROI PT4' ;
  401. SI (D1 NEG 0.) ;
  402. CMD1 = CHAI CMD1 ' DINI D10' ;
  403. FINS ;
  404. SI (D2 NEG 0.) ;
  405. CMD1 = CHAI CMD1 ' DFIN D20' ;
  406. FINS ;
  407. SI (D2 < 0.) ;
  408. PT4 = PT2 MOIN (D20 * DIR1) ;
  409. D20 = D20 / K1 ;
  410. CMD1 = CHAI CMD1 ' DROI 1 PT2' ;
  411. FINS ;
  412.  
  413. * Création de la ligne GEOM1 et fusion éventuelle avec LIG1
  414. GEOM1 = (TEXT CMD1) ;
  415. SI (EGA (TYPE LIG1) 'MAILLAGE') ;
  416. GEOM1 = LIG1 ET GEOM1 ;
  417. FINS ;
  418.  
  419. FINP GEOM1 ;
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430. * +===================================================================+
  431. * | |
  432. * | 2 - C R É A T I O N D U M A I L L A G E |
  433. * | |
  434. * +===================================================================+
  435.  
  436.  
  437.  
  438.  
  439. * +===================================================================+
  440. * | PARAMÈTRES DU MAILLAGE |
  441. * +===================================================================+
  442.  
  443. * HH: Demi-hauteur du canal
  444. * LX: Longueur du canal
  445. HH = 1. ;
  446. LX = HH / 20. ;
  447.  
  448. * AMAX: Allongement maximal approximatif des éléments du maillage
  449. * DPAR: Ordonnée y+ approx. du noeud le plus proche de la paroi
  450. * DCEN: Distance inter-nodale au centre du canal, en % de la hauteur LY
  451. SI (COMPLET) ;
  452. AMAX = 8. ;
  453. DPAR = 0.5 ;
  454. DCEN = 2. ;
  455. SINON ;
  456. AMAX = 10. ;
  457. DPAR = 1. ;
  458. DCEN = 5. ;
  459. FINS ;
  460.  
  461.  
  462.  
  463. * +===================================================================+
  464. * | CREATION DU DOMAINE |
  465. * +===================================================================+
  466.  
  467. * NDISCR: Nombre de subdivisions par élément et par direction
  468. SI ((EGA DISCR 'MACRO') OU (EGA DISCR 'QUAF')) ;
  469. NDISCR = 2. ;
  470. SINON ;
  471. NDISCR = 1. ;
  472. FINS ;
  473.  
  474. * LX2: Demi-longueur du canal
  475. * LY: Hauteur du canal
  476. * DH: Diamètre hydraulique du canal
  477. * (= 4*Surface de passage / Périmètre mouillé)
  478. LX2 = LX/2. ;
  479. LY = 2.*HH ;
  480. DH = 4.*HH ;
  481.  
  482. * LNU0: Valeur a priori de l'unité de paroi (= échelle visqueuse)
  483. LNU0 = HH/RETAU0 ;
  484.  
  485. * DPAR0: Densité renormalisée des noeuds à la paroi
  486. * DCEN0: Densité renormalisée des noeuds au centre du canal
  487. DPAR0 = -1. * DPAR * LNU0 * NDISCR ;
  488. DCEN0 = -1. * (DCEN*0.01) * LY * NDISCR ;
  489.  
  490. * Détermination du nombre NX d'éléments QUAF dans la longueur du canal
  491. DX0 = (ABS DPAR0) * ((AMAX*AMAX - 1.) ** 0.5) ;
  492. NX0 = MAXI ( LECT 2 (ENTI (LX/DX0)) ) ;
  493. DX0 = LX / NX0 ;
  494. * /!\ On veut que NX soit pair:
  495. NX = NX0 + (NX0 @MOD 2) ;
  496.  
  497.  
  498. * Définition des sommets
  499. * ======================
  500. PT1 = 0. HH ;
  501. PT2 = 0. (-1.*HH) ;
  502. PT3 = LX (-1.*HH) ;
  503. PT4 = LX HH ;
  504. PT5 = 0. 0. ;
  505. PT6 = LX 0. ;
  506.  
  507.  
  508. * Création des lignes frontières
  509. * ==============================
  510. ENTREE = PT1 @DROI PT5 'DINI' DPAR0 'DFIN' DCEN0
  511. @DROI PT2 'DINI' DCEN0 'DFIN' DPAR0 ;
  512. BAS = PT2 DROI NX PT3 ;
  513. SORTIE = PT3 @DROI PT6 'DINI' DPAR0 'DFIN' DCEN0
  514. @DROI PT4 'DINI' DCEN0 'DFIN' DPAR0 ;
  515. HAUT = PT4 DROI NX PT1 ;
  516.  
  517.  
  518. * Maillage de la surface du domaine
  519. * =================================
  520. DOM = DALL ENTREE BAS SORTIE HAUT 'PLAN' ;
  521.  
  522.  
  523. * Conversion en éléments pour les fluides
  524. * =======================================
  525. DOM = CHAN DOM 'QUAF' ;
  526. ENTREE = CHAN ENTREE 'QUAF' ;
  527. BAS = CHAN BAS 'QUAF' ;
  528. SORTIE = CHAN SORTIE 'QUAF' ;
  529. HAUT = CHAN HAUT 'QUAF' ;
  530.  
  531. ELIM (DOM ET ENTREE ET BAS ET SORTIE ET HAUT) SMALL ;
  532.  
  533.  
  534. * Création des modèles Navier-Stokes
  535. * ==================================
  536. $DOM = MODE DOM 'NAVIER_STOKES' DISCR ;
  537. $ENTREE = MODE ENTREE 'NAVIER_STOKES' DISCR ;
  538. $BAS = MODE BAS 'NAVIER_STOKES' DISCR ;
  539. $SORTIE = MODE SORTIE 'NAVIER_STOKES' DISCR ;
  540. $HAUT = MODE HAUT 'NAVIER_STOKES' DISCR ;
  541. $PAROIS = $BAS ET $HAUT ;
  542.  
  543.  
  544. * Récupération du maillage d'éléments du type défini par DISCR
  545. * ============================================================
  546. DOM = DOMA $DOM 'MAILLAGE' ;
  547. ENTREE = COUL 'VERT' (DOMA $ENTREE 'MAILLAGE') ;
  548. BAS = COUL 'ORAN' (DOMA $BAS 'MAILLAGE') ;
  549. SORTIE = COUL 'ROUG' (DOMA $SORTIE 'MAILLAGE') ;
  550. HAUT = COUL 'ORAN' (DOMA $HAUT 'MAILLAGE') ;
  551. PAROIS = COUL 'ORAN' (DOMA $PAROIS 'MAILLAGE') ;
  552.  
  553.  
  554.  
  555.  
  556. * +===================================================================+
  557. * | DIMENSIONS ET COORDONNÉES |
  558. * +===================================================================+
  559.  
  560.  
  561. * Champs de coordonnées
  562. * =====================
  563. XX = COOR 1 DOM ;
  564. YY = COOR 2 DOM ;
  565.  
  566.  
  567. * Champ de distance à la paroi
  568. * ============================
  569. DPAROI = HH - (ABS YY) ;
  570. DPAROI = BORN DPAROI 'SCAL' 'MINIMUM' 0. ;
  571.  
  572.  
  573. * Nombre et position des noeuds
  574. * =============================
  575. NXN = NBNO BAS ;
  576. NYN = NBNO ENTREE ;
  577.  
  578. LXXN = EXTR (EVOL 'CHPO' XX BAS) 'ABSC' ;
  579. DXN = LX / (NXN-1) ;
  580.  
  581. LYYN = EXTR (EVOL 'CHPO' YY ENTREE) 'ABSC' ;
  582. LDYN = (ENLE LYYN 1) - (ENLE LYYN NYN) ;
  583. DYNMIN = MINI LDYN 'ABS' ;
  584. DYNMAX = MAXI LDYN 'ABS' ;
  585.  
  586.  
  587. * Nombre et position des éléments
  588. * ===============================
  589. NXE = NBEL BAS ;
  590. NYE = NBEL ENTREE ;
  591.  
  592. LXXE = EXTR LXXN (LECT 1 'PAS' (ENTI NDISCR) NXN) ;
  593. DXE = LX / NXE ;
  594.  
  595. LYYE = EXTR LYYN (LECT 1 'PAS' (ENTI NDISCR) NYN) ;
  596. LDYE = (ENLE LYYE 1) - (ENLE LYYE (NYE+1)) ;
  597. DYEMIN = MINI LDYE 'ABS' ;
  598. DYEMAX = MAXI LDYE 'ABS' ;
  599.  
  600.  
  601.  
  602.  
  603. * +===================================================================+
  604. * | MAILLAGES DÉRIVÉS |
  605. * +===================================================================+
  606.  
  607.  
  608. * Maillages utiles pour les conditions aux limites
  609. * ================================================
  610. _DOM = CONT DOM ;
  611. DOM1 = CHAN DOM 'POI1' ;
  612. _DOM1 = CHAN _DOM 'POI1' ;
  613. @DOM1 = DIFF DOM1 _DOM1 ;
  614.  
  615. ENTREE1 = CHAN ENTREE 'POI1' ;
  616. BAS1 = CHAN BAS 'POI1' ;
  617. SORTIE1 = ENTREE1 PLUS (LX 0.) ;
  618. HAUT1 = BAS1 PLUS (0. LY) ;
  619. ELIM (_DOM1 ET SORTIE1 ET HAUT1) SMALL ;
  620. PAROIS1 = BAS1 ET HAUT1 ;
  621.  
  622. @ENTREE1 = DIFF ENTREE1 (PT1 ET PT2) ;
  623. @BAS1 = DIFF BAS1 (PT2 ET PT3) ;
  624. @SORTIE1 = DIFF SORTIE1 (PT3 ET PT4) ;
  625. @HAUT1 = DIFF HAUT1 (PT4 ET PT1) ;
  626.  
  627.  
  628. * Maillages de post-traitement et de visualisation
  629. * ================================================
  630. DOUBLONS = DOM ;
  631.  
  632. * Lignes horizontales de 0 à (NYN-1)
  633. SGX = TABL ;
  634. SGX . 0 = $BAS ;
  635. REPE I1 (NYN-2) ;
  636. SGX . &I1 = $BAS PLUS (0. (EXTR LYYN (&I1 + 1))) ;
  637. DOUBLONS = DOUBLONS ET (DOMA SGX . &I1 'MAILLAGE') ;
  638. FIN I1 ;
  639. SGX . (NYN - 1) = $HAUT ;
  640.  
  641. * Lignes verticales de 0 à (NXN-1)
  642. SGY = TABL ;
  643. SGY . 0 = $ENTREE ;
  644. REPE I1 (NXN-2) ;
  645. SGY . &I1 = $ENTREE PLUS ((DXN 0.)*&I1) ;
  646. DOUBLONS = DOUBLONS ET (DOMA SGY . &I1 'MAILLAGE') ;
  647. FIN I1 ;
  648. SGY . (NXN - 1) = $SORTIE ;
  649.  
  650. ELIM DOUBLONS SMALL ;
  651.  
  652.  
  653. * Nommage de quelques lignes particulières
  654. IX1 = ENTI ((NYN - 1) * 0.5) ;
  655. SGX1 = COUL 'ROSE' (DOMA (SGX . IX1) 'MAILLAGE') ;
  656.  
  657. IY1 = ENTI ((NXN - 1) * 0.5) ;
  658. SGY1 = COUL 'ROSE' (DOMA (SGY . IY1) 'MAILLAGE') ;
  659. SGY1B = ELEM SGY1 (LECT 1 'PAS' 1 'NPAS' ((NYE/2) - 1)) ;
  660. SGY1H = ELEM SGY1 (LECT NYE 'PAS' -1 'NPAS' ((NYE/2) - 1)) ;
  661.  
  662.  
  663.  
  664.  
  665. * +===================================================================+
  666. * | AFFICHAGE GRAPHIQUE |
  667. * +===================================================================+
  668.  
  669. ALLONG = (DOMA $DOM 'DIAMAX') * (INVE (DOMA $DOM 'DIAMIN')) ;
  670. ALLONG = ELNO $DOM ALLONG 'CENTRE' ;
  671.  
  672. MESS (CHAI 'Distance du premier point à la paroi: ' DYNMIN ' m') ;
  673.  
  674. SI (GRAPH) ;
  675.  
  676. TRAC (DOM ET ENTREE ET BAS ET SORTIE ET HAUT ET SGX1 ET SGY1)
  677. 'TITR' 'Maillage complet' ;
  678.  
  679. TRAC ALLONG DOM
  680. 'TITR' 'Facteur d allongement' ;
  681.  
  682. FINS ;
  683.  
  684.  
  685.  
  686.  
  687.  
  688.  
  689.  
  690.  
  691.  
  692.  
  693. * +===================================================================+
  694. * | |
  695. * | 3 - R É S O L U T I O N D U P R O B L È M E |
  696. * | |
  697. * +===================================================================+
  698.  
  699.  
  700.  
  701.  
  702. * +===================================================================+
  703. * | PARAMÈTRES DE L'ÉCOULEMENT ET DU SOLVEUR |
  704. * +===================================================================+
  705.  
  706.  
  707. * GRANDEURS PHYSIQUES
  708. * ===================
  709. * DPDX0 : Gradient de pression longitudinal
  710. * RHO : Masse volumique
  711. * NU : Viscosité cinématique moléculaire
  712. * MU : Viscosité dynamique moléculaire
  713. DPDX0 = -1. ;
  714. RHO = 1. ;
  715. NU = 1. / RETAU0 ;
  716. MU = NU * RHO ;
  717.  
  718.  
  719. * SCHÉMA NUMÉRIQUE
  720. * ================
  721. * CVISQ : Formulation des contraintes visqueuses ('FTAU' ou 'MUCONS')
  722. CVISQ = 'MUCONS' ;
  723.  
  724. * DT : Valeur du pas de temps (constant au cours du calcul)
  725. * NPDT : Nombre de pas de temps calculés au total
  726. * NSAU : Nombre de pas de temps entre 2 sauvegardes intermédiaires
  727. SI (COMPLET) ;
  728. DT = 1.E-3 ;
  729. NPDT = 50000 ;
  730. NSAU = 5000 ;
  731. SINON ;
  732. * /!\ la CFL est trop élevée, mais de toutes façons on n'aura rien
  733. * dans le faible temps imparti pour le test de non-regression
  734. * => PAS DE VALIDATION POSSIBLE
  735. DT = 1.E-1 ;
  736. NPDT = 100 ;
  737. NSAU = 100 ;
  738. FINS ;
  739.  
  740.  
  741.  
  742.  
  743. * +===================================================================+
  744. * | DISCRÉTISATION DES ÉQUATIONS DE REYNOLDS (= NAVIER-STOKES MOYEN) |
  745. * +===================================================================+
  746.  
  747.  
  748. * ÉQUATIONS DE CONSERVATION DE LA QUANTITÉ DE MOUVEMENT
  749. * =====================================================
  750. * SPAL = Calcul de la viscosité turbulente
  751. * NS = Discrétisation du terme convectif et du terme diffusif
  752. * DFDT = Discrétisation du terme instationnaire
  753.  
  754. RV = EQEX 'OPTI' 'EF' 'IMPL' DCENTR 'CMD' KCMD KPRES CVISQ
  755. 'ZONE' $DOM 'OPER' 'SPAL' 'RHO' 'UN' 'MU' 'DT'
  756. * 'PERIODIC' @ENTREE1 @SORTIE1
  757. 'INCO' 'NU0'
  758. 'ZONE' $DOM 'OPER' 'NS' 'RHO' 'UN' 'MUFN' 'INCO' 'UN'
  759. 'OPTI' 'EFM1' 'IMPL' 'CENTREE'
  760. 'ZONE' $DOM 'OPER' 'DFDT' 'RHO' 'UNM' 'DT' 'INCO' 'UN'
  761. ;
  762.  
  763. * Paramètres avancés du modèle de Spalart-Allmaras
  764. RV . 'SPALART_ALLMARAS' = TABL ;
  765. RV . 'SPALART_ALLMARAS' . 'KSRC' = 'ALGO1' ;
  766. RV . 'SPALART_ALLMARAS' . 'DUMP' = VRAI ;
  767.  
  768. RV . 'PAROIS' = TABL ;
  769. RV . 'PAROIS' . 'MODELE' = $PAROIS ;
  770. RV . 'PAROIS' . 'DIST' = DPAROI ;
  771.  
  772. * Paramètres du solveur pour la vitesse
  773. RV . 'NITER' = 1 ;
  774. RV . 'OMEGA' = 1. ;
  775. RV . 'FIDT' = 1 ;
  776. RV . 'METHINV' . 'TYPINV' = 1 ;
  777. RV . 'METHINV' . 'IMPINV' = 0 ;
  778. RV . 'METHINV' . 'NITMAX' = 700 ;
  779. RV . 'METHINV' . 'PRECOND' = 3 ;
  780. RV . 'METHINV' . 'ILUTLFIL' = 4 ;
  781. RV . 'METHINV' . 'ILUTDTOL' = 0. ;
  782. RV . 'METHINV' . 'RESID' = 1.E-9 ;
  783. RV . 'METHINV' . 'FCPRECT' = 1 ;
  784. RV . 'METHINV' . 'FCPRECI' = 1 ;
  785.  
  786.  
  787. * ÉQUATION DE CONSERVATION DE LA MASSE
  788. * ====================================
  789. * KBBT = Discrétisation de Div(U)=0 et du gradient de pression
  790.  
  791. RVP = 'EQEX' 'OPTI' 'EF' KPRES
  792. 'ZONE' $DOM 'OPER' 'KBBT' (-1.) 'INCO' 'UN' 'PN'
  793. ;
  794.  
  795. * Paramètres du solveur pour la pression
  796. RVP . 'METHINV' . 'TYPINV' = 1 ;
  797. RVP . 'METHINV' . 'IMPINV' = 0 ;
  798. RVP . 'METHINV' . 'NITMAX' = 800 ;
  799. RVP . 'METHINV' . 'PRECOND' = 3 ;
  800. RVP . 'METHINV' . 'ILUTLFIL' = 10 ;
  801. RVP . 'METHINV' . 'ILUTDTOL' = 0. ;
  802. RVP . 'METHINV' . 'RESID' = 1.E-10 ;
  803. RVP . 'METHINV' . 'FCPRECT' = 1 ;
  804. RVP . 'METHINV' . 'FCPRECI' = 1 ;
  805.  
  806. * Traitement du couplage vitesse-pression par projection
  807. RV . 'PROJ' = RVP ;
  808.  
  809.  
  810.  
  811.  
  812. * +===================================================================+
  813. * | DÉFINITION DES CONDITIONS INITIALES |
  814. * +===================================================================+
  815.  
  816. UN0 = KCHT $DOM 'VECT' 'SOMMET' 'COMP' '1UN' '2UN' (0. 0.) ;
  817. UN0 = CHAN UN0 'ATTRIBUT' 'NATURE' 'DISCRET' ;
  818.  
  819. MUN0 = KCHT $DOM 'SCAL' 'SOMMET' MU ;
  820. MUN0 = CHAN MUN0 'ATTRIBUT' 'NATURE' 'DISCRET' ;
  821.  
  822. MUTN0 = KCHT $DOM 'SCAL' 'SOMMET' 0. ;
  823. MUTN0 = CHAN MUTN0 'ATTRIBUT' 'NATURE' 'DISCRET' ;
  824.  
  825. PN0 = KCHT $DOM 'SCAL' KPRES 0. ;
  826. PN0 = CHAN PN0 'ATTRIBUT' 'NATURE' 'DISCRET' ;
  827.  
  828.  
  829. * Création de la table d'inconnues
  830. RV . 'INCO' = TABL 'INCO' ;
  831. RV . 'INCO' . 'UN' = UN0 ;
  832. RV . 'INCO' . 'UNM' = UN0 ;
  833. RV . 'INCO' . 'PN' = PN0 ;
  834. RV . 'INCO' . 'RHO' = RHO ;
  835. RV . 'INCO' . 'MU' = MU ;
  836. RV . 'INCO' . 'NU0' = MUTN0 ;
  837. RV . 'INCO' . 'MUFN' = (MUN0+MUTN0) ;
  838. RV . 'INCO' . 'DT' = DT ;
  839.  
  840.  
  841.  
  842.  
  843. * +===================================================================+
  844. * | DÉFINITION DES CONDITIONS AUX LIMITES |
  845. * +===================================================================+
  846.  
  847.  
  848. * CONDITIONS LIMITES AUX PAROIS
  849. * =============================
  850.  
  851. * Conditions d'adhérence + turbulence nulle à la paroi
  852. RV = EQEX RV 'CLIM'
  853. 'UN' 'UIMP' PAROIS 0.
  854. 'UN' 'VIMP' PAROIS 0.
  855. 'NU0' 'TIMP' PAROIS 0.
  856. ;
  857.  
  858.  
  859. * CONDITIONS LIMITES EN ENTRÉE/SORTIE DE CANAL
  860. * ============================================
  861.  
  862. * Périodicité sur les 2 composantes de la vitesse
  863. RV = EQEX RV 'ZONE' $DOM 'OPER' 'PCLIM' @ENTREE1 @SORTIE1 'INCO' 'UN' ;
  864.  
  865.  
  866. * La formulation faible intrinsèque à notre résolution par éléments
  867. * finis ne permet pas d'imposer directement la pression.
  868. * On impose alors la contrainte totale (pression + cisaillement) dans
  869. * l'équation de quantité de mouvement. Deux possibilités pour spécifier
  870. * la perte de charge:
  871. * a) on impose la "pression" en entrée du domaine
  872. * b) on impose le "gradient de pression" sur tout le domaine
  873. RV = EQEX RV 'OPTI' 'EF'
  874. 'ZONE' $ENTREE 'OPER' 'FIMPV' ((ABS (DPDX0*LX)) 0.) 'INCO' 'UN'
  875. * 'ZONE' $DOM 'OPER' 'FIMPV' ((ABS DPDX0) 0.) 'INCO' 'UN'
  876. ;
  877.  
  878.  
  879.  
  880.  
  881. * +===================================================================+
  882. * | EXÉCUTION DU CALCUL |
  883. * +===================================================================+
  884.  
  885.  
  886. SI (NOUVEAU) ;
  887.  
  888. LPDT = (LECT (ENTI (NPDT/NSAU))*NSAU) ;
  889. SI (NON (MULT NPDT NSAU)) ;
  890. LPDT = LPDT ET (@MOD NPDT NSAU) ;
  891. FINS ;
  892.  
  893. REPE ISAU (DIME LPDT) ;
  894. RV . 'ITMA' = EXTR LPDT &ISAU ;
  895. EXEC RV ;
  896. OPTI 'SAUV' 'SPAL_CANALPERIOD.XDR' ;
  897. SAUV ;
  898. FIN ISAU ;
  899.  
  900.  
  901.  
  902.  
  903.  
  904.  
  905.  
  906.  
  907.  
  908.  
  909. * +===================================================================+
  910. * | |
  911. * | 4 - P O S T - T R A I T E M E N T D E S R É S U L T A T S |
  912. * | |
  913. * +===================================================================+
  914.  
  915.  
  916.  
  917.  
  918. SINON ;
  919.  
  920. GRAPH0 = GRAPH ;
  921.  
  922. OPTI 'REST' 'SPAL_CANALPERIOD.XDR' ;
  923. REST ;
  924.  
  925. GRAPH = GRAPH0 ;
  926.  
  927. FINS ;
  928.  
  929.  
  930.  
  931.  
  932. * +===================================================================+
  933. * | RÉCUPÉRATION ET CALCUL DES GRANDEURS UTILES |
  934. * +===================================================================+
  935.  
  936. DGE = DOMA $ENTREE 'XXDIAGSI' ;
  937. DGS = DOMA $SORTIE 'XXDIAGSI' ;
  938. DGB = DOMA $BAS 'XXDIAGSI' ;
  939. DGH = DOMA $HAUT 'XXDIAGSI' ;
  940.  
  941. * Masse volumique
  942. RHO = RV . 'INCO' . 'RHO' ;
  943. SI (EGA (TYPE RHO) 'CHPOINT') ;
  944. USRHO = INVE RHO ;
  945. SINON ;
  946. USRHO = 1. / RHO ;
  947. FINS ;
  948.  
  949. * Viscosités
  950. MU = RV . 'INCO' . 'MU' ;
  951. NU = MU * USRHO ;
  952. MUF = RV . 'INCO' . 'MUFN' ;
  953. MUT = MUF - MU ;
  954. NU0 = RV . 'INCO' . 'NU0' ;
  955.  
  956. * Vitesse
  957. UN = RV . 'INCO' . 'UN' ;
  958. LCO = EXTR UN 'COMP' ;
  959. UNX = EXCO UN (EXTR LCO 1) ;
  960. UNY = EXCO UN (EXTR LCO 2) ;
  961.  
  962. * Vitesse débitante
  963. UQ = ((INTG (EVOL 'CHPO' UNX ENTREE))) / LY ;
  964.  
  965. * Gradients de vitesse
  966. GRADUX = KOPS UNX 'GRADS' $DOM ;
  967. GRADUY = KOPS UNY 'GRADS' $DOM ;
  968. DUDX = EXCO GRADUX 'UX' ;
  969. DUDY = EXCO GRADUX 'UY' ;
  970. DVDX = EXCO GRADUY 'UX' ;
  971. DVDY = EXCO GRADUY 'UY' ;
  972.  
  973. * Cisaillement
  974. TAU = ABS (MU * (DUDY+DVDX)) ;
  975. TAUT = ABS (MUT * (DUDY+DVDX)) ;
  976. TAUF = ABS (MUF * (DUDY+DVDX)) ;
  977.  
  978. * Vitesse et coefficient de frottement
  979. TWH = (MAXI (RESU (TAU*DGH)) 'ABS') / (MAXI (RESU DGH)) ;
  980. TWB = (MAXI (RESU (TAU*DGB)) 'ABS') / (MAXI (RESU DGB)) ;
  981. TW = 0.5 * (TWB + TWH) ;
  982. UTAU = (TW / RHO) ** 0.5 ;
  983. FF = 8. * ((UTAU/UQ) ** 2) ;
  984.  
  985. * Nombres de Reynolds
  986. RE = UQ * HH / NU ;
  987. RETAU = UTAU * HH / NU ;
  988. LNU = NU / UTAU ;
  989. YPMIN = DYNMIN / LNU ;
  990.  
  991. * Pression (relative) projetée aux noeuds
  992. PN = ELNO $DOM (RV . 'INCO' . 'PRESSION') KPRES ;
  993.  
  994. * Gradient de pression
  995. PNE = (MAXI (RESU (PN*DGE))) / (MAXI (RESU DGE)) ;
  996. PNS = (MAXI (RESU (PN*DGS))) / (MAXI (RESU DGS)) ;
  997. DPDX = (PNS - PNE) / LX ;
  998.  
  999.  
  1000.  
  1001.  
  1002. * +===================================================================+
  1003. * | RÉSULTATS DNS DE MANSOUR (RETAU=590) |
  1004. * +===================================================================+
  1005. * Source: Moser, Kim, Mansour, Direct numerical simulation of turbulent
  1006. * channel flow up to Re=590, Phys. Fluids, 11(4):943, 1999
  1007.  
  1008. * Ordonnées Y normalisées par HH
  1009. LYDNS = PROG 0.0000E+00 7.5298E-05 3.0118E-04 6.7762E-04 1.2045E-03
  1010. 1.8819E-03 2.7095E-03 3.6874E-03 4.8153E-03 6.0930E-03
  1011. 7.5205E-03 9.0974E-03 1.0823E-02 1.2699E-02 1.4722E-02
  1012. 1.6895E-02 1.9215E-02 2.1683E-02 2.4298E-02 2.7060E-02
  1013. 2.9969E-02 3.3024E-02 3.6224E-02 3.9569E-02 4.3060E-02
  1014. 4.6694E-02 5.0472E-02 5.4393E-02 5.8456E-02 6.2661E-02
  1015. 6.7007E-02 7.1494E-02 7.6120E-02 8.0886E-02 8.5790E-02
  1016. 9.0832E-02 9.6011E-02 1.0133E-01 1.0678E-01 1.1236E-01 ;
  1017. LYDNS = LYDNS ET (PROG 1.1808E-01 1.2393E-01 1.2991E-01 1.3603E-01
  1018. 1.4227E-01 1.4864E-01 1.5515E-01 1.6178E-01 1.6853E-01
  1019. 1.7541E-01 1.8242E-01 1.8954E-01 1.9679E-01 2.0416E-01
  1020. 2.1165E-01 2.1926E-01 2.2699E-01 2.3483E-01 2.4279E-01
  1021. 2.5086E-01 2.5905E-01 2.6735E-01 2.7575E-01 2.8427E-01
  1022. 2.9289E-01 3.0162E-01 3.1046E-01 3.1940E-01 3.2844E-01
  1023. 3.3758E-01 3.4683E-01 3.5617E-01 3.6561E-01 3.7514E-01
  1024. 3.8477E-01 3.9449E-01 4.0430E-01 4.1420E-01 4.2419E-01) ;
  1025. LYDNS = LYDNS ET (PROG 4.3427E-01 4.4443E-01 4.5467E-01 4.6500E-01
  1026. 4.7541E-01 4.8590E-01 4.9646E-01 5.0710E-01 5.1782E-01
  1027. 5.2860E-01 5.3946E-01 5.5039E-01 5.6138E-01 5.7244E-01
  1028. 5.8357E-01 5.9476E-01 6.0601E-01 6.1732E-01 6.2868E-01
  1029. 6.4010E-01 6.5158E-01 6.6311E-01 6.7469E-01 6.8632E-01
  1030. 6.9799E-01 7.0972E-01 7.2148E-01 7.3329E-01 7.4513E-01
  1031. 7.5702E-01 7.6894E-01 7.8090E-01 7.9289E-01 8.0491E-01
  1032. 8.1696E-01 8.2904E-01 8.4114E-01 8.5327E-01 8.6542E-01) ;
  1033. LYDNS = LYDNS ET (PROG 8.7759E-01 8.8978E-01 9.0198E-01 9.1420E-01
  1034. 9.2644E-01 9.3868E-01 9.5093E-01 9.6319E-01 9.7546E-01
  1035. 9.8773E-01 1.0000E+00) ;
  1036.  
  1037. * Ordonnées Y+ en unités de paroi (= RETAU au centre du canal)
  1038. LYPDNS = PROG 0.0000E+00 4.4215E-02 1.7685E-01 3.9789E-01 7.0730E-01
  1039. 1.1050E+00 1.5910E+00 2.1652E+00 2.8275E+00 3.5778E+00
  1040. 4.4160E+00 5.3419E+00 6.3555E+00 7.4565E+00 8.6449E+00
  1041. 9.9204E+00 1.1283E+01 1.2732E+01 1.4268E+01 1.5890E+01
  1042. 1.7597E+01 1.9391E+01 2.1270E+01 2.3235E+01 2.5284E+01
  1043. 2.7418E+01 2.9637E+01 3.1939E+01 3.4325E+01 3.6794E+01
  1044. 3.9346E+01 4.1981E+01 4.4698E+01 4.7496E+01 5.0376E+01
  1045. 5.3336E+01 5.6377E+01 5.9498E+01 6.2698E+01 6.5977E+01 ;
  1046. LYPDNS = LYPDNS ET (PROG 6.9335E+01 7.2771E+01 7.6284E+01 7.9874E+01
  1047. 8.3541E+01 8.7283E+01 9.1101E+01 9.4994E+01 9.8960E+01
  1048. 1.0300E+02 1.0711E+02 1.1130E+02 1.1556E+02 1.1988E+02
  1049. 1.2428E+02 1.2875E+02 1.3329E+02 1.3789E+02 1.4257E+02
  1050. 1.4731E+02 1.5211E+02 1.5698E+02 1.6192E+02 1.6692E+02
  1051. 1.7199E+02 1.7711E+02 1.8230E+02 1.8755E+02 1.9286E+02
  1052. 1.9823E+02 2.0365E+02 2.0914E+02 2.1468E+02 2.2028E+02
  1053. 2.2593E+02 2.3164E+02 2.3740E+02 2.4322E+02 2.4908E+02) ;
  1054. LYPDNS = LYPDNS ET (PROG 2.5500E+02 2.6097E+02 2.6698E+02 2.7305E+02
  1055. 2.7916E+02 2.8532E+02 2.9152E+02 2.9777E+02 3.0406E+02
  1056. 3.1039E+02 3.1677E+02 3.2319E+02 3.2964E+02 3.3614E+02
  1057. 3.4267E+02 3.4924E+02 3.5584E+02 3.6248E+02 3.6916E+02
  1058. 3.7587E+02 3.8260E+02 3.8937E+02 3.9617E+02 4.0300E+02
  1059. 4.0986E+02 4.1674E+02 4.2365E+02 4.3058E+02 4.3754E+02
  1060. 4.4452E+02 4.5152E+02 4.5854E+02 4.6558E+02 4.7264E+02
  1061. 4.7971E+02 4.8681E+02 4.9391E+02 5.0104E+02 5.0817E+02) ;
  1062. LYPDNS = LYPDNS ET (PROG 5.1532E+02 5.2247E+02 5.2964E+02 5.3681E+02
  1063. 5.4400E+02 5.5119E+02 5.5838E+02 5.6558E+02 5.7278E+02
  1064. 5.7999E+02 5.8719E+02) ;
  1065.  
  1066. * Vitesse axiale moyenne U
  1067. LUDNS = PROG 0.0000E+00 4.4231E-02 1.7699E-01 3.9816E-01 7.0750E-01
  1068. 1.1046E+00 1.5886E+00 2.1573E+00 2.8061E+00 3.5272E+00
  1069. 4.3078E+00 5.1307E+00 5.9748E+00 6.8174E+00 7.6375E+00
  1070. 8.4177E+00 9.1455E+00 9.8142E+00 1.0421E+01 1.0968E+01
  1071. 1.1458E+01 1.1895E+01 1.2287E+01 1.2636E+01 1.2950E+01
  1072. 1.3233E+01 1.3489E+01 1.3722E+01 1.3935E+01 1.4131E+01
  1073. 1.4313E+01 1.4482E+01 1.4640E+01 1.4789E+01 1.4931E+01
  1074. 1.5066E+01 1.5196E+01 1.5321E+01 1.5442E+01 1.5560E+01 ;
  1075. LUDNS = LUDNS ET (PROG 1.5674E+01 1.5786E+01 1.5896E+01 1.6003E+01
  1076. 1.6110E+01 1.6214E+01 1.6317E+01 1.6418E+01 1.6518E+01
  1077. 1.6616E+01 1.6713E+01 1.6808E+01 1.6902E+01 1.6995E+01
  1078. 1.7087E+01 1.7179E+01 1.7269E+01 1.7358E+01 1.7446E+01
  1079. 1.7533E+01 1.7620E+01 1.7705E+01 1.7789E+01 1.7873E+01
  1080. 1.7956E+01 1.8038E+01 1.8120E+01 1.8202E+01 1.8282E+01
  1081. 1.8362E+01 1.8441E+01 1.8520E+01 1.8598E+01 1.8676E+01
  1082. 1.8754E+01 1.8831E+01 1.8907E+01 1.8982E+01 1.9056E+01) ;
  1083. LUDNS = LUDNS ET (PROG 1.9128E+01 1.9199E+01 1.9269E+01 1.9338E+01
  1084. 1.9406E+01 1.9473E+01 1.9539E+01 1.9604E+01 1.9668E+01
  1085. 1.9731E+01 1.9794E+01 1.9855E+01 1.9916E+01 1.9976E+01
  1086. 2.0035E+01 2.0093E+01 2.0149E+01 2.0204E+01 2.0258E+01
  1087. 2.0311E+01 2.0364E+01 2.0415E+01 2.0464E+01 2.0513E+01
  1088. 2.0561E+01 2.0608E+01 2.0653E+01 2.0698E+01 2.0741E+01
  1089. 2.0784E+01 2.0826E+01 2.0866E+01 2.0905E+01 2.0943E+01
  1090. 2.0979E+01 2.1013E+01 2.1046E+01 2.1076E+01 2.1105E+01) ;
  1091. LUDNS = LUDNS ET (PROG 2.1131E+01 2.1156E+01 2.1178E+01 2.1198E+01
  1092. 2.1215E+01 2.1230E+01 2.1242E+01 2.1251E+01 2.1258E+01
  1093. 2.1262E+01 2.1263E+01) ;
  1094.  
  1095. * Gradient de vitesse moyenne dU/dY (= RETAU à la paroi)
  1096. LGUDNS = PROG 5.8719E+02 5.8759E+02 5.8775E+02 5.8731E+02 5.8680E+02
  1097. 5.8576E+02 5.8355E+02 5.7910E+02 5.7084E+02 5.5697E+02
  1098. 5.3592E+02 5.0692E+02 4.7043E+02 4.2814E+02 3.8256E+02
  1099. 3.3639E+02 2.9197E+02 2.5099E+02 2.1439E+02 1.8251E+02
  1100. 1.5524E+02 1.3220E+02 1.1290E+02 9.6852E+01 8.3550E+01
  1101. 7.2521E+01 6.3356E+01 5.5728E+01 4.9373E+01 4.4063E+01
  1102. 3.9600E+01 3.5840E+01 3.2683E+01 3.0044E+01 2.7816E+01
  1103. 2.5914E+01 2.4280E+01 2.2860E+01 2.1608E+01 2.0505E+01 ;
  1104. LGUDNS = LGUDNS ET (PROG 1.9544E+01 1.8707E+01 1.7965E+01 1.7301E+01
  1105. 1.6687E+01 1.6107E+01 1.5545E+01 1.5005E+01 1.4504E+01
  1106. 1.4032E+01 1.3589E+01 1.3175E+01 1.2800E+01 1.2465E+01
  1107. 1.2147E+01 1.1822E+01 1.1505E+01 1.1214E+01 1.0944E+01
  1108. 1.0680E+01 1.0416E+01 1.0166E+01 9.9349E+00 9.7201E+00
  1109. 9.5271E+00 9.3516E+00 9.1735E+00 8.9930E+00 8.8148E+00
  1110. 8.6554E+00 8.5138E+00 8.3741E+00 8.2414E+00 8.1262E+00
  1111. 8.0025E+00 7.8551E+00 7.6768E+00 7.4741E+00 7.2710E+00) ;
  1112. LGUDNS = LGUDNS ET (PROG 7.0807E+00 6.9011E+00 6.7289E+00 6.5779E+00
  1113. 6.4458E+00 6.3147E+00 6.1881E+00 6.0620E+00 5.9320E+00
  1114. 5.8032E+00 5.6845E+00 5.5823E+00 5.4790E+00 5.3556E+00
  1115. 5.2217E+00 5.0905E+00 4.9542E+00 4.8197E+00 4.6972E+00
  1116. 4.5908E+00 4.4850E+00 4.3668E+00 4.2558E+00 4.1497E+00
  1117. 4.0388E+00 3.9263E+00 3.8183E+00 3.7190E+00 3.6330E+00
  1118. 3.5440E+00 3.4420E+00 3.3320E+00 3.2089E+00 3.0654E+00
  1119. 2.9118E+00 2.7553E+00 2.5963E+00 2.4375E+00 2.2694E+00) ;
  1120. LGUDNS = LGUDNS ET (PROG 2.0922E+00 1.9089E+00 1.7142E+00 1.5088E+00
  1121. 1.3002E+00 1.0914E+00 8.7875E-01 6.6171E-01 4.3943E-01
  1122. 2.1672E-01 0.0000E+00) ;
  1123.  
  1124. * Pression moyenne P
  1125. LPDNS = PROG 1.1583E-10 -4.0231E-10 -1.2880E-07 -3.0912E-06
  1126. -2.8168E-05 -1.4945E-04 -5.5903E-04 -1.6342E-03
  1127. -3.9750E-03 -8.3871E-03 -1.5808E-02 -2.7201E-02
  1128. -4.3448E-02 -6.5262E-02 -9.3127E-02 -1.2725E-01
  1129. -1.6754E-01 -2.1357E-01 -2.6463E-01 -3.1974E-01
  1130. -3.7777E-01 -4.3752E-01 -4.9778E-01 -5.5747E-01
  1131. -6.1556E-01 -6.7122E-01 -7.2379E-01 -7.7281E-01
  1132. -8.1799E-01 -8.5912E-01 -8.9612E-01 -9.2900E-01 ;
  1133. LPDNS = LPDNS ET (PROG -9.5791E-01 -9.8303E-01 -1.0046E+00
  1134. -1.0228E+00 -1.0380E+00 -1.0503E+00 -1.0599E+00
  1135. -1.0671E+00 -1.0722E+00 -1.0755E+00 -1.0773E+00
  1136. -1.0778E+00 -1.0769E+00 -1.0747E+00 -1.0715E+00
  1137. -1.0673E+00 -1.0625E+00 -1.0569E+00 -1.0509E+00
  1138. -1.0445E+00 -1.0378E+00 -1.0311E+00 -1.0243E+00
  1139. -1.0172E+00 -1.0098E+00 -1.0020E+00 -9.9380E-01
  1140. -9.8541E-01 -9.7686E-01 -9.6818E-01 -9.5935E-01) ;
  1141. LPDNS = LPDNS ET (PROG -9.5045E-01 -9.4154E-01 -9.3260E-01
  1142. -9.2361E-01 -9.1455E-01 -9.0542E-01 -8.9626E-01
  1143. -8.8706E-01 -8.7781E-01 -8.6856E-01 -8.5929E-01
  1144. -8.4986E-01 -8.4010E-01 -8.2986E-01 -8.1922E-01
  1145. -8.0835E-01 -7.9730E-01 -7.8603E-01 -7.7461E-01
  1146. -7.6309E-01 -7.5145E-01 -7.3967E-01 -7.2780E-01
  1147. -7.1585E-01 -7.0381E-01 -6.9174E-01 -6.7973E-01
  1148. -6.6781E-01 -6.5600E-01 -6.4434E-01 -6.3286E-01) ;
  1149. LPDNS = LPDNS ET (PROG -6.2160E-01 -6.1057E-01 -5.9982E-01
  1150. -5.8939E-01 -5.7929E-01 -5.6945E-01 -5.5978E-01
  1151. -5.5026E-01 -5.4089E-01 -5.3164E-01 -5.2247E-01
  1152. -5.1334E-01 -5.0428E-01 -4.9532E-01 -4.8647E-01
  1153. -4.7774E-01 -4.6920E-01 -4.6088E-01 -4.5284E-01
  1154. -4.4512E-01 -4.3774E-01 -4.3077E-01 -4.2426E-01
  1155. -4.1823E-01 -4.1272E-01 -4.0778E-01 -4.0351E-01
  1156. -3.9995E-01 -3.9704E-01 -3.9472E-01 -3.9298E-01) ;
  1157. LPDNS = LPDNS ET (PROG -3.9179E-01 -3.9107E-01 -3.9069E-01
  1158. -3.9056E-01) ;
  1159.  
  1160. * Composante R11 du tenseur de Reynolds, normalisée par UTAU²
  1161. LUUDNS = PROG 7.8003E-28 3.2061E-04 5.1136E-03 2.5785E-02 8.1096E-02
  1162. 1.9683E-01 4.0482E-01 7.3979E-01 1.2321E+00 1.8957E+00
  1163. 2.7157E+00 3.6428E+00 4.6014E+00 5.5079E+00 6.2915E+00
  1164. 6.9073E+00 7.3390E+00 7.5940E+00 7.6943E+00 7.6684E+00
  1165. 7.5456E+00 7.3529E+00 7.1132E+00 6.8448E+00 6.5619E+00
  1166. 6.2763E+00 5.9966E+00 5.7282E+00 5.4746E+00 5.2376E+00
  1167. 5.0183E+00 4.8166E+00 4.6318E+00 4.4625E+00 4.3076E+00
  1168. 4.1662E+00 4.0371E+00 3.9194E+00 3.8125E+00 3.7158E+00 ;
  1169. LUUDNS = LUUDNS ET (PROG 3.6283E+00 3.5486E+00 3.4753E+00 3.4071E+00
  1170. 3.3436E+00 3.2845E+00 3.2291E+00 3.1773E+00 3.1287E+00
  1171. 3.0832E+00 3.0407E+00 3.0008E+00 2.9626E+00 2.9255E+00
  1172. 2.8894E+00 2.8550E+00 2.8216E+00 2.7885E+00 2.7553E+00
  1173. 2.7218E+00 2.6885E+00 2.6554E+00 2.6223E+00 2.5893E+00
  1174. 2.5568E+00 2.5242E+00 2.4911E+00 2.4577E+00 2.4241E+00
  1175. 2.3902E+00 2.3562E+00 2.3222E+00 2.2877E+00 2.2519E+00
  1176. 2.2148E+00 2.1771E+00 2.1393E+00 2.1017E+00 2.0637E+00) ;
  1177. LUUDNS = LUUDNS ET (PROG 2.0252E+00 1.9861E+00 1.9463E+00 1.9062E+00
  1178. 1.8658E+00 1.8252E+00 1.7848E+00 1.7448E+00 1.7053E+00
  1179. 1.6661E+00 1.6269E+00 1.5874E+00 1.5480E+00 1.5094E+00
  1180. 1.4717E+00 1.4346E+00 1.3979E+00 1.3617E+00 1.3260E+00
  1181. 1.2908E+00 1.2561E+00 1.2224E+00 1.1895E+00 1.1573E+00
  1182. 1.1262E+00 1.0960E+00 1.0665E+00 1.0371E+00 1.0078E+00
  1183. 9.7860E-01 9.4963E-01 9.2092E-01 8.9268E-01 8.6521E-01
  1184. 8.3889E-01 8.1354E-01 7.8856E-01 7.6402E-01 7.4059E-01) ;
  1185. LUUDNS = LUUDNS ET (PROG 7.1880E-01 6.9869E-01 6.7994E-01 6.6252E-01
  1186. 6.4673E-01 6.3278E-01 6.2099E-01 6.1165E-01 6.0499E-01
  1187. 6.0112E-01 5.9990E-01) ;
  1188.  
  1189. * Composante R22 du tenseur de Reynolds, normalisée par UTAU²
  1190. LVVDNS = PROG 5.4179E-29 5.2474E-10 1.2894E-07 3.0913E-06 2.8168E-05
  1191. 1.4945E-04 5.5903E-04 1.6342E-03 3.9750E-03 8.3871E-03
  1192. 1.5808E-02 2.7201E-02 4.3448E-02 6.5262E-02 9.3127E-02
  1193. 1.2725E-01 1.6754E-01 2.1357E-01 2.6463E-01 3.1974E-01
  1194. 3.7777E-01 4.3752E-01 4.9778E-01 5.5747E-01 6.1556E-01
  1195. 6.7122E-01 7.2379E-01 7.7281E-01 8.1799E-01 8.5912E-01
  1196. 8.9612E-01 9.2900E-01 9.5791E-01 9.8303E-01 1.0046E+00
  1197. 1.0228E+00 1.0380E+00 1.0503E+00 1.0599E+00 1.0671E+00 ;
  1198. LVVDNS = LVVDNS ET (PROG 1.0722E+00 1.0755E+00 1.0773E+00 1.0778E+00
  1199. 1.0769E+00 1.0747E+00 1.0715E+00 1.0673E+00 1.0625E+00
  1200. 1.0569E+00 1.0509E+00 1.0445E+00 1.0378E+00 1.0311E+00
  1201. 1.0243E+00 1.0172E+00 1.0098E+00 1.0020E+00 9.9380E-01
  1202. 9.8541E-01 9.7687E-01 9.6818E-01 9.5936E-01 9.5045E-01
  1203. 9.4154E-01 9.3260E-01 9.2361E-01 9.1455E-01 9.0542E-01
  1204. 8.9626E-01 8.8706E-01 8.7782E-01 8.6856E-01 8.5929E-01
  1205. 8.4986E-01 8.4010E-01 8.2987E-01 8.1922E-01 8.0835E-01) ;
  1206. LVVDNS = LVVDNS ET (PROG 7.9730E-01 7.8604E-01 7.7461E-01 7.6309E-01
  1207. 7.5146E-01 7.3967E-01 7.2780E-01 7.1585E-01 7.0382E-01
  1208. 6.9174E-01 6.7973E-01 6.6782E-01 6.5601E-01 6.4434E-01
  1209. 6.3287E-01 6.2161E-01 6.1058E-01 5.9982E-01 5.8939E-01
  1210. 5.7929E-01 5.6945E-01 5.5978E-01 5.5026E-01 5.4089E-01
  1211. 5.3165E-01 5.2247E-01 5.1334E-01 5.0428E-01 4.9532E-01
  1212. 4.8647E-01 4.7775E-01 4.6920E-01 4.6088E-01 4.5284E-01
  1213. 4.4512E-01 4.3775E-01 4.3077E-01 4.2426E-01 4.1824E-01) ;
  1214. LVVDNS = LVVDNS ET (PROG 4.1272E-01 4.0778E-01 4.0351E-01 3.9995E-01
  1215. 3.9704E-01 3.9472E-01 3.9298E-01 3.9179E-01 3.9107E-01
  1216. 3.9069E-01 3.9056E-01) ;
  1217.  
  1218. * Composante R33 du tenseur de Reynolds, normalisée par UTAU²
  1219. LWWDNS = PROG 8.5292E-28 1.3126E-04 2.0297E-03 9.7381E-03 2.8591E-02
  1220. 6.3627E-02 1.1816E-01 1.9292E-01 2.8591E-01 3.9313E-01
  1221. 5.0967E-01 6.3093E-01 7.5333E-01 8.7449E-01 9.9290E-01
  1222. 1.1074E+00 1.2166E+00 1.3193E+00 1.4140E+00 1.4997E+00
  1223. 1.5758E+00 1.6421E+00 1.6986E+00 1.7460E+00 1.7850E+00
  1224. 1.8167E+00 1.8417E+00 1.8609E+00 1.8746E+00 1.8833E+00
  1225. 1.8874E+00 1.8873E+00 1.8837E+00 1.8770E+00 1.8677E+00
  1226. 1.8561E+00 1.8431E+00 1.8290E+00 1.8140E+00 1.7979E+00 ;
  1227. LWWDNS = LWWDNS ET (PROG 1.7803E+00 1.7614E+00 1.7418E+00 1.7224E+00
  1228. 1.7033E+00 1.6846E+00 1.6660E+00 1.6470E+00 1.6280E+00
  1229. 1.6090E+00 1.5896E+00 1.5703E+00 1.5519E+00 1.5342E+00
  1230. 1.5170E+00 1.5001E+00 1.4833E+00 1.4663E+00 1.4486E+00
  1231. 1.4301E+00 1.4117E+00 1.3938E+00 1.3766E+00 1.3595E+00
  1232. 1.3417E+00 1.3234E+00 1.3052E+00 1.2876E+00 1.2704E+00
  1233. 1.2532E+00 1.2359E+00 1.2184E+00 1.2005E+00 1.1819E+00
  1234. 1.1631E+00 1.1445E+00 1.1264E+00 1.1086E+00 1.0912E+00) ;
  1235. LWWDNS = LWWDNS ET (PROG 1.0742E+00 1.0574E+00 1.0404E+00 1.0231E+00
  1236. 1.0054E+00 9.8743E-01 9.6942E-01 9.5123E-01 9.3273E-01
  1237. 9.1418E-01 8.9579E-01 8.7788E-01 8.6017E-01 8.4230E-01
  1238. 8.2452E-01 8.0720E-01 7.9033E-01 7.7300E-01 7.5481E-01
  1239. 7.3609E-01 7.1728E-01 6.9853E-01 6.7989E-01 6.6150E-01
  1240. 6.4315E-01 6.2482E-01 6.0700E-01 5.9018E-01 5.7416E-01
  1241. 5.5850E-01 5.4341E-01 5.2915E-01 5.1576E-01 5.0301E-01
  1242. 4.9074E-01 4.7893E-01 4.6765E-01 4.5681E-01 4.4659E-01) ;
  1243. LWWDNS = LWWDNS ET (PROG 4.3736E-01 4.2909E-01 4.2144E-01 4.1444E-01
  1244. 4.0836E-01 4.0351E-01 3.9998E-01 3.9751E-01 3.9577E-01
  1245. 3.9483E-01 3.9460E-01) ;
  1246.  
  1247. * (-) Composante R12 du tenseur de Reynolds, normalisée par UTAU²
  1248. LUVDNS = PROG 3.4110E-32 8.3643E-08 5.4165E-06 6.2838E-05 3.6100E-04
  1249. 1.4079E-03 4.2722E-03 1.0806E-02 2.3664E-02 4.5923E-02
  1250. 8.0246E-02 1.2791E-01 1.8812E-01 2.5805E-01 3.3350E-01
  1251. 4.0991E-01 4.8325E-01 5.5066E-01 6.1046E-01 6.6206E-01
  1252. 7.0561E-01 7.4172E-01 7.7121E-01 7.9495E-01 8.1381E-01
  1253. 8.2863E-01 8.4013E-01 8.4890E-01 8.5537E-01 8.5990E-01
  1254. 8.6280E-01 8.6434E-01 8.6467E-01 8.6388E-01 8.6215E-01
  1255. 8.5967E-01 8.5663E-01 8.5323E-01 8.4963E-01 8.4591E-01 ;
  1256. LUVDNS = LUVDNS ET (PROG 8.4195E-01 8.3760E-01 8.3283E-01 8.2766E-01
  1257. 8.2219E-01 8.1646E-01 8.1043E-01 8.0407E-01 7.9745E-01
  1258. 7.9067E-01 7.8385E-01 7.7705E-01 7.7015E-01 7.6297E-01
  1259. 7.5554E-01 7.4804E-01 7.4057E-01 7.3311E-01 7.2557E-01
  1260. 7.1796E-01 7.1026E-01 7.0242E-01 6.9434E-01 6.8600E-01
  1261. 6.7752E-01 6.6897E-01 6.6034E-01 6.5164E-01 6.4292E-01
  1262. 6.3421E-01 6.2543E-01 6.1651E-01 6.0750E-01 5.9849E-01
  1263. 5.8941E-01 5.8021E-01 5.7095E-01 5.6170E-01 5.5239E-01) ;
  1264. LUVDNS = LUVDNS ET (PROG 5.4291E-01 5.3325E-01 5.2351E-01 5.1368E-01
  1265. 5.0372E-01 4.9369E-01 4.8360E-01 4.7332E-01 4.6286E-01
  1266. 4.5232E-01 4.4176E-01 4.3112E-01 4.2037E-01 4.0954E-01
  1267. 3.9862E-01 3.8766E-01 3.7680E-01 3.6606E-01 3.5527E-01
  1268. 3.4436E-01 3.3334E-01 3.2224E-01 3.1098E-01 2.9953E-01
  1269. 2.8797E-01 2.7642E-01 2.6498E-01 2.5368E-01 2.4238E-01
  1270. 2.3102E-01 2.1963E-01 2.0819E-01 1.9667E-01 1.8512E-01
  1271. 1.7357E-01 1.6201E-01 1.5040E-01 1.3873E-01 1.2707E-01) ;
  1272. LUVDNS = LUVDNS ET (PROG 1.1551E-01 1.0404E-01 9.2622E-02 8.1169E-02
  1273. 6.9647E-02 5.8062E-02 4.6422E-02 3.4768E-02 2.3138E-02
  1274. 1.1543E-02 0.0000E+00) ;
  1275.  
  1276. * Energie cinétique turbulente, normalisée par UTAU²
  1277. LKDNS = 0.5 * (LUUDNS + LVVDNS + LWWDNS) ;
  1278.  
  1279. * Vitesse débitante
  1280. EVUDNS = EVOL 'MANU' LYDNS LUDNS ;
  1281. UQDNS = ((INTG EVUDNS)) / (MAXI LYDNS) ;
  1282.  
  1283. * Vitesse et coefficient de frottement
  1284. UTAUDNS = 1. ;
  1285. TWDNS = 1.*UTAUDNS*UTAUDNS ;
  1286. FFDNS = 8. * ((UTAUDNS/UQDNS) ** 2) ;
  1287.  
  1288. * Nombres de Reynolds
  1289. RETAUDNS = EXTR LGUDNS 1 ;
  1290. REDNS = RETAUDNS * UQDNS / UTAUDNS ;
  1291.  
  1292.  
  1293.  
  1294.  
  1295. * AFFICHAGE DES RÉSULTATS
  1296. ***********************************************************************
  1297. ***********************************************************************
  1298. SI (GRAPH) ;
  1299.  
  1300.  
  1301.  
  1302.  
  1303. * +===================================================================+
  1304. * | PROFILS DE VITESSE |
  1305. * +===================================================================+
  1306.  
  1307. LEG2 = TABL ;
  1308. LEG2 . 2 = 'TIRR ' ;
  1309. LEG2 . 'TITRE' = TABL ;
  1310. LEG2 . 'TITRE' . 1 = 'SPAL: paroi basse' ;
  1311. LEG2 . 'TITRE' . 2 = 'SPAL: paroi haute' ;
  1312. LEG2 . 'TITRE' . 3 = 'DNS' ;
  1313. LEG2 . 'TITRE' . 4 = 'Reichardt' ;
  1314.  
  1315.  
  1316. * Normalisation par la vitesse débitante
  1317. * --------------------------------------
  1318. EVUB = EVOL 'CHPO' UNX SGY1B ;
  1319. EVUH = EVOL 'CHPO' UNX SGY1H ;
  1320. LYB = EXTR EVUB 'ABSC' ;
  1321. LYH = EXTR EVUH 'ABSC' ;
  1322. LUB = EXTR EVUB 'ORDO' ;
  1323. LUH = EXTR EVUH 'ORDO' ;
  1324. EVUQB = EVOL 'ROUG' 'MANU' (LUB/UQ) (LYB/HH) ;
  1325. EVUQH = EVOL 'ORAN' 'MANU' (LUH/UQ) (LYH/HH) ;
  1326.  
  1327. EVUQDNS = EVOL 'CYAN' 'MANU' (LUDNS*(1./UQDNS)) LYDNS ;
  1328.  
  1329. DESS (EVUQB ET EVUQH ET EVUQDNS)
  1330. 'TITR' 'Profil de vitesse axiale sur un demi canal'
  1331. 'TITX' 'UX/UQ'
  1332. 'TITY' 'Y/HH'
  1333. 'YBOR' 0. HH 'GRIL' 'LEGE' LEG2 ;
  1334.  
  1335.  
  1336. * Normalisation par les unités de paroi
  1337. * -------------------------------------
  1338. EVUPB = EVOL 'ROUG' 'MANU' (ENLE (LYB*(RETAU/HH)) 1)
  1339. (ENLE (LUB/UTAU) 1) ;
  1340. EVUPH = EVOL 'ORAN' 'MANU' (ENLE (LYH*(RETAU/HH)) 1)
  1341. (ENLE (LUH/UTAU) 1) ;
  1342.  
  1343. EVUPDNS = EVOL 'CYAN' 'MANU' (ENLE LYPDNS 1) (ENLE LUDNS 1) ;
  1344.  
  1345. * Formule analytique de Reichardt
  1346. LYPR = PROG 0.1 'PAS' 0.1 30
  1347. 'PAS' 1. 100.
  1348. 'PAS' 50. 1.E3 ;
  1349. LR1 = PROG (DIME LYPR)*1. ;
  1350. KA = RV . 'SPALART_ALLMARAS' . 'KCONST' . 'KAPPA' ;
  1351. LUPR = (1./KA) * (LOG (LR1 + (KA*LYPR)))
  1352. + (7.8 * ( LR1 - (EXP (LYPR*(-1./11.)))
  1353. + ((LYPR*(-1./11.)) * (EXP (LYPR*(-1./3.)))) )) ;
  1354. EVUPR = EVOL 'VERT' 'MANU' LYPR LUPR ;
  1355.  
  1356. DESS (EVUPB ET EVUPH ET EVUPDNS ET EVUPR)
  1357. 'TITR' 'Profil de vitesse axiale en proche-paroi'
  1358. 'TITX' 'Y+ = Y*UTAU/NU'
  1359. 'TITY' 'U+ = UX/UTAU'
  1360. 'LOGX' 'XBOR' YPMIN RETAU 'GRIL' 'LEGE' LEG2 ;
  1361.  
  1362.  
  1363.  
  1364.  
  1365. * +===================================================================+
  1366. * | PROFIL DE PRESSION |
  1367. * +===================================================================+
  1368.  
  1369. EVPB = EVOL 'CHPO' PN SGY1B ;
  1370. EVPH = EVOL 'CHPO' PN SGY1H ;
  1371. LPB = EXTR EVPB 'ORDO' ;
  1372. LPH = EXTR EVPH 'ORDO' ;
  1373. EVPB = EVOL 'ROUG' 'MANU' (LPB*(2./(UQ*UQ))) (LYB/HH) ;
  1374. EVPH = EVOL 'ORAN' 'MANU' (LPH*(2./(UQ*UQ))) (LYH/HH) ;
  1375.  
  1376. EVPDNS = EVOL 'CYAN' 'MANU' (LPDNS*(2./(UQDNS*UQDNS))) LYDNS ;
  1377.  
  1378. DESS (EVPB ET EVPH ET EVPDNS)
  1379. 'TITR' 'Profils de pression'
  1380. 'TITX' 'P/(1/2*UQ²)'
  1381. 'TITY' 'Y/HH'
  1382. 'YBOR' 0. HH 'GRIL' 'LEGE' LEG2 ;
  1383.  
  1384.  
  1385.  
  1386.  
  1387. * +===================================================================+
  1388. * | PROFILS DE CISAILLEMENT |
  1389. * +===================================================================+
  1390.  
  1391. EVTOB = EVOL 'CHPO' TAU SGY1B ;
  1392. EVTOH = EVOL 'CHPO' TAU SGY1H ;
  1393. LTOB = EXTR EVTOB 'ORDO' ;
  1394. LTOH = EXTR EVTOH 'ORDO' ;
  1395.  
  1396. EVTOTB = EVOL 'CHPO' TAUT SGY1B ;
  1397. EVTOTH = EVOL 'CHPO' TAUT SGY1H ;
  1398. LTOTB = EXTR EVTOTB 'ORDO' ;
  1399. LTOTH = EXTR EVTOTH 'ORDO' ;
  1400.  
  1401. LTOFB = LTOB + LTOTB ;
  1402. LTOFH = LTOH + LTOTH ;
  1403.  
  1404. LTODNS = LGUDNS / RETAUDNS ;
  1405. LTOTDNS = LUVDNS ;
  1406. LTOFDNS = LTODNS + LTOTDNS ;
  1407.  
  1408.  
  1409. * Cisaillement turbulent
  1410. * ----------------------
  1411. EVTOTB = EVOL 'ROUG' 'MANU' (LTOTB/TW) (LYB/HH) ;
  1412. EVTOTH = EVOL 'ORAN' 'MANU' (LTOTH/TW) (LYH/HH) ;
  1413.  
  1414. EVTOTDNS = EVOL 'CYAN' 'MANU' LTOTDNS LYDNS ;
  1415.  
  1416. DESS (EVTOTB ET EVTOTH ET EVTOTDNS)
  1417. 'TITR' 'Profils de cisaillement turbulent'
  1418. 'TITX' 'Taut/Tw'
  1419. 'TITY' 'Y/HH'
  1420. 'YBOR' 0. HH 'GRIL' 'LEGE' LEG2 ;
  1421.  
  1422.  
  1423. * Cisaillement moyen
  1424. * ------------------
  1425. EVTOB = EVOL 'ROUG' 'MANU' (LTOB/TW) (LYB/HH) ;
  1426. EVTOH = EVOL 'ORAN' 'MANU' (LTOH/TW) (LYH/HH) ;
  1427.  
  1428. EVTODNS = EVOL 'CYAN' 'MANU' LTODNS LYDNS ;
  1429.  
  1430. DESS (EVTOB ET EVTOH ET EVTODNS)
  1431. 'TITR' 'Profils de cisaillement moyen'
  1432. 'TITX' 'Tau/Tw'
  1433. 'TITY' 'Y/HH'
  1434. 'YBOR' 0. HH 'GRIL' 'LEGE' LEG2 ;
  1435.  
  1436.  
  1437. * Cisaillement total
  1438. * ------------------
  1439. EVTOFB = EVOL 'ROUG' 'MANU' (LTOFB/TW) (LYB/HH) ;
  1440. EVTOFH = EVOL 'ORAN' 'MANU' (LTOFH/TW) (LYH/HH) ;
  1441.  
  1442. EVTOFDNS = EVOL 'CYAN' 'MANU' LTOFDNS LYDNS ;
  1443.  
  1444. DESS (EVTOFB ET EVTOFH ET EVTOFDNS)
  1445. 'TITR' 'Profils de cisaillement total'
  1446. 'TITX' '(Tau+Taut)/Tw'
  1447. 'TITY' 'Y/HH'
  1448. 'YBOR' 0. HH 'GRIL' 'LEGE' LEG2 ;
  1449.  
  1450.  
  1451. * Bugdet cisaillement
  1452. * -------------------
  1453. LEG3 = TABL ;
  1454. LEG3 . 2 = 'TIRR ' ;
  1455. LEG3 . 4 = 'TIRR ' ;
  1456. LEG3 . 6 = 'TIRR ' ;
  1457. LEG3 . 'TITRE' = TABL ;
  1458. LEG3 . 'TITRE' . 1 = 'SPAL: Tau visq.' ;
  1459. LEG3 . 'TITRE' . 2 = 'DNS: Tau visq.' ;
  1460. LEG3 . 'TITRE' . 3 = 'SPAL: Tau turb.' ;
  1461. LEG3 . 'TITRE' . 4 = 'DNS: Tau turb.' ;
  1462. LEG3 . 'TITRE' . 5 = 'SPAL: Tau total' ;
  1463. LEG3 . 'TITRE' . 6 = 'DNS: Tau total' ;
  1464.  
  1465. EVTOPB = EVOL 'ROUG' 'MANU' (ENLE (LTOB/TW) 1)
  1466. (ENLE (LYB*(RETAU/HH)) 1) ;
  1467. EVTOTPB = EVOL 'CYAN' 'MANU' (ENLE (LTOTB/TW) 1)
  1468. (ENLE (LYB*(RETAU/HH)) 1) ;
  1469. EVTOFPB = EVOL 'VERT' 'MANU' (ENLE (LTOFB/TW) 1)
  1470. (ENLE (LYB*(RETAU/HH)) 1) ;
  1471.  
  1472. EVTOPDNS = EVOL 'ROUG' 'MANU' (ENLE LTODNS 1)
  1473. (ENLE LYPDNS 1) ;
  1474. EVTOTPDN = EVOL 'CYAN' 'MANU' (ENLE LTOTDNS 1)
  1475. (ENLE LYPDNS 1) ;
  1476. EVTOFPDN = EVOL 'VERT' 'MANU' (ENLE LTOFDNS 1)
  1477. (ENLE LYPDNS 1) ;
  1478.  
  1479. DESS (EVTOPB ET EVTOPDNS ET EVTOTPB ET EVTOTPDN ET EVTOFPB ET EVTOFPDN)
  1480. 'TITR' 'Budget du cisaillement'
  1481. 'TITX' 'Cisail. normé par Tw'
  1482. 'TITY' 'Y+ = Y*UTAU/NU'
  1483. 'LOGY' 'YBOR' YPMIN RETAU 'GRIL' 'LEGE' LEG3 ;
  1484.  
  1485.  
  1486.  
  1487.  
  1488. * +===================================================================+
  1489. * | PROFIL D'ÉNERGIE CINÉTIQUE TURBULENTE |
  1490. * +===================================================================+
  1491. *
  1492. * /!\ L'énergie cinétique turbulente n'est pas calculée par le modèle
  1493. * de Spalart-Allmaras. On doit se contenter de la déterminer par
  1494. * des considérations dimensionnelles plus ou moins pertinentes...
  1495.  
  1496. DPAROI = KOPS (RV . 'PAROIS' . 'DIST') '|<' 1.E-15 ;
  1497. DPAROIP = DPAROI * UTAU / NU ;
  1498. LM1 = KA * DPAROIP * (1. - (EXP ((-1./26.) * DPAROIP))) ;
  1499. *KT = 2. * MUT * ((ABS DUDX) + (ABS DVDY)) ;
  1500. *KT = (MUT * USRHO * (UTAU**3) / (0.09*HH)) ** 0.5 ;
  1501. KT = (MUT * USRHO * (INVE LM1) / (NU)) ** 2 ;
  1502.  
  1503. EVKB = EVOL 'CHPO' KT SGY1B ;
  1504. EVKH = EVOL 'CHPO' KT SGY1H ;
  1505. LKB = EXTR EVKB 'ORDO' ;
  1506. LKH = EXTR EVKH 'ORDO' ;
  1507. EVKB = EVOL 'ROUG' 'MANU' (LKB/(UTAU*UTAU)) (LYB/HH) ;
  1508. EVKH = EVOL 'ORAN' 'MANU' (LKH/(UTAU*UTAU)) (LYH/HH) ;
  1509.  
  1510. EVKDNS = EVOL 'CYAN' 'MANU' LKDNS LYDNS ;
  1511.  
  1512.  
  1513. DESS (EVKB ET EVKH ET EVKDNS)
  1514. 'TITR' 'Profils d énergie cinétique turbulente'
  1515. 'TITX' 'k/Utau²'
  1516. 'TITY' 'Y/HH'
  1517. 'YBOR' 0. HH 'GRIL' 'LEGE' LEG2 ;
  1518.  
  1519.  
  1520.  
  1521.  
  1522. * +===================================================================+
  1523. * | PROFIL DE VISCOSITÉ TURBULENTE |
  1524. * +===================================================================+
  1525. *
  1526. * /!\ La viscosité turbulente n'a pas véritablement de sens pour un
  1527. * calcul DNS. On la calcule uniquement à titre d'information.
  1528.  
  1529. EVNU0B = EVOL 'CHPO' NU0 SGY1B ;
  1530. EVNU0H = EVOL 'CHPO' NU0 SGY1H ;
  1531. LNU0B = EXTR EVNU0B 'ORDO' ;
  1532. LNU0H = EXTR EVNU0H 'ORDO' ;
  1533.  
  1534. EVNUTB = EVOL 'CHPO' (MUT*USRHO) SGY1B ;
  1535. EVNUTH = EVOL 'CHPO' (MUT*USRHO) SGY1H ;
  1536. LNUTB = EXTR EVNUTB 'ORDO' ;
  1537. LNUTH = EXTR EVNUTH 'ORDO' ;
  1538.  
  1539. LNUTDNS = LUVDNS / LGUDNS ;
  1540.  
  1541.  
  1542. * Comparaison de la viscosité turbulente à la DNS
  1543. * -----------------------------------------------
  1544. EVNUTB = EVOL 'ROUG' 'MANU' (LNUTB/(HH*UTAU)) LYB ;
  1545. EVNUTH = EVOL 'ORAN' 'MANU' (LNUTH/(HH*UTAU)) LYH ;
  1546.  
  1547. EVNUTDNS = EVOL 'CYAN' 'MANU' LNUTDNS LYDNS ;
  1548.  
  1549. DESS (EVNUTB ET EVNUTH ET EVNUTDNS)
  1550. 'TITR' 'Profils de viscosité turbulente'
  1551. 'TITX' 'Nut/(HH*Utau)'
  1552. 'TITY' 'Y/HH'
  1553. 'YBOR' 0. HH 'GRIL' 'LEGE' LEG2 ;
  1554.  
  1555.  
  1556. * Comparaison de la viscosité turbulente à la viscosité modifiée
  1557. * --------------------------------------------------------------
  1558. LEG4 = TABL ;
  1559. LEG4 . 2 = 'TIRR ' ;
  1560. LEG4 . 4 = 'TIRR ' ;
  1561. LEG4 . 5 = 'TIRC ' ;
  1562. LEG4 . 6 = 'TIRL ' ;
  1563. LEG4 . 'TITRE' = TABL ;
  1564. LEG4 . 'TITRE' . 1 = 'NU0: paroi basse' ;
  1565. LEG4 . 'TITRE' . 2 = 'NU0: paroi haute' ;
  1566. LEG4 . 'TITRE' . 3 = 'NUT: paroi basse' ;
  1567. LEG4 . 'TITRE' . 4 = 'NUT: paroi haute' ;
  1568. LEG4 . 'TITRE' . 5 = 'NUT: DNS' ;
  1569. LEG4 . 'TITRE' . 6 = (CHAI 'Y=' KA '*X') ;
  1570.  
  1571. EVNU0PB = EVOL 'ROUG' 'MANU' (ENLE (LYB*(RETAU/HH)) 1)
  1572. (ENLE (LNU0B*(1./NU)) 1) ;
  1573. EVNU0PH = EVOL 'ORAN' 'MANU' (ENLE (LYH*(RETAU/HH)) 1)
  1574. (ENLE (LNU0H*(1./NU)) 1) ;
  1575.  
  1576. EVNUTPB = EVOL 'ROSE' 'MANU' (ENLE (LYB*(RETAU/HH)) 1)
  1577. (ENLE (LNUTB*(1./NU)) 1) ;
  1578. EVNUTPH = EVOL 'VIOL' 'MANU' (ENLE (LYH*(RETAU/HH)) 1)
  1579. (ENLE (LNUTH*(1./NU)) 1) ;
  1580.  
  1581. EVNUTPDN = EVOL 'CYAN' 'MANU' (ENLE LYPDNS 1)
  1582. (ENLE (LNUTDNS*RETAUDNS) 1) ;
  1583.  
  1584. * Droite Y=KAPPA*X (comportement de NU0 à la paroi)
  1585. EVPROP = EVOL 'VERT' 'MANU' (PROG 1. 'PAS' 1 80. )
  1586. (PROG KA 'PAS' KA (80.*KA)) ;
  1587.  
  1588. DESS (EVNU0PB ET EVNU0PH ET EVNUTPB ET EVNUTPH ET EVNUTPDN ET EVPROP)
  1589. 'TITR' 'Profil de viscosité modifiée en proche-paroi'
  1590. 'TITX' 'Y+ = Y*UTAU/NU'
  1591. 'TITY' 'NU0/NU'
  1592. 'LOGX' 'XBOR' YPMIN RETAU 'GRIL' 'LEGE' LEG4 ;
  1593.  
  1594.  
  1595.  
  1596.  
  1597. * +===================================================================+
  1598. * | BUDGET DE VISCOSITÉ TURBULENTE |
  1599. * +===================================================================+
  1600.  
  1601. LEG5 = TABL ;
  1602. LEG5 . 4 = 'TIRR ' ;
  1603. LEG5 . 'TITRE' = TABL ;
  1604. LEG5 . 'TITRE' . 1 = 'Diffusion' ;
  1605. LEG5 . 'TITRE' . 2 = 'Production' ;
  1606. LEG5 . 'TITRE' . 3 = 'Destruction' ;
  1607. LEG5 . 'TITRE' . 4 = 'INTG' ;
  1608.  
  1609. CB1 = (RV.'SPALART_ALLMARAS'.'KCONST'.'CB1') ;
  1610. NUD1 = (RV.'INCO'.'SPAL'.'KSI') * NU ;
  1611. CDIFF = (NU + NUD1) * (1./(RV.'SPALART_ALLMARAS'.'KCONST'.'SIGMA')) ;
  1612. SADIFF1 = KOPS NUD1 'GRADS' $DOM ;
  1613. LCO = EXTR SADIFF1 'COMP' ;
  1614. SADIFF1X = EXCO (KOPS (CDIFF*(EXCO SADIFF1 'UX')) 'GRADS' $DOM) 'UX' ;
  1615. SADIFF1Y = EXCO (KOPS (CDIFF*(EXCO SADIFF1 'UY')) 'GRADS' $DOM) 'UY' ;
  1616. SADIFF = SADIFF1X + SADIFF1Y + (RV.'INCO'.'SPAL'.'B1') ;
  1617. SAPROD = (RV.'INCO'.'SPAL'.'B2') ;
  1618. SADEST = (-1.) * (RV.'INCO'.'SPAL'.'B3') ;
  1619.  
  1620.  
  1621. EVSADIFF = EVOL 'CHPO' SADIFF SGY1B ;
  1622. LSADIFF = EXTR EVSADIFF 'ORDO' ;
  1623.  
  1624. EVSAPROD = EVOL 'CHPO' SAPROD SGY1B ;
  1625. LSAPROD = EXTR EVSAPROD 'ORDO' ;
  1626.  
  1627. EVSADEST = EVOL 'CHPO' SADEST SGY1B ;
  1628. LSADEST = EXTR EVSADEST 'ORDO' ;
  1629.  
  1630. LSATOT = LSADIFF + LSAPROD + LSADEST ;
  1631.  
  1632. EVSADIFF = EVOL 'ROUG' 'MANU' (LYB/HH) (LSADIFF/(CB1*TW)) ;
  1633. EVSAPROD = EVOL 'VERT' 'MANU' (LYB/HH) (LSAPROD/(CB1*TW)) ;
  1634. EVSADEST = EVOL 'JAUN' 'MANU' (LYB/HH) (LSADEST/(CB1*TW)) ;
  1635. EVSATOT = EVOL 'ROSE' 'MANU' (LYB/HH) (LSATOT/(CB1*TW)) ;
  1636.  
  1637. DESS (EVSADIFF ET EVSAPROD ET EVSADEST ET EVSATOT)
  1638. 'TITR' 'Budget de la viscosité turbulente'
  1639. 'TITX' 'Y/HH'
  1640. 'TITY' '##/(CB1*Tw)'
  1641. 'XBOR' 0. HH 'YBOR' -10. 10. 'GRIL' 'LEGE' LEG5 ;
  1642.  
  1643.  
  1644.  
  1645.  
  1646. FINS ;
  1647. ***********************************************************************
  1648. ***********************************************************************
  1649.  
  1650.  
  1651.  
  1652.  
  1653.  
  1654.  
  1655.  
  1656.  
  1657.  
  1658.  
  1659. * +===================================================================+
  1660. * | |
  1661. * | 5 - C O M P T E - R E N D U D U C A L C U L |
  1662. * | |
  1663. * +===================================================================+
  1664.  
  1665. * Résultats analytiques en utilisant la corrélation de Blasius
  1666. * (valables seulement pour 4000 < Re < 1.E5)
  1667. UQBL = (DPDX*(DH**1.25) / (-0.1582*RHO*(NU**0.25))) ** (4./7.) ;
  1668. TWBL = HH * (-1.) * DPDX ;
  1669. UTAUBL = (TWBL / RHO) ** 0.5 ;
  1670. FFBL = 8. * ((UTAUBL/UQBL) ** 2) ;
  1671. RETAUBL = UTAUBL*HH/NU ;
  1672. REBL = UQBL *HH/NU ;
  1673.  
  1674.  
  1675. OPTI 'ECHO' 0 ;
  1676. MESS ' ' ;
  1677. MESS '===============================================================' ;
  1678. MESS 'RÉSUMÉ DU CALCUL ' ;
  1679. MESS '===============================================================' ;
  1680. MESS 'Description : Test de SPAL sur un canal périodique' ;
  1681. 'Nombre de pas de temps : ' ((RV . 'PASDETPS' . 'NUPASDT') - 1)
  1682. ) ;
  1683. 'Durée du pas de temps : ' (@ARR (RV.'INCO'.'DT'*1000.) 1) 'ms'
  1684. ' (CFL = ' (@ARR (MAXI (UNX*(RV.'INCO'.'DT')/DXE)) 2) ')'
  1685. ) ;
  1686. 'Temps physique simulé : ' (@ARR (RV . 'PASDETPS' . 'TPS') 3) 's'
  1687. ) ;
  1688. 'Type d éléments : ' DISCR ' ' KPRES
  1689. ) ;
  1690. 'Décentrement : ' DCENTR ' (KCMD=' (@ARR KCMD 2) ')'
  1691. ) ;
  1692. MESS ' ' ;
  1693. MESS ' ' ;
  1694. MESS '===============================================================' ;
  1695. MESS 'PARAMÈTRES DU MAILLAGE ' ;
  1696. MESS '===============================================================' ;
  1697. 'Dimensions: : ' (@ARR LX 2) 'x' (@ARR LY 2) 'm'
  1698. ) ;
  1699. 'Nombre d éléments : ' NXE 'x' NYE '=' (NBEL DOM)
  1700. ) ;
  1701. 'Nombre de noeuds : ' NXN 'x' NYN '=' (NBNO DOM)
  1702. ) ;
  1703. 'Taille de la 1ère maille : ' (@ARR (DYNMIN*1000.) 3) 'mm'
  1704. ' (DY+ = ' (@ARR YPMIN 2) ')'
  1705. ) ;
  1706. 'Taille des mailles centrales : ' (@ARR DYNMAX 2) 'm'
  1707. ' (DY+ = ' (@ARR (DYNMAX/LNU) 2) ')'
  1708. ) ;
  1709. 'Facteur d allongement maximum : ' (@ARR (MAXI ALLONG) 2)
  1710. ) ;
  1711. MESS ' ' ;
  1712. MESS ' ' ;
  1713. MESS '===============================================================' ;
  1714. MESS 'CARACTÉRISTIQUES DE L ÉCOULEMENT ' ;
  1715. MESS '===============================================================' ;
  1716. ' ' 'Modèle SA '
  1717. ' DNS '
  1718. ' Blasius '
  1719. ) ;
  1720. 'Gradient de pression : ' (@ARR DPDX 2) ' '
  1721. (@ARR (-1.) 2) ' '
  1722. (@ARR DPDX 2) ' Pa'
  1723. ) ;
  1724. 'Vitesse moyenne : ' (@ARR UQ 3) ' '
  1725. (@ARR UQDNS 3) ' '
  1726. (@ARR UQBL 3) ' m/s'
  1727. ) ;
  1728. 'Vitesse de frottement : ' (@ARR UTAU 3) ' '
  1729. (@ARR UTAUDNS 3) ' '
  1730. (@ARR UTAUBL 3) ' m/s'
  1731. ) ;
  1732. 'Frottement à la paroi : ' (@ARR TW 3) ' '
  1733. (@ARR TWDNS 3) ' '
  1734. (@ARR TWBL 3) ' Pa'
  1735. ) ;
  1736. 'Coefficient de frottement : ' (@ARR FF 2 'EXPOSANT') ' '
  1737. (@ARR FFDNS 2 'EXPOSANT') ' '
  1738. (@ARR FFBL 2 'EXPOSANT')
  1739. ) ;
  1740. 'Nombre de Reynolds global : ' (@ARR RE 1) ' '
  1741. (@ARR REDNS 1) ' '
  1742. (@ARR REBL 1)
  1743. ) ;
  1744. 'Nombre de Reynolds de frot. : ' (@ARR RETAU 1) ' '
  1745. (@ARR RETAUDNS 1) ' '
  1746. (@ARR RETAUBL 1)
  1747. ) ;
  1748. MESS ' ' ;
  1749. MESS ' ' ;
  1750. OPTI 'ECHO' 1 ;
  1751.  
  1752.  
  1753.  
  1754.  
  1755.  
  1756.  
  1757.  
  1758.  
  1759.  
  1760.  
  1761. *OPTI 'DONN' 5 ;
  1762.  
  1763. FIN ;
  1764.  
  1765.  
  1766.  

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