Previous Next Up Title Contents General Index Functions Index Bookshelf

VERIFICATEUR DE MAILLAGE 3D

tcheck_mesh3D


SEQUENCE D'APPEL

void tcheck_mesh3d (mesh, epsillon, status)

PARAMETRES EN ENTREE

Tmesh3D	*mesh;
Pfloat	epsilon;

PARAMETRES EN SORTIE

Pint	*status;

ARGUMENTS

mesh
Maillage 3D
epsilon
Seuil de comparaison des réels
status
Statut d'erreur.

EFFET

Cet utilitaire permet de vérifier la conformité d'un maillage 3D par rapport aux spécifications de PHIGURE. Les maillages pouvant être vérifiés sont les maillages parallélépipédiques, hexaédiques, cylindriques et sphériques. Cette fonction génère un compte rendu de vérification, en explicitant le plus possible, les éventuels erreurs dans le maillage. Les messages du compte rendu sont écrits dans le fichier des erreurs spécifiés à l'ouverture de PHIGURE (cf topen_phigure)

La valeur status vaut 0, si le maillage est incorrecte, 1 sinon.

La valeur epsilon est utile lorsque la vérification géométrique du maillage compare des réels. On considére que deux réels sont identiques si la valeur absolue de leur différence est inférieure à epsilon.

Attention pour le maillage hexaédrique, le vérificateur considére que les facettes sont planes, si ce critère n'est pas réalisé, le résultat de la vérification sera aléatoire.

Cette fonction ne verifie pas les maillages de type :

TNS_MESH_OF_HEXAEDRONS

TNS_MESH_OF_TETRAEDRONS

TNS_MESH_NON_HOMO_3D

Les controles suivants sont effectués

- maillage rectangulaire : TPARALLELEPIPEDIC_MESH

num_x > 1, num_y > 1 et num_z > 1

liste des x strictement croissante ou strictement décroissante

liste des y strictement croissante ou strictement décroissante

liste des z strictement croissante ou strictement décroissante

- maillage hexaédrique : THEXAEDRAL_MESH

num_x > 1, num_y > 1 et num_z > 1

vérification géométrique de chaque maille : les 6 faces d'une maille ne doivent pas s'intersecter autrement que par une arete de la maille, ainsi que pour les faces des mailles voisines

- maillage cylindrique : TCYLINDRICAL_MESH

num_r > 1, num_z > 1 et num_p > 1

liste des r strictement croissante

liste des z strictement croissante ou strictement décroissante

liste des p strictement croissante ou strictement décroissante

p[num_p-1] - p[0] < 2[pi] ou p[0] - p[num_p-1] <2 [pi]

- maillage sphérique : TSPHERICAL_MESH

num_r > 1, num_p > 1 et num_t > 1

liste des r strictement croissante

liste des p strictement croissante ou strictement décroissante

liste des t strictement croissante ou strictement décroissante

p[num_p-1] - p[0] < 2[pi] ou p[0] - p[num_p-1] <2 [pi]

0 < t[i] < [pi] pour tout i < num_t


Previous Next Up Title Contents General Index Functions Index Bookshelf