$$$$ TRAJ NOTICE CHAT 11/09/12 21:18:23 7124 DATE 11/09/12 Operateur TRAJ Voir aussi : -------------- Section : Mecanique Resolution FRAN=================================================================== Cas d'une formulation elements finis : ANGL=================================================================== Formulation finite element ======================================================================= MODL4 MCH4 = TRAJ MOT1 |CHPO1| |TAB1 | ('PORO' MCH1) TAB2 ; |TAB4 | |MODL1| FRAN=================================================================== Cas d'une formulation mixte hybride(modele DARCY) ANGL=================================================================== Formulation hybrid mixed finite element (DARCY) ======================================================================= MODL4 MCH4 = TRAJ MOT1 MODL1 |CHPO2| ('PORO' MCH1) TAB2 ; |TAB5 | ('DISP' MCH2) ('DIFF' MCH3) FRAN=================================================================== Objet ------- L'operateur TRAJ permet de calculer les trajectoires de particules lachees dans un domaine maille pour lequel on connait : soit un champs de vitesses ou de flux, constant au cours du temps, soit des champs de vitesses ou de flux, donnes pour differentes valeurs du temps. Commentaire ----------- TAB1 est un objet de type TABLE et de sous type DOMAINE. C'est le resultat de l'operateur DOMA applique au maillage sur lequel on fait le calcul. MOT1 indique le type de calcul que l'on veut faire : 'CONVECTION_EXPLICITE' la position des particules est calculee de proche en proche en fonction de la vitesse locale (c'est l'option par defaut). 'CONVECTION_ANALYTIQUE' Calcul des lignes de courant par integration analytique (uniquement en formulation EFMH) 'CONVECTION_DIFFUSION' Calcul des trajectoires par iterations successives en prenant en compte les phenomenes de convection-dipersion-diffusion. (Cette option n'est pour l'instant developpee que pour le modele DARCY) MODL1 Objet modele (type MMODEL) decrivant la formulation utilisee (cf. MODE). Les formulations actuellement prevues sont DARCY et NAVIER_STOKES. CHPO1 champ de vitesse defini aux noeuds du maillage TAB1.MAILLAGE Les composantes ont pour noms VX VY (VZ). TAB4 est le nom d'un objet de type TABLE et de sous type TRANSITOIRE. Cette table contient a l'indice 'TEMPS' une table de flottants, et a l'indice 'VITESSE',une table de CHPOINT. Ces deux tables sont indicees par des entiers 0 1 2 ...N : TAB4.VITESSE.N est un CHPOINT ayant les memes caracteristiques que CHPO1. TAB4.TEMPS.N est le temps correspondant. CHP02 Objet de type CHPOINT contenant le debit a travers chaque face. Le support geometrique de ce champ est le maillage contitue les centres des FACES. Le nom de la composante du CHPOINT est FLUX (cf. HDEB). TAB5 est un objet de type TABLE et de sous-type DARCY_TRANSITOIRE. Elle contient a l'indice 'TEMPS' une table de flottants, et a l'indice 'FLUX', une table de CHPOINT. Ces deux tables sont indicees par des entiers 0 1 2 ...N (cf DARCYTRA) : TAB5.FLUX.N est un CHPOINT ayant les memes caracteristiques que CHPO2. TAB5.TEMPS.N est le temps correspondant. MCH1 objet MCHAML contenant la porosite au centre de gravite de chaque element. Au moment du calcul la vitesse sera divisee par la porosite. Si cette valeur est absente la porosite est supposee egale a 1. MCH2 objet MCHAML a deux composantes contenant respectivement la dispersivite longitudinale et la dispersivite transversale au centre de gravite de chaque element. Les dispersivites sont imposees constantes par element. Par defaut, la dispersivite est nulle. (utilise uniquement dans le calcul 'CONVECTION_DIFFUSION') MCH3 objet MCHAML a une composante contenant la diffusion isotrope effective au centre de gravite de chaque element. Par defaut, la diffusion est nulle. (utilise uniquement dans le calcul 'CONVECTION_DIFFUSION') TAB2 table a plusieurs indices contenant la description du lacher de particules : TAB2.'TEMPS_LIMITE' contient un reel : le temps maximal de calcul TAB2.'CFL' contient un reel : le nombre de Courant a respecter. Le pas de temps de calcul en depend. En moyenne, il y aura 1/CFL sauts de particule par maille. Ce nombre doit etre compris entre 1.E-8 et 1.(Defaut 0.05) (utilise uniquement dans le calcul 'CONVECTION_EXPLICITE'). TAB2.'DELTAT_SAUVE' contient un reel : le pas de temps avec lequel on conserve les resultats pour un post-traitement. Si cette valeur est nulle, tous les temps de calcul seront sauvegardes. TAB2.'TEMPS_SAUVES' contient un 'LISTREEL' : liste des temps auxquels les resultats sont sauvegardes pour un post-traitement. Cet indice 'ET' le precedent, 'DELTAT_SAUVE', ne peuvent pas co-exister. Si aucun des deux n'existe, tous les temps de calcul seront sauvegardes. Disponible uniquement dans le calcul 'CONVECTION_DIFFUSION'. TAB2.'IMPERMEABLE' : objet MAILLAGE de points faces de type 'POI1' determinant les faces infranchissables par les particules. Disponible uniquement dans un calcul 'CONVECTION_DIFFUSION'. TAB2.'TEMPS_LACHER' : LISTREEL contenant les temps initiaux des differents lachers. Pour chacun des reels de cette liste, il doit y avoir un maillage de points de lacher (voir plus bas). TAB2.1 : maillage (elements 'POI1') representant les positions des particules qui seront lachees au premier temps de la liste TAB2.'TEMPS_LACHER' " " " " " " TAB2.i : maillage de POI1 representant les positions des particules qui seront lachees au ieme temps de la liste TAB2.'TEMPS_LACHER' MODL4 est un modele, concatenation d'un modele elementaire par trajectoire. La formulation est 'TRAJECTOIRE'. Le maillage associe est un maillage de SEG2 appuyes sur les points des trajectoires (voir 'EXTR' 'ZONE' et 'COOR' pour en obtenir les coordonnees). MCH4 est un MCHAML base sur le modele MOD4, a valeurs aux noeuds des SEG2 des trajectoires. La composante 'TMPS' contient le temps en chacun des points de chaque trajectoire. Exemple: (voir valitraj.dgibi et trajec.dgibi) -------- si CARRE est un maillage et VN un champ de vitesse aux noeuds, et MODCAR un modele de type NAVIER_STOKES, on pourra coder la sequence suivante. * DEFINITION DE LA TABLE DE LACHER LACHER = TABLE ; LACHER.TEMPS_LACHER = PROG 0. 2. ; LACHER.TEMPS_LIMITE = 180.; LACHER.CFL = 0.05 ; LACHER.DELTAT_SAUVE = 0. ; * points du premier lacher a t=0. : LACHER.1 = (0.0 0.0) 'ET' (0.0 1.) 'ET' (0.0 2.0) ; * points du second lacher a t= 2. : LACHER.2 = 'MANU' 'POI1' (0.0 1.) ; * CALCUL DES TRAJECTOIRES MODL4 MCH4 = 'TRAJ' MODCAR VN LACHER ; * TRACE DES TRAJECTOIRES CROB = 'EXTR' MODL4 'MAIL' ; 'TRACER' CROB ; * TRACE DES ISOVALEURS DU TEMPS 'TRACER' MCH4 MODL4 ; * IMPRESSION DU TEMPS DE SORTIE DE LA 1ERE PARTICULE TABZON = 'EXTR' MODL4 'ZONE' ; NBB = 'NBEL' TABZON . 2 ; TT1 = 'EXTR' MCH4 'TMPS' 1 NBB 2 ; 'LISTE' TT1 ; Remarques : ----------- 1. Les elements de maillages actuellement utilisables sont, en 2D : TRI3 QUA4 en 3D : PRI6 CUB8 TET4 2. Le nombre de Courant est utilise pour calculer le pas de temps dans chaque element du maillage par la formule dt = (L * C) / Vm ou L est 2 fois la plus petite distance entre le point centre et le milieu de faces de l'element. Vm est la vitesse moyenne sur l'element. dt est le pas de temps du calcul. C est le nombre de Courant. C doit etre suffisament petit pour permettre de faire plusieurs pas par element. Nous avons fait nos tests de validation avec C=0.05 . 3. Lorsque TAB2.DELTAT_SAUVE est donne different de 0., on conserve les positions des particules avec le pas de temps donne. Toutefois si la particule sort du domaine entre deux pas de temps on conserve la position et le temps du point de sortie. 4. Dans le cas d'un calcul transitoire, la vitesse ou le flux sont interpoles lineairement en fonction du temps. ANGL=================================================================== Description : ------------- The TRAJ operator allows to calculate the trajectories of particles on a mesh on which we know a velocity field or a flux field. Comments : ---------- TAB1 is a TABLE type object, subtype DOMAINE. It is the result of the DOMA operator applied to the mesh on which we do the calculation. MOT1 mode of calculation 'CONVECTION_EXPLICITE' : particle positions are calculated step by step according to interpolated local velocity (default option), 'CONVECTION_ANALYTIQUE' : particle positions are obtained by analytical interpolation from entrance face to exit face of each element (only EFMH formulation), 'CONVECTION_DIFFUSION' : particle positions are calculated step by step according to interpolated local velocity and with random diffusive-dispersive jumps (available only for DARCY models). MODL1 modeled structure (MMODEL type) describing the formulation (cf. MODE). Only DARCY and NAVIER_STOKES models are accepted. CHPO1 velocity field defined at the nodes of TAB1.MAILLAGE. Its componentmust be VX VY (VZ). TAB4 is a TABLE type object, subtype TRANSITOIRE. It contents at index 'TEMPS' a TABLE of times (FLOTTANT), and at index 'VITESSE' a TABLE of velocity fields just like CHPO1. The indexes of this table are integers 0 1 2 ... N CHPO2 Contains the integrated flow field for each element's face. (CHPOINT type, based on FACE points, component 'FLUX') (see HDEB). TAB5 is a TABLE type object, subtype DARCY_TRANSITOIRE. It contents at index 'TEMPS' a TABLE of times (FLOTTANT), and at index 'FLUX' a TABLE of integrated flow field just like CHPO2. The indexes of this table are 0 1 2 ... N. (Cf. DARCYTRA). MCH1 porosity (MCHAML object, based on GRAVITE points, component 'SCAL'). When computing, the velocity will be divided by porosity. (Default value = 1.) MCH2 longitudinal and transversal dispersivity MCHAML object, based on GRAVITE points, two components, Default value = 0. for each, used only in the 'CONVECTION_DIFFUSION' mode. MCH3 effective isotropic diffusion : MCHAML object, based on GRAVITE points, one component, Default value = 0. used only in the 'CONVECTION_DIFFUSION' mode. TAB2 is a table with several indexes containing the description of starting points of particles. TAB2.'TEMPS_LIMITE' contains the maximal calculation time (FLOTTANT). TAB2.'CFL' contains the Courant Number ('FLOTTANT') to be respected. The calculation time step will depend on it. In the average, there will be 1/CFL internal particle jumps in each mesh. This number must be included between 1.E-8 and 1. Used only in the 'CONVECTION_EXPLICITE' mode. TAB2.'DELTAT_SAUVE' contain the saving time step ('FLOTTANT'). If equal to 0., it will be calculated automatically. TAB2.'TEMPS_SAUVES' contains the saving times 'LISTE' ('LISTREEL') This index and the previous index, 'DELTAT_SAUVE', must not exist at the same time. If none of them are defined, all the calculation times will be saved. Available only in the 'CONVECTION_DIFFUSION' mode. TAB2.'IMPERMEABLE' : mesh (MAILLAGE type, based on FACE points, 'POI1' elements) determining the impervious faces. Available only in the 'CONVECTION_DIFFUSION' mode. TAB2.'TEMPS_LACHER' : initial time of each release ('LISTREEL'). For each float in the list, there must be a corresponding release mesh (see below). TAB2.1 : mesh ('POI1' elements) containing the particle release points for the first time in TAB2.'TEMPS_LACHER' list " " " " " " TAB2.i : mesh ('POI1' elements) containing the particle release points for the ith time in TAB2.'TEMPS_LACHER' list. MODL4 : resulting model ('TRAJECTOIRE' formulation), concatenation of elementary models ; one for each trajectory. The associated meshes ('SEG2' elements) yield the particles positions (see 'EXTR' 'ZONE' and 'COOR' to get the coordinates). MCH4 : resulting MCHAML, based on the MODL4 model, based on the nodes (NOEUD) of each segment (SEG2) of the corresponding meshes. The 'TMPS' component contains the travel time. Example: (see valitraj.dgibi or trajec.dgibi) -------- si CARRE est un maillage et VN un champ de vitesse aux noeuds, et MODCAR un modele de type NAVIER_STOKES, on pourra coder la sequence suivante. * DEFINITION OF THE RELEASE TABLE LACHER = TABLE ; LACHER.TEMPS_LACHER = PROG 0. 2. ; LACHER.TEMPS_LIMITE = 180.; LACHER.CFL = 0.05 ; LACHER.DELTAT_SAUVE = 0. ; * first release at t=0. : LACHER.1 = (0.0 0.0) 'ET' (0.0 1.) 'ET' (0.0 2.0) ; * second release at t= 2. : LACHER.2 = 'MANU' 'POI1' (0.0 1.) ; * TRAJECTORIES CALCULATION MODL4 MCH4 = 'TRAJ' MODCAR VN LACHER ; * TRAJECTORIES DRAWING CROB = 'EXTR' MODL4 'MAIL' ; 'TRACER' CROB ; * TRAVEL TIME DRAWING ALONG TRAJECTORIES 'TRACER' MCH4 MODL4 ; * EXIT TIME OF THE FIRST TRAJECTORY TABZON = 'EXTR' MODL4 'ZONE' ; NBB = 'NBEL' TABZON . 2 ; TT1 = 'EXTR' MCH4 'TMPS' 1 NBB 2 ; 'LISTE' TT1 ; Notes : ------- 1. The mesh elements which can be used now are in 2D TRI3 QUA4 in 3D PRI6 CUB8 TET4 2. The Courant Number is used to calculate the internal time step in each encountered cell with the formula dt = (L * C) / Vm where L is twice the smalest distance between the center and the face points of the cell, Vm is the average microscopic velocity in the cell, dt is the time step. C is the Courant number. C must be small enough to allow several step in each cell. Validation tests have been made using C=0.05 . 3. When TAB2.'DELTAT_SAUVE' is different from 0., particle positions are saved using the given time gap. However, if the particle exists the domain between two save times, the exit time and positions will be also kept. 4. In the case of transient flow, velocity and fluxes are linearly interpolated with respect to time. =======================================================================