]> SALOME platform Git repositories - modules/homard.git/commitdiff
Salome HOME
interpolation des champs
authornicolas <nicolas>
Mon, 21 Oct 2013 15:51:10 +0000 (15:51 +0000)
committernicolas <nicolas>
Mon, 21 Oct 2013 15:51:10 +0000 (15:51 +0000)
doc/en/tui_create_hypothese.rst
doc/en/tui_create_iteration.rst
doc/fr/tui_create_hypothese.rst
doc/fr/tui_create_iteration.rst
doc/fr/tui_create_zone.rst

index 146187a7056fe678cd5f39606dfbae829b488186..957eadf780dc5cc3394879ba538a3129fad414e3 100644 (file)
@@ -99,30 +99,30 @@ General methods
 |         * other value: problem                                |
 +---------------------------------------------------------------+
 
-The field and the thresholds
-============================
+The driving field and the thresholds
+====================================
 
 +---------------------------------------------------------------+
 +---------------------------------------------------------------+
 | .. module:: SetField                                          |
 |                                                               |
-| **SetField(field_name)**                                      |
-|     Gives the name of a field to the hypothesis               |
+| **SetField(FieldName)**                                       |
+|     Gives the name of a driving field to the hypothesis       |
 |                                                               |
-|     - ``field_name``: the name of the field                   |
+|     - ``FieldName``: the name of the driving field            |
 +---------------------------------------------------------------+
 | .. module:: GetFieldName                                      |
 |                                                               |
 | **GetFieldName()**                                            |
-|     Returns the name of the field                             |
+|     Returns the name of the driving field                     |
 +---------------------------------------------------------------+
 | .. module:: SetUseField                                       |
 |                                                               |
 | **SetUseField(use_field)**                                    |
-|     Gives the usage of the field for the hypothesis           |
+|     Gives the usage of the driving field                      |
 |                                                               |
-|     - ``use_field``: integer that defines how the field is    |
-|       used                                                    |
+|     - ``use_field``: integer that defines how the driving     |
+|       field is used                                           |
 |                                                               |
 |        * 0: value by element (default)                        |
 |        * 1: jump between an element and its neighbours        |
@@ -171,8 +171,8 @@ The field and the thresholds
 +---------------------------------------------------------------+
 
 
-The components of the field
-===========================
+The components of the driving field
+===================================
 
 +---------------------------------------------------------------+
 +---------------------------------------------------------------+
@@ -236,6 +236,7 @@ The zones
 |                                                               |
 | **GetZones()**                                                |
 |     Returns the list of the used zones with their uses        |
+|                                                               |
 |     Warning: the use is stored as a string in the list and    |
 |     not as an integer.                                        |
 |                                                               |
@@ -274,6 +275,87 @@ The filtering by the groups
 |     filtering                                                 |
 +---------------------------------------------------------------+
 
+Interpolation of fields
+=======================
+
++---------------------------------------------------------------+
++---------------------------------------------------------------+
+| .. module:: SetTypeFieldInterp                                |
+|                                                               |
+| **SetTypeFieldInterp(typefieldinterp)**                       |
+|                                                               |
+|     - ``typefieldinterp``: integer that defines if some fields|
+|       are interpolated or not                                 |
+|                                                               |
+|         * 0: no field (default)                               |
+|         * 1: every field is interpolated                      |
+|         * 2: some fields are interpolated; automatically set  |
+|           after using AddFieldInterp or AddFieldInterpType    |
++---------------------------------------------------------------+
+| .. module:: GetTypeFieldInterp                                |
+|                                                               |
+| **GetTypeFieldInterp()**                                      |
+|     Returns the integer that defines if some fields are       |
+|     interpolated or not                                       |
++---------------------------------------------------------------+
+| .. module:: AddFieldInterp                                    |
+|                                                               |
+| **AddFieldInterp(FieldName)**                                 |
+|                                                               |
+|     - ``FieldName``: the name of the field to interpolate     |
+|                                                               |
+|     The interpolation type is automatically deduced by        |
+|     HOMARD; it corresponds to the type 0 of AddFieldInterpType|
++---------------------------------------------------------------+
+| .. module:: AddFieldInterpType                                |
+|                                                               |
+| **AddFieldInterpType(FieldName, type_interp)**                |
+|                                                               |
+|     - ``FieldName``: the name of the field to interpolate     |
+|     - ``type_interp``: integer that defines the type of       |
+|       interpolation                                           |
+|                                                               |
+|     For a field over the nodes:                               |
+|                                                               |
+|         * 0: the field will be interpolated in degree 1 or 2  |
+|           depending on its baseframe.                         |
+|         * 1: interpolation en degree 1                        |
+|         * 2: interpolation en degree 2                        |
+|         * 3: interpolation iso-P2                             |
+|                                                               |
+|     For a field over the elements:                            |
+|                                                               |
+|         * 0: the field will be interpolated as an intensive   |
+|           variable                                            |
+|         * 1: the field will be interpolated as an extensive   |
+|           variable                                            |
++---------------------------------------------------------------+
+| .. module:: GetFieldInterps                                   |
+|                                                               |
+| **GetFieldInterps()**                                         |
+|     Returns the list of the interpolated fields with their use|
+|                                                               |
+|     Warning: the use is stored as a string in the list and    |
+|     not as an integer.                                        |
+|                                                               |
+|     Example: ['DEPL', '0', 'Mass', '1', 'Density', '0']       |
++---------------------------------------------------------------+
+| .. module:: SupprFieldInterp                                  |
+|                                                               |
+| **SupprFieldInterp(FieldName)**                               |
+|     Eliminates a field from the hypothesis                    |
+|                                                               |
+|     - ``FieldName``: name of a field to eliminate             |
++---------------------------------------------------------------+
+| .. module:: SupprFieldInterps                                 |
+|                                                               |
+| **SupprFieldInterps()**                                       |
+|     Eliminates all the fields from the hypothesis             |
++---------------------------------------------------------------+
+
+.. note::
+  The file and the time steps for the fiels are defined with the iteration; see :ref:`tui_create_iteration`.
+
 Advanced options
 ================
 
@@ -352,6 +434,8 @@ The creation of the object hypo_1 is done as follows:
     hypo_1.AddComp("INDX")
     hypo_1.AddComp("INDZ")
     hypo_1.SetRefinThr(1, 80.)
+    hypo_1.AddFieldInterp("DEPL")
+    hypo_1.AddFieldInterpType("MASS", 1)
 
 
 Similar graphical input
index d75c4cb90737d8f2596ae62972babad76d03127f..c424f047d78c4451359513504b4ba19987473b89 100644 (file)
@@ -284,6 +284,47 @@ If no time step is defined for the field or if a single time step is defined for
 |     Returns the selected rank for the driving field           |
 +---------------------------------------------------------------+
 
+The time steps for the fields to interpolate
+--------------------------------------------
+
+The choice of the fields to interpolated are defined in the hypothesis (see :ref:`tui_create_hypothese`).
+For a given field, if nothing is declared, every single time step will be considered.
+If some time steps are wanted, they must be defined as follows.
+
++---------------------------------------------------------------+
++---------------------------------------------------------------+
+| .. module:: SetFieldInterpTimeStep                            |
+|                                                               |
+| **SetFieldInterpTimeStep(FieldName, TimeStep)**               |
+|     Defines the time step for the interpolation of the field. |
+|     The rank will be ignored.                                 |
+|                                                               |
+|     - ``FieldName``: the name of the field to interpolate     |
+|     - ``TimeStep``: the selected time step                    |
++---------------------------------------------------------------+
+| .. module:: SetFieldInterpTimeStepRank                        |
+|                                                               |
+| **SetFieldInterpTimeStepRank(FieldName, TimeStep)**           |
+|     Defines the time step and the rank for the interpolation  |
+|     of the field.                                             |
+|                                                               |
+|     - ``FieldName``: the name of the field to interpolate     |
+|     - ``TimeStep``: the selected time step                    |
+|     - ``Rank``: the selected rank                             |
++---------------------------------------------------------------+
+| .. module:: GetFieldInterpsTimeStepRank                       |
+|                                                               |
+| **GetFieldInterpsTimeStepRank()**                             |
+|     Returns the information (name of the field, time step,    |
+|     rank)                                                     |
+|                                                               |
+|     Warning: the time step and the rank are stored as strings |
+|     in the list and not as integers.                          |
+|                                                               |
+|     Example: ['DEPL', '1', '1', 'DEPL', '2', '1', 'Mass',     |
+|     '2', '0', 'Mass', '3', '0']                               |
++---------------------------------------------------------------+
+
 Miscellenaous
 =============
 
