g2orie
C G2ORIE SOURCE CHAT 05/01/13 00:14:52 5004 CC ********************************************************************** C FICHIER : GR2D_GEOM.F C C GESTION DES GRILLES GEOMETRIQUES (INDICES + POINTS) C C OBJET : C ------ CREATION ------- C OBJET G2LLG2 : CREER UNE GRILLE INTERMEDIAIRE (ENTRE 2 GRILLES) C C ------ MODIFICATION --- C OBJET G2ORAC : REORIENTE UNE GRILLE GEOMETRIQUE C OBJET G2POLC : AJOUTE LIGNES ET COLONNES A UNE GRILLE GEOMETRIQUE C C ------ INFORMATIONS --- C OBJET G2ORIE : CALCULE L'ORIENTATION D'UNE GRILLE GEOMETRIQUE C C AUTEUR : O. STAB C DATE : 08.96 C MODIFICATIONS : C AUTEUR, DATE, OBJET : C C C ********************************************************************** C C C C ********************************************************************** C OBJET G2ORIE : CALCULE L'ORIENTATION D'UNE GRILLE GEOMETRIQUE C C EN ENTREE : C IGR1(NBCOL,NBLIG) : TABLEAU D'INDICES DES NOEUDS (LA GRILLE) C IDIMC : DIMENSION DE L'ESPACE (=3) C COORD : TABLEAU DES COORDONNEES DES NOEUDS C C VK : DIRECTION SOUHAITEE AU NOEUD (1,1) C C EN SORTIE : C IOP : ORIENTATION DE LA GRILLE PAR RAPPORT AU TRIEDRE, C POUR QUE (IGR1(1,I),IGR(J,1),VK) SOIT DIRECT C 1 = MEME ORIENTATION C -1 = ORIENTATION INVERSE C 0 = ERREUR DE COPLANARITE C C C ********************************************************************** IMPLICIT INTEGER(I-N) -INC CCREEL INTEGER IGR1(*),NBCOL,NBLIG,IDIMC REAL*8 COORD(*),VK(*),XYZEPS INTEGER IOP C REAL*8 VI(3),VJ(3),XNVI,XNVJ,VIJ(3),V INTEGER N1,N2 EXTERNAL XNORVE C C COMMON /CGEPSI/ XYZHUG,XYZMIN,XYZEPS C REAL*8 XYZHUG,XYZMIN,XYZEPS C C --- CALCUL DE L'ORIENTATION EN (1,1) --- C XYZEPS=1.D-10 N1 = IGR1(1) N2 = IGR1(2) C CALL DIFFVE(COORD((N2-1)*IDIMC+1), C > COORD((N1-1)*IDIMC+1),IDIMC,VI) DO 730 JG=1,IDIMC 730 VI(JG)=COORD((N2-1)*IDIMC+JG)-COORD((N1-1)*IDIMC+JG) N2 = IGR1(NBCOL+1) C CALL DIFFVE(COORD((N2-1)*IDIMC+1), C > COORD((N1-1)*IDIMC+1),IDIMC,VJ) DO 731 JG=1,IDIMC 731 VJ(JG) = COORD((N2-1)*IDIMC+JG) - COORD((N1-1)*IDIMC+JG) V=0.D0 DO 700 JG=1,IDIMC 700 V=V+VIJ(JG)*VK(JG) C V = SCALVE(VIJ,VK,IDIMC) C EPSI = XNVJ * XNVI * ZERO IOP = -1 ELSE IOP = 1 ELSE IOP = 0 ENDIF ENDIF C 9999 END
© Cast3M 2003 - Tous droits réservés.
Mentions légales