Télécharger eqex.notice

Retour à la liste

Afficher cette notice en

Numérotation des lignes :
   1 : $$$$ EQEX     NOTICE  JC220346  18/05/28    21:15:01     9753           
   2 :                                              DATE     18/05/28
   3 : 
   4 :      Operateur EQEX                          Voir aussi : NAVI EXEC
   5 :      --------------  
   6 : 
   7 : 
   8 : 
   9 :      Objet :
  10 :      _______
  11 :      
  12 :      Cree une TABLE contenant les informations necessaires a la solution
  13 :      solution explicite ou implicite d'une ou plusieurs E.D.P. effectuee
  14 :      par la procedure EXEC.
  15 :      
  16 :      Cette table est a completer par une table 'INCO' contenant les
  17 :      inconnues.
  18 :      
  19 :      On peut aussi ajouter des tables 'HIST' et 'INCO'.'HIST' pour
  20 :      sauvegarder des historiques.
  21 : 
  22 :      
  23 :      
  24 :      Syntaxe :
  25 :      _________
  26 : 
  27 : 
  28 :      RV = EQEX (RV)  -->--+
  29 :                           |
  30 :      +------<------<------+------<------<------<------<------+
  31 :      |                                                       |
  32 :      v   (OPTIONS APPLIQUEES AUX OPERATEURS PLACES APRES)    |
  33 :      |                                                       ^
  34 :      +---> ('OPTI' opt1 opt2 opt3 ...)  -->--+               |
  35 :                                              |               |
  36 :           +------<------<------<------<------+               |
  37 :           |                                                  ^
  38 :           v    (OPERATEUR QUI SERA APPELE A CHAQUE P.D.T)    |
  39 :           |                                                  |
  40 :           +---> 'ZONE' nomz 'OPER' nomo (arg1 arg2 ...) -->--+ 
  41 :           |                ('INCO' nom1 nom2 ...)            |
  42 :           ^                                                  v
  43 :           |                                                  |
  44 :           +-------<------<------<------<------<------<-------+
  45 :                                                              |
  46 :                                                              |
  47 :      +------<------<------<------<------<------<------<------+
  48 :      |
  49 :      v      (DEFINITION DES CONDITIONS AUX LIMITES)
  50 :      |
  51 :      +---> 'CLIM' inc1 comp1 val1 inc2 comp2 val2 ...   -->--+
  52 :                                                              |
  53 :                                                              |
  54 :      +------<------<------<------<------<------<------<------+
  55 :      |
  56 :      +---> ('ITMA' itma) ('NITER' nite) --->---+   
  57 :                                                |    (PARAMETRES
  58 :      +------<------<------<------<------<------+     TEMPORELS DE
  59 :      |                                               LA SIMULATION)
  60 :      +---> ('ALFA' alfa) ('OMEGA' omeg) --->---+
  61 :                                                |
  62 :                                                |
  63 :                                                v
  64 :                                               
  65 :                                    (autres directives parmi :
  66 :                                        DUMP  FIDT NISTO
  67 :                                        NOMVI TPSI TFINAL )
  68 : 
  69 : 
  70 :      Directive DUMP
  71 :      Cette directive est utile pour la mise au point du jeu de donnees
  72 :      => on imprime le deroulement du decodage de EQEX
  73 :      
  74 :      
  75 :      Directive ITMA
  76 :      itma (ENTIER) : nombre maximum de pas de temps (defaut 1)
  77 :      
  78 :      
  79 :      Directive ALFA
  80 :      alfa (FLOTTANT) : tolerance (0. < alfa < 1.) sur le pas de temps
  81 :                        (defaut 1.)
  82 :      
  83 :      
  84 :      Directive FIDT
  85 :      fidt (ENTIER) : frequence d'impression des pas de temps (defaut 20)
  86 :      
  87 :      
  88 :      Directive NISTO
  89 :      nisto (ENTIER) : frequence de sauvegarde de l'historique d'une
  90 :      grandeur en un point dans la table RV.'HIST' (defaut 20)
  91 :      
  92 :      
  93 :      Directive NOMVI
  94 :      nomvi (MOT) : nom du champ de vitesse servant au calcul de la
  95 :      pression pour l'algorithme semi-explicite (par defaut 'UN')
  96 :      
  97 :      
  98 :      Directive TPSI
  99 :      tpsi (flottant) : temps initial
 100 :      
 101 :      
 102 :      Directive TFINAL
 103 :      tfinal (flottant) : temps final (defaut 1.e30)
 104 :      
 105 :      
 106 :      Directive NITER
 107 :      niter (entier) : nombre d'iterations internes a un pas de temps
 108 :      pour resoudre une non linearite (defaut 1)
 109 :      
 110 :      
 111 :      Directive OMEGA
 112 :      omega (flottant) : facteur de relaxation (0 < omega < 1) pour
 113 :      resoudre une non linearite (defaut 1.)
 114 :      
 115 :      
 116 :      Directive IMPR
 117 :      impr (entier) : niveau global d'impression ecran (0 par defaut)
 118 :      
 119 :      
 120 :      Directive OPTI
 121 :      Elle sert a preciser les options de tous les operateurs places
 122 :      dans les directives OPER situees apres
 123 :      
 124 :      LISTE DES OPTIONS
 125 :      -------------+------+---------------------------------------------
 126 :      Formulations | EFM1 | Elements finis sous integre + correction 
 127 :                   |      | (a la Gresho) disponible uniquement dans
 128 :                   |      | l'algorithme semi explicite
 129 :                   | EF   | Elements finis Galerkin ou Petrov-Galerkin
 130 :                   | VF   | Volumes finis
 131 :      -------------+------+--+------------------------------------------
 132 :      Decentrement | CENTREE | uniquement EF/EFM1 IMPL/EXPL/SEMI 2D/3D  
 133 :                   | SUPGDC  | uniquement EF/EFM1 IMPL/EXPL/SEMI 2D/3D  
 134 :                   | SUPG    | uniquement EF/EFM1 IMPL/EXPL/SEMI 2D/3D  
 135 :                   | SUPGH   | uniquement EF/EFM1 IMPL/EXPL/SEMI 2D/3D  
 136 :                   | CNG     | uniquement EF      SEMI           2D/3D  
 137 :                   | PSI     | uniquement operateur TSCA EFM1 EXPL 2D   
 138 :                   | JOHNSON | uniquement operateur TSCA EFM1 EXPL 2D   
 139 :                   | UPWIND  | uniquement VF EXPL 2D                    
 140 :                   | GODUNOV | uniquement VF EXPL 2D                    
 141 :                   | VANLEER | uniquement VF EXPL 2D                    
 142 :                   | VLH     | uniquement VF EXPL 2D                    
 143 :                   | HUSVL   | uniquement VF EXPL 2D                    
 144 :                   | HUSVLH  | uniquement VF EXPL 2D                    
 145 :                   | AUSM    | uniquement VF EXPL 2D                    
 146 :                   |         |
 147 :                   | CMD     | Coef. multiplicateur du decentrement     
 148 :                   |         | uniquement pour SUPG,SUPGDC,SUPGH en EF  
 149 :                   |         | Par defaut, la valeur est 0.2             
 150 :      -------------+---------+----+-------------------------------------
 151 :      Formulation  | IMPL         | implicite
 152 :      temporelle   | EXPL         | explicite
 153 :                   | SEMI beta    | semi implicite  (0. < beta < 1.)
 154 :      (ne concerne | SEMI 0.5     | schema de Crank-Nicolson
 155 :       que DFDT)   | SEMI 0.5 CNG | Crank-Nicolson generalise (Donea)
 156 :                   | BDF2         | schema arriere en temps a 3 points
 157 :                   |              | ordre 2 (inconditionellement stable)
 158 :      -------------+---------+----+-------------------------------------
 159 :      Formulation  | CONS    | formulation conservative
 160 :      des termes   | NOCONS  | formulation non conservative
 161 :      de transport | NODIV   | le terme de stabilisation 1/2 T Div U est
 162 :                   |         | omis (non conservatif NOCONS seulement)
 163 :      (ne concerne |         | 
 164 :       que KONV NS |         |
 165 :       NSKE TSCA)  |         |  
 166 :      -------------+---------+------------------------------------------
 167 :      Formul. des  | MUVARI  | formulation en Laplacien Vecteur
 168 :      contraintes  | FTAU    | formulation en contrainte visqueuse
 169 :      visqueuses   | MUCONS  | les gradients de Viscosite sont negliges
 170 :                   |         | sur l'element (defaut)
 171 :      -------------+---------+-+----------------------------------------
 172 :      Support des  | INCOP spg | spg est a choisir dans la liste :
 173 :      inconnues    | INCOD spg |    SOMMET   FACE     CENTRE
 174 :      primales ou  |           |    CENTREP1 CENTREP0 MSOMMET
 175 :      duales       |           |
 176 :      -------------+-----------+----------------------------------------    
 177 :      Type Matrice | MMPLEINE  | matrice masse consistante
 178 :      masse        | MMDIAGO   | matrice masse diagonale
 179 :                   | MMPG      | matrice masse Petrov-Galerkin
 180 :      -------------+-----------+----------------------------------------         
 181 :      Modele de turbulence particulier RNG K-epsilon
 182 :                   | RNG       | uniquement pour NSKE EFM1 EXPLICITE
 183 :      -------------+-----------+----------------------------------------    
 184 :      Formulation ALE pour l'operateur NS EFM1 EXPLICITE
 185 :                   | ALE       |
 186 :      -------------+-----------+----------------------------------------  
 187 :      Formulation  | EULER     | mono-espece
 188 :      IDEUL (VF    | EULERMS   | multi-especes
 189 :      uniquement)  | EULERMST  | multi-especes "thermally perfect"
 190 :      -------------+-----------+----------------------------------------  
 191 : 
 192 :      
 193 :      Directives ZONE et OPER
 194 :      
 195 :      nomz : Objet MMODEL (type 'NAVIER_STOKES') ou table DOMAINE 
 196 :             sur lequel va porter l'operateur
 197 :             
 198 :      nomo : Objet de type MOT donnant le nom de l'operateur de
 199 :             discretisation (ou de la PROCEDURe) a executer.
 200 :             A choisir dans la liste (nono exhaustive) ci-dessous :
 201 :             FIMP FPU FROT LAPN TSCA NS NSKE ECHI DFDT KONV MDIA ...
 202 :      
 203 :      arg1 arg2 ... : arguments de l'operateur (voir la notice de
 204 :                      l'operateur concerne)
 205 :             Les arguments lus sont places dans la table associee a
 206 :             l'operateur aux indices 'ARG1', 'ARG2', etc...
 207 :             
 208 :      nom1 nom2 ... : noms des indices dans la table des inconnues ou
 209 :                      se trouveront les inconnues sur lesquelles
 210 :                      l'operateur s'appuiera
 211 :             Cette table est a creer independemment et a placer dans la
 212 :             a l'indice 'INCO' de la table RV creee par EQEX
 213 :             Exemple :
 214 :      
 215 :             RV.'INCO'=TABLE 'INCO' ;
 216 :             RV.'INCO'.'UN'=KCHT $MA 'VECT' 'SOMMET' (0. 0.) (U1 ET U2) ;
 217 :             RV.'INCO'.'TN'=KCHT $MA 'SCAL' 'SOMMET' 1. T2 ;
 218 :      
 219 :      
 220 :      Directive CLIM
 221 :      
 222 :      Cette directive permet de preciser ou de surcharger les conditions
 223 :      limites de type valeur imposee (Dirichlet) qui seront appliquees a
 224 :      chacune des inconnues.
 225 :      
 226 :      inc1 inc2 ... : MOT designant une inconnue qui doit deja figurer 
 227 :                      dans une des listes nom1 nom2 ... et donc dans la
 228 :                      table 'INCO'
 229 :      
 230 :      comp1 comp2 ... : MOT precisant sur quelle composante appliquer
 231 :                        la condition limite, a choisir parmi :
 232 : 
 233 :                        UIMP=inconnue vectorielle, composante suivant Ox
 234 :                        VIMP=inconnue vectorielle, composante suivant Oy
 235 :                        WIMP=inconnue vectorielle, composante suivant Oz
 236 :                        TIMP=inconnue scalaire
 237 : 
 238 :      val1 val2 ... : valeurs attribuees, de type FLOTTANT ou CHPOINT
 239 :      
 240 :      
 241 :                        
 242 :      Commentaires :
 243 :      ______________
 244 :        
 245 :      a) Si une table RV est specifiee derriere EQEX, elle sera completee
 246 :         ou modifiee par les instuctions suivantes (ceci permet de 
 247 :         contourner la limitation GIBIANE sur la longueur d'une
 248 :         instruction).
 249 :      
 250 :         
 251 :      b) Pour chaque operateur (directive OPER) est creee une TABLE dont
 252 :         le nom est celui de l'operateur prefixe par le numero d'ordre de
 253 :         l'operateur. Cette table contient le nom de l'operateur, l'objet
 254 :         MAILLAGE sur lequel il porte, les arguments qu'on lui associe
 255 :         (indices 'ARG1', 'ARG2', etc...) et la liste des noms des 
 256 :         inconnues sur lequel il porte.
 257 :         
 258 :         C'est cette TABLE qui est passee en argument a l'operateur ou a
 259 :         la procedure lors de son appel par EXEC. La TABLE RV y est
 260 :         situee a l'indice 'EQEX'.
 261 :      
 262 :         
 263 :      c) Un certain nombre de parametres generaux sont initialises
 264 :         par EQEX :
 265 :         
 266 :            ITMA=1
 267 :            FIDT=20  frequence d'impression des pas de temps
 268 :            ALFA=1.  coefficient de tolerance sur le pas de temps 
 269 :                     (usuellement on peut prendre de 0.5 a 0.8)
 270 :      
 271 :                     
 272 :      d) L'indice 'LISTOPER' de la table RV contient la liste des
 273 :         operateurs appeles, dans l'ordre ou ils sont appeles.
 274 :      
 275 :         
 276 :      e) POUR CREER DES HISTORIQUES :
 277 :      
 278 :         + EVOLUTION temporelle en un point d'une grandeur de RV.'INCO'
 279 :           
 280 :           Il faut rajouter dans RV une entree RV.'HIST' contenant une
 281 :           TABLE construite par l'operateur KHIS (voir la notice de cet
 282 :           operateur). La frequence de sauvegarde est definie grace a
 283 :           la directive NISTO.
 284 :           
 285 :         + Stockage des objets CHPOINT contenus dans RV.'INCO' pour
 286 :           differents pas de temps
 287 :           
 288 :           If faut creer une entree RV.'INCO'.'HIST' de type TABLE,
 289 :           contenant pour chaque grandeur a sauvegarder un objet LISTCHPO
 290 :           vide (operateurs SUIT ou VIDE) dont le nom est le meme que
 291 :           celui qui a ete defini dans la table 'INCO'.
 292 :           
 293 :           Il est aussi possible de sauvegarder le temps en creant un
 294 :           LISTREEL vide (operateurs PROG ou VIDE) a l'indice 'TPS' de
 295 :           RV.'INCO'.'HIST'
 296 :           
 297 :           Le premier pas de sauvegarde est indique a l'indice 'IDEB' de
 298 :           RV.'INCO'.'HIST' ; le dernier pas de temps est indique a
 299 :           l'indice 'IFIN' ; enfin, la frequence de sauvegarde est donnee
 300 :           par l'indice 'IPAS'.
 301 :      
 302 :           
 303 :      f) Une entree RV.'METHINV' (type TABLE) est automatiquement creee
 304 :         pour definir la methode de resolution de systeme qui sera
 305 :         utilisee. Par defaut, une resolution directe (robuste mais
 306 :         couteuse en memoire) de type Crout est utilisee. Il est possible
 307 :         de specifier une methode iterative de type gradient conjugue, a
 308 :         condition de bien SAVOIR ce que l'on fait.
 309 :         
 310 :         La syntaxe des entrees de la table RV.'METHINV' est explicitee
 311 :         dans la notice de l'operateur KRES.
 312 :         
 313 :         En sortie, RV.'METHINV'.'CONVINV' contient l'historique (type 
 314 :         LISTREEL) de la norme du residu en fonction du nombre
 315 :         d'iterations.  
 316 :         
 317 :         
 318 :      g) A tout instant, le CHPOINT contenant les conditions limites
 319 :         de type Dirichlet est stocke a l'indice RV.'CLIM'
 320 :      

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