@@ -294,7 +335,7 @@ Miscellenaous
 | **SetInfoCompute(MessInfo)**                                  |
 |     Defines options to track the computation of the iteration |
 |                                                               |
-|     - ``MessInfo`` : integer that drives prints, as a multiple|
+|     - ``MessInfo``: integer that drives prints, as a multiple |
 |       of 2, 3 and 5                                           |
 |                                                               |
 |         * 1 : nothing (default)                               |
index f05480cabd90f0a937d190acc6f688a93a6e3655..2b5d03030b4ab8803e6c2b42a4541b677b7ab03a 100644 (file)
@@ -33,7 +33,14 @@ M
 |                                                               |
 | **GetAllHypothesesName()**                                    |
 |     Retourne la liste des noms de toutes les hypothèses créées|
++---------------------------------------------------------------+
+| .. module:: GetZone                                           |
+|                                                               |
+| **GetZone(zone_name)**                                        |
+|     Retourne l'instance de la classe ``zone`` connue par      |
+|     son nom                                                   |
 |                                                               |
+|     - ``zone_name`` : le nom de la zone                       |
 +---------------------------------------------------------------+
 
 Méthodes de la classe hypothese
@@ -96,27 +103,27 @@ G
 |         * autre valeur : problème                             |
 +---------------------------------------------------------------+
 
-Le champ et les seuils
-======================
+Le champ de pilotage de l'adaptation et les seuils
+==================================================
 
 +---------------------------------------------------------------+
 +---------------------------------------------------------------+
 | .. module:: SetField                                          |
 |                                                               |
-| **SetField(field_name)**                                      |
-|     Attribue un nom de champ à l'hypothèse                    |
+| **SetField(FieldName)**                                       |
+|     Attribue un nom de champ de pilotage à l'hypothèse        |
 |                                                               |
-|     - ``field_name`` : le nom du champ                        |
+|     - ``FieldName`` : le nom du champ  de pilotage            |
 +---------------------------------------------------------------+
 | .. module:: GetFieldName                                      |
 |                                                               |
 | **GetFieldName()**                                            |
-|     Retourne le nom du champ                                  |
+|     Retourne le nom du champ de pilotage                      |
 +---------------------------------------------------------------+
 | .. module:: SetUseField                                       |
 |                                                               |
 | **SetUseField(use_field)**                                    |
-|     Attribue un mode d'usage du champ à l'hypothèse           |
+|     Attribue un mode d'usage du champ de pilotage             |
 |                                                               |
 |     - ``use_field`` : entier précisant l'usage du champ       |
 |                                                               |
@@ -166,15 +173,15 @@ Le champ et les seuils
 +---------------------------------------------------------------+
 
 
-Les composantes du champ
-========================
+Les composantes du champ de pilotage
+====================================
 
 +---------------------------------------------------------------+
 +---------------------------------------------------------------+
 | .. module:: AddComp                                           |
 |                                                               |
 | **AddComp(comp_name)**                                        |
