1 : C VITAPP SOURCE CHAT 05/01/13 04:07:33 5004 2 : SUBROUTINE VITAPP(NDIM,ITY1,ITYG,NOEL1 3 : $ ,NOUN,DIAM,UELEM,XDEP,UREF,UREEL,IZSH,ITEST) 4 : 5 : **************************************************************************** 6 : *** SP 'VITAPP' : calcule les vitesses aux pts calcul reel et reference 7 : *** par approximation en utilisant les fctions base ds element de reference. 8 : *** 9 : *** APPELES 1 = 'HYSHP', 'MATMAT' 10 : *** APPELES 2 = 'JCBIEN' 11 : *** 12 : *** E= 'NDIM' dimension de l'espace 13 : *** 'ITY1' entier caracterisant le type de l'element 14 : *** 'ITYG' entier caracterisant la geometrie de l'element 15 : *** 'NOEL1' nombre de noeuds de l'element considere 16 : *** 'NOUN' nombre de flux consideres 17 : *** 'DIAM' "longueur caracteristique" de l'element 18 : *** 'UELEM' valeurs des flux aux faces 19 : *** 'XDEP' coordonnees reference du pt de depart 20 : *** 21 : *** S = 'UREF' vitesse dans element reference au pt calcul 22 : *** 'UREEL' vitesse dans element reel au pt calcul 23 : *** 'ITEST' vaut 0 quand le Jacobien est nul, sinon 1 24 : *** 25 : *** E/S = 'IZSH' segment content pour l'elemt considere et au pt depart : 26 : *** 'XYZL' coordonnees reelles des noeuds (E) 27 : *** 'SHP' fonctions de forme et derivees ds elemt ref (S) 28 : *** 'SHY' fonctions de base et derivees ds elemt ref (S) 29 : *** 30 :
Warning: preg_replace(): Compilation failed: unmatched parentheses at offset 6 in C:\xampp\htdocs\cast3m_kit_local_fr_en_2014\sources.php on line 158
31 : *** 32 : *** Auteur Cyril Nou 33 : **************************************************************************** 34 : 35 : IMPLICIT INTEGER(I-N) 36 : IMPLICIT REAL*8 (A-H,O-Z) 37 : -INC CCREEL 38 : SEGMENT IZSH 39 : REAL*8 SHP(6,MNO9),SHY(12,MNO9),XYZL(3,MNO9) 40 : ENDSEGMENT 41 : DIMENSION XDEP(3),UELEM(NOUN),XJAC2(3,3),UREF(3),UREEL(3) 42 : 43 : ************************************************ 44 : *** CALCUL VITESSE REFERENCE AU PT DE CALCUL *** 45 : ************************************************ 46 : 47 : *** initialisation de depart 48 : ITEST=1 49 : DO 10 I=1,3 50 : UREF(I)=0.D0 51 : UREEL(I)=0.D0 52 : 10 CONTINUE 53 : ITYH=NUMHYB(ITYG) 54 : *** calcul des fonctions de base au pt de calcul de reference 54 : CALL HYSHP(XDEP(1),XDEP(2),XDEP(3),ITYH,NOUN,12,SHY,IRET) 55 : DO 20 I=1,NDIM 56 : DO 30 K=1,NOUN 57 : *** calcul de la vitesse au pt de calcul de reference 58 : UREF(I)=UREF(I)+SHY(I,K)*UELEM(K) 59 : 30 CONTINUE 60 : 20 CONTINUE 61 : 62 : ****************************************************** 63 : *** PASSAGE A VITESSE AU PT DE CALCUL REEL ASSOCIE *** 64 : ****************************************************** 65 : 66 : *** calcul matrice jacobienne et jacobien au pt calcul 66 : CALL JCBIEN(XDEP,ITY1,NDIM,NOEL1,XJAC2,DET2,IZSH) 67 : *** calcul de la variable pour adimensionner 'DET2' 68 : ADIM=1.D0 69 : IF (NDIM.EQ.2) THEN 70 : ADIM=DIAM**2 71 : ELSEIF (NDIM.EQ.3) THEN 72 : ADIM=DIAM**3 73 : ENDIF 74 : *** chgt de variable espace ref -> espace reel 75 : IF (ABS(DET2/ADIM).GE.XZPREC) THEN 75 : CALL MATMAT(XJAC2,UREF,3,3,1,UREEL) 76 : DO 40 I=1,NDIM 77 : UREEL(I)=UREEL(I)/ABS(DET2) 78 : 40 CONTINUE 79 : ELSE 80 : ITEST=0 81 : ENDIF 82 : 83 : RETURN 84 : END 85 : 86 : 87 : 88 :
© Cast3M 2003 - All rights reserved.
Disclaimer