C VHYNOE SOURCE CHAT 05/01/13 04:07:09 5004 SUBROUTINE VHYNOE(UELEM,IZNOEU,IZUN,NDIM,XY,ITP,IEL) C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C CALCUL DE LA VITESSE REELE POUR UN NOEUD DU MAILLAGE EN C FORMULATION HYBRIDE C C ENTREES C IZNOEU POINTEUR C XELE(NDIM,NOEL) COORDONNES DES NOEUDS DE L ELEMENT CONSIDERE C IZUN POINTEUR FLUX AUX CENTRES DES FACES DE L ELEMENT C ITP TYPE DE L'ELEMENT CONSIDERE C XY coordonnees DU NOEUD POUR LEQUEL ON CALCULERA C LA VITESSE C SORTIE C UELEM VITESSE REELLE AU NOEUD INOELO C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C C IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) C C C SEGMENT IZNOEU REAL*8 XELE(IDIM,NOEL) INTEGER NOEGLO(NOEL) ENDSEGMENT SEGMENT IZUN REAL*8 UN(I1,I2,I3) ENDSEGMENT SEGMENT HYTRAV REAL*8 XEL(3,NOEL),SHP(6,NOEL),SHY(12,NOEL) REAL*8 ZJAC(NDIM,NDIM) ENDSEGMENT C C DIMENSION XY(3),UELEM(*),VECT(3) C C C FORMULATION HYBRIDE ON VA CALCULER LA VITESSE C REELLE AU NOEUD DU MAILLAGE CALL INITD(UELEM,NDIM,0.D0) NOEL=XELE(/2) SEGINI HYTRAV CALL SHAPE(XY(1),XY(2),XY(3),ITP,SHP,IRET) C write(6,*)'shp ',(shp(1,j),j=1,noel) DO 40 J=1,NOEL DO 35 I=1,NDIM XEL(I,J)=XELE(I,J) 35 CONTINUE 40 CONTINUE CALL MATJAC(XEL,SHP,NDIM,NOEL,ZJAC,DJAC) C write(6,*)' zjac',((zjac(i,j),i=1,ndim),j=1,ndim) NTYP=NUMHYB(ITP) CALL HYSHP(XY(1),XY(2),XY(3),NTYP,NOEL,12,SHY,IRET) C write(6,*)' shy ',((shy(i,j),i=1,ndim),j=1,noel) I2=UN(/2) DO 50 IDDL=1,I2 CALL INITD(VECT,NDIM,0.D0) DO 60 J=1,NDIM DO 55 I=1,NDIM VECT(I)=VECT(I)+ZJAC(I,J)*SHY(J,IDDL) 55 CONTINUE 60 CONTINUE COEF=UN(1,IDDL,IEL)/DJAC C write(6,*)' flux ',iddl,iel,UN(1,IDDL,IEL),coef,djac DO 65 I=1,NDIM UELEM(I)=UELEM(I)+COEF*VECT(I) 65 CONTINUE 50 CONTINUE SEGSUP HYTRAV RETURN END