doc:user:meshtransfer:datatransferbetweenmeshes
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| doc:user:meshtransfer:datatransferbetweenmeshes [2014/12/02 11:37] – [Méthode de transfert utilisant les éléments joints (Mortar Elements)] bussetta | doc:user:meshtransfer:datatransferbetweenmeshes [2016/03/30 15:23] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 36: | Line 36: | ||
| On suppose que '' | On suppose que '' | ||
| On souhaite transférer les données de l' | On souhaite transférer les données de l' | ||
| + | Pour utiliser le calcul des transfert de donnée il faut importer '' | ||
| + | from wrap.mtDataTransfer import * | ||
| transferOperator = MetaforTransferOperator(oldMetafor, | transferOperator = MetaforTransferOperator(oldMetafor, | ||
| transferOperator.setCouplingInteraction(oldInteraction, | transferOperator.setCouplingInteraction(oldInteraction, | ||
| Line 48: | Line 50: | ||
| <note important> | <note important> | ||
| + | |||
| + | L' | ||
| + | Il est créé automatiquement par l' | ||
| + | Pour pouvoir le récupérer, | ||
| region = transferOperator.get(oldInteraction) | region = transferOperator.get(oldInteraction) | ||
| Line 56: | Line 62: | ||
| Il est également possible de spécifier une méthode de transfert pour un champ particulier: | Il est également possible de spécifier une méthode de transfert pour un champ particulier: | ||
| region.add(IF_DEV_SIG_XX, | region.add(IF_DEV_SIG_XX, | ||
| - | Le transfert des contraintes et de toutes les autres grandeurs définies sur les mêmes points d' | + | Le transfert des contraintes et de toutes les autres grandeurs définies sur les mêmes points d' |
| region.ignore(IF_FTOTAL) | region.ignore(IF_FTOTAL) | ||
| Line 95: | Line 101: | ||
| La définition de l' '' | La définition de l' '' | ||
| - | transferElementProperties = ElementProperties(METMCell) | + | transferElementProperties = ElementProperties(MTMCell) |
| transferElementProperties.put (MTMSOLVERTYPE, | transferElementProperties.put (MTMSOLVERTYPE, | ||
| transferElementProperties.put (INTPT_NB | transferElementProperties.put (INTPT_NB | ||
| Line 104: | Line 110: | ||
| * '' | * '' | ||
| - | * '' | + | * '' |
| + | * nombre de points par direction pour les quadrangles, | ||
| + | * nombre de points d' | ||
| * '' | * '' | ||
| Line 111: | Line 119: | ||
| * '' | * '' | ||
| - | Pour utiliser le calcul exact (nécessite la construction d'un supermaillage) il faut remplacer '' | + | Pour utiliser le calcul exact (nécessite la construction d'un supermaillage) il faut remplacer '' |
| from wrap.mtExactDataTransfer_CGAL import * | from wrap.mtExactDataTransfer_CGAL import * | ||
| transferElementProperties = ElementProperties(ExactMTMCell) | transferElementProperties = ElementProperties(ExactMTMCell) | ||
| Line 127: | Line 135: | ||
| * un calcul exact (plus couteux en temps de calcul, car nécessitant la construction d’un super-maillage). | * un calcul exact (plus couteux en temps de calcul, car nécessitant la construction d’un super-maillage). | ||
| - | La définition de l' '' | + | La définition de l' '' |
| transferElementProperties = ElementProperties(FVTMCell) | transferElementProperties = ElementProperties(FVTMCell) | ||
| transferElementProperties.put (INTPT_NB | transferElementProperties.put (INTPT_NB | ||
| transferElementProperties.put (QUADRATURETYPE, | transferElementProperties.put (QUADRATURETYPE, | ||
| - | * '' | + | * '' |
| + | * nombre de points par direction pour les quadrangles, | ||
| + | * nombre de points d' | ||
| * '' | * '' | ||
| Line 138: | Line 148: | ||
| * '' | * '' | ||
| * '' | * '' | ||
| + | |||
| + | Pour utiliser le calcul exact (nécessite la construction d'un supermaillage) il faut remplacer '' | ||
| + | from wrap.mtExactDataTransfer_CGAL import * | ||
| + | transferElementProperties = ElementProperties(ExactFVTMCell) | ||
| === Option pour la reconstruction constante === | === Option pour la reconstruction constante === | ||
| transferElementProperties.put (FVCELLTYPE | transferElementProperties.put (FVCELLTYPE | ||
| - | transferElementProperties.put (UPWIND_COEFF, | ||
| - | |||
| - | L' | ||
| - | Une valeur de 1.0 (par défaut) donne un schéma appelé "full donor cell differencing" | ||
| - | Il est fort diffusif mais est TVD (total variation diminishing - pas d' | ||
| === Option pour la reconstruction linéaire === | === Option pour la reconstruction linéaire === | ||
| Line 171: | Line 180: | ||
| transferElementProperties = ElementProperties(NeighbourTMCell) | transferElementProperties = ElementProperties(NeighbourTMCell) | ||
| transferElementProperties.put (FVCELLTYPE, | transferElementProperties.put (FVCELLTYPE, | ||
| + | |||
| + | ===== Exemple | ||
| + | |||
| + | On souhaite transférer les données de '' | ||
| + | |||
| + | transferElementProperties = ElementProperties(FVTMCell) | ||
| + | transferElementProperties.put (FVCELLTYPE , LINEARRECCELL) | ||
| + | transferElementProperties.put (STENCILTYPE, | ||
| + | transferElementProperties.put (LIMITERTYPE, | ||
| + | transferElementProperties.put (INTPT_NB | ||
| + | |||
| + | transferOperator = MetaforTransferOperator(oldMetafor, | ||
| + | transferOperator.setCouplingInteraction(oldInteraction1, | ||
| + | transferOperator.setCouplingInteraction(oldInteraction2, | ||
| + | |||
| + | region1 = transferOperator.get(oldInteraction1) # optionnelle | ||
| + | region1.add(transferElementProperties) # optionnelle | ||
| + | |||
| + | region2 = transferOperator.get(oldInteraction2) # optionnelle | ||
| + | region2.add(transferElementProperties) # optionnelle | ||
| + | |||
| + | transferOperator.execute() | ||
| ===== Extracteur de valeurs ===== | ===== Extracteur de valeurs ===== | ||
doc/user/meshtransfer/datatransferbetweenmeshes.1417516670.txt.gz · Last modified: (external edit)