-|     Ajoute une composante du champ à considérer               |
+|     Ajoute une composante du champ de pilotage à considérer   |
 |                                                               |
 |     - ``comp_name`` : nom d'une composante à prendre en       |
 |       compte                                                  |
@@ -231,7 +238,8 @@ Les zones
 |                                                               |
 | **GetZones()**                                                |
 |     Retourne la liste des zones utilisées avec leur usage.    |
-|     Attention, l'usage est stocké sous forme de chaîne de     |
+|                                                               |
+|     Attention : l'usage est stocké sous forme de chaîne de    |
 |     caractères et non pas d'entier dans la liste.             |
 |                                                               |
 |     Exemple : ['Zone_A', '1', 'Zone_B', '1', 'Zone_C', '1']   |
@@ -268,6 +276,89 @@ Le filtrage par les groupes
 |     Retourne la liste des groupes utilisés pour le filtrage   |
 +---------------------------------------------------------------+
 
+
+Les champs à interpoler
+=======================
+
++---------------------------------------------------------------+
++---------------------------------------------------------------+
+| .. module:: SetTypeFieldInterp                                |
+|                                                               |
+| **SetTypeFieldInterp(typefieldinterp)**                       |
+|                                                               |
+|     - ``typefieldinterp`` : entier précisant si des champs    |
+|       sont a interpoler                                       |
+|                                                               |
+|         * 0 : aucun champ n'est à interpoler (défaut)         |
+|         * 1 : tous les champs sont interpolés                 |
+|         * 2 : certains champs sont interpolés ; implicitement |
+|           affecté après usage de AddFieldInterp ou            |
+|           AddFieldInterpType                                  |
++---------------------------------------------------------------+
+| .. module:: GetTypeFieldInterp                                |
+|                                                               |
+| **GetTypeFieldInterp()**                                      |
+|     Retourne l'entier précisant si des champs sont à          |
+|     interpoler                                                |
++---------------------------------------------------------------+
+| .. module:: AddFieldInterp                                    |
+|                                                               |
+| **AddFieldInterp(FieldName)**                                 |
+|                                                               |
+|     - ``FieldName`` : le nom du champ à interpoler            |
+|                                                               |
+|     Le mode d'interpolation sera choisi automatiquement par   |
+|     HOMARD ; cela correspond au mode 0 de AddFieldInterpType  |
++---------------------------------------------------------------+
+| .. module:: AddFieldInterpType                                |
+|                                                               |
+| **AddFieldInterpType(FieldName, type_interp)**                |
+|                                                               |
+|     - ``FieldName`` : le nom du champ à interpoler            |
+|     - ``type_interp`` : entier précisant le type              |
+|       d'interpolation du champ                                |
+|                                                               |
+|     Pour un champ aux noeuds :                                |
+|                                                               |
+|         * 0 : le champ sera interpolé en degré 1 ou 2 selon   |
+|           son support.                                        |
+|         * 1 : interpolation en degré 1                        |
+|         * 2 : interpolation en degré 2                        |
+|         * 3 : interpolation iso-P2                            |
+|                                                               |
+|     Pour un champ aux éléments :                              |
+|                                                               |
+|         * 0 : le champ sera interpolé en le considérant comme |
+|           une variable intensive.                             |
+|         * 1 : le champ sera interpolé en le considérant comme |
+|           une variable extensive.                             |
++---------------------------------------------------------------+
+| .. module:: GetFieldInterps                                   |
+|                                                               |
+| **GetFieldInterps()**                                         |
+|     Retourne la liste des champs à interoler avec leur usage. |
+|                                                               |
+|     Attention : l'usage est stocké sous forme de chaîne de    |
+|     caractères et non pas d'entier dans la liste.             |
+|                                                               |
+|     Exemple : ['DEPL', '0', 'Masse', '1', 'Densite', '0']     |
++---------------------------------------------------------------+
+| .. module:: SupprFieldInterp                                  |
+|                                                               |
+| **SupprFieldInterp(FieldName)**                               |
+|     Supprime un champ à interpoler de l'hypothèse             |
+|                                                               |
+|     - ``FieldName`` : nom du champ à supprimer                |
++---------------------------------------------------------------+
+| .. module:: SupprFieldInterps                                 |
+|                                                               |
+| **SupprFieldInterps()**                                       |
+|     Supprime tous les champs à interpoler de l'hypothèse      |
++---------------------------------------------------------------+
+
+.. note::
+  Le fichier et les instants où sont pris les champs sont définis dans l'itération ; voir :ref:`tui_create_iteration`.
+
 Les options avancées
 ====================
 
