|
subroutine mfrcre |
( |
integer |
fid, |
|
|
integer |
nent, |
|
|
integer |
nvent, |
|
|
integer |
ncent, |
|
|
integer |
cs, |
|
|
integer |
swm, |
|
|
integer |
stm, |
|
|
character*(*) |
pname, |
|
|
integer |
fltas, |
|
|
integer:dimension(*) |
flta, |
|
|
integer*8 |
flt, |
|
|
integer |
cret | |
|
) |
| | |
Crée un filtre élémentaire en selectionnant les entités pour lesquelles on veut lire/écrire des valeurs. Le tableau filterarray contient des index croissants d'un tableau de profil. Cette sélection permet une lecture/écriture avancée vers/depuis les emplacements mémoire sélectionnés. Elle s'utilise uniquement en mode séquentiel (un seul processus).
- Paramètres:
-
| fid | Identificateur du fichier. |
| nent | Nombre de correspondance. Ce paramètre ne prend pas en compte nvaluesperentity et nconstituentpervalue. |
| nvent | Nombre de valeurs par entité. Utiliser la valeur 1 pour un filtre d'éléments de maillage. Cela peut être le nombre de points d'intégration utilisé dans un champ résultat. |
| ncent | Nombre de constituants par valeur. Cela peut être le nombre de coordonnées des noeuds, le nombre de noeuds d'une connectivité, le nombre de composantes d'un champ résultat. |
| cs | Numéro de constituant des valeurs à filtrer (commence à 1). Le mot clé MED_ALL_CONSTITUENT permet de selectionner tous les constituants. Cela peut être le numéro de coordonnées des noeuds, le numéro de noeuds d'une connectivité, le numéro de composantes d'un champ résultat. |
| swm | Mode d'entrelacement utilisé pour le stockage de valeurs med_switch_mode. |
| stm | Indique le mode de stockage en mémoire med_storage_mode des valeurs associées au profil utilisé. |
| pname | Nom du profil utilisé (de taille maximum MED_NAME_SIZE ) ou (MED_NO_PROFILE | MED_ALLENTITIES_PROFILE ) s'il n'y a pas de profil. |
| fltas | Nombre d'entités à filtrer et taille du tableau filterarray. Ne prend pas en compte nvaluesperentity et nconstituentpervalue. |
| flta | Tableau d'index du profil des numéros d'entités associées aux valeurs à sélectionner. |
| flt | Filtre sur entités (med_filter) appliqué en lecture/écriture de valeurs. La déallocation est à la charge de l'utilisateur (cf. MEDfilterClose MEDfilterDeAllocate). |
| cret | retour négatif en cas d'erreur, Zéro sinon. |
- Voir également:
- Guide de référence du module MEDfilter
La sélection des emplacements mémoire lus/écrits s'opère dans l'espace mémoire d'un seul processus. Les entités sélectionnées le sont avec toutes leurs valeurs (nvaluesperentity). Il est possible de sélectionner l'ensemble des constituants par valeur ( MED_ALL_CONSTITUENT ) ou uniquement les constituants n° constituentselect . Les constituants sont lus/écrits en mode MED_FULL_INTERLACE|MED_NO_INTERLACE (med_switch_mode). Le mode de stockage peut être MED_GLOBAL ou MED_COMPACT (med_storage_mode). Les index définis dans le tableau de filtre (filterarray) sont des index relatifs à un tableau profil (eventuellement le tableau virtuel MED_ALLENTITIES_PROFILE ou MED_NO_PROFILE ). La numérotation des index commence à 1. Les index se définissent de la façon suivante :
- Si le filtre opère sur un tableau de valeurs sans profil, les index sont les numéros d'entités utilisées selon la numérotation MED relative au type géométrique de l'entité (équivaut aux index d'un profil MED_ALLENTITIES_PROFILE).
- Si le filtre opère sur un tableau de valeurs avec profil en mode MED_GLOBAL, les index du tableau filterarray indiquent les numéros d'entités à selectionner dans le tableau profil.
- Si le filtre opère sur un tableau de valeurs avec profil en mode MED_COMPACT, les index du tableau filterarray indiquent les numéros d'entités à selectionner dans le tableau profil.
- Remarques
- Le filtre crée prend en compte les paramètres nvaluesperentity et nconstituentpervalue pour selectionner les emplacements en mémoire en fonction du mode de stockage utilisé (med_storage_mode).
Définition à la ligne 20 du fichier medfilter.f.
|