@@ -344,6 +435,8 @@ La cr
     hypo_1.AddComp("INDX")
     hypo_1.AddComp("INDZ")
     hypo_1.SetRefinThr(1, 80.)
+    hypo_1.AddFieldInterp("DEPL")
+    hypo_1.AddFieldInterpType("MASSE", 1)
 
 
 Saisie graphique correspondante
index d8b8761941169b64f1b08ce210911b6d415fa22a..fce47b004216e6e666ad06968a3d554f0de3436a 100644 (file)
@@ -281,6 +281,47 @@ Si une seule occurence du champ de pilotage de l'adaptation est pr
 |     pilotage                                                  |
 +---------------------------------------------------------------+
 
+Les instants pour les champs à interpoler
+-----------------------------------------
+
+Les champs à interpoler sont définis dans l'hypothèse (voir :ref:`tui_create_hypothese`).
+Pour un champ donné, si aucune mention de pas de temps n'est précisé, tous les pas de temps seront pris en compte.
+Si on souhaite limiter l'interpolation à un ou plusieurs pas de temps, il faut le préciser ici.
+
++---------------------------------------------------------------+
++---------------------------------------------------------------+
+| .. module:: SetFieldInterpTimeStep                            |
+|                                                               |
+| **SetFieldInterpTimeStep(FieldName, TimeStep)**               |
+|     Définit un instant pour le champ à interpoler. Le numéro  |
+|     d'ordre sera ignoré.                                      |
+|                                                               |
+|     - ``FieldName`` : le nom du champ à interpoler            |
+|     - ``TimeStep`` : l'instant où est pris le champ           |
++---------------------------------------------------------------+
+| .. module:: SetFieldInterpTimeStepRank                        |
+|                                                               |
+| **SetFieldInterpTimeStepRank(FieldName, TimeStep)**           |
+|     Définit l'instant et le numéro d'ordre pour le champ à    |
+|     interpoler.                                               |
+|                                                               |
+|     - ``FieldName`` : le nom du champ à interpoler            |
+|     - ``TimeStep`` : l'instant où est pris le champ           |
+|     - ``Rank`` : le numéro d'ordre où est pris le champ       |
++---------------------------------------------------------------+
+| .. module:: GetFieldInterpsTimeStepRank                       |
+|                                                               |
+| **GetFieldInterpsTimeStepRank()**                             |
+|     Retourne l'ensemble des triplets (nom du champ, pas de    |
+|     temps, numéro d'ordre)                                    |
+|                                                               |
+|     Attention : l'usage est stocké sous forme de chaîne de    |
+|     caractères et non pas d'entier dans la liste.             |
+|                                                               |
+|     Exemple : ['DEPL', '1', '1', 'DEPL', '2', '1', 'Masse',   |
+|     '2', '0', 'Masse', '3', '0']                              |
++---------------------------------------------------------------+
+
 Divers
 ======
 
index 57e4d884c9952b4eab58d95806eb70f4f1773527..d622cbe39cfa5b8df1f8915c314b2f94bfe06eee 100644 (file)
@@ -123,8 +123,6 @@ Ces m
   maillage est 2D, dans un des plans de coordonnées.
 
 
-
-
 +---------------------------------------------------------------+
 +---------------------------------------------------------------+
 | .. module:: GetZone                                           |