bjo2
C BJO2 SOURCE CHAT 05/01/12 21:40:22 5004 . BGENE,DJAC,IRRT) C======================================================================= C C CALCUL DE LA MATRICE B = TETA * ( N , -N ) C ET DU JACOBIEN EN IGAU POUR UN JOINT 2D C ROUTINE FORTRAN PUR C CODE S. FELIX MAI 92 C======================================================================= C INPUT C IGAU = NUMERO DU POINT DE GAUSS C MFR = NUMERO DE LA FORMULATION C XEL = COORDONNEES DES NOEUDS DE L'ELEMENT C BPSS = MATRICE DE PASSAGE C BPSS(,) = AXE S1 C BPSS(,) = AXE SN C SHPTOT= FONCTIONS DE FORME ET DERIVEES DANS L'ESPACE DE REFERENCE C SHPTOT(1, ) = FONCTION DE FORME C SHPTOT(2, ) = DERIVEES PAR RAPPORT A QSI C SHPTOT(3, ) = DERIVEES PAR RAPPORT A ETA C OUTPUT C SHP = FONCTIONS DE FORME ET DERIVEES DANS L'ESPACE GEOMETRIQUE C SHP(1, ) = FONCTION DE FORME C SHP(2, ) = DERIVEES PAR RAPPORT A X LOCAL C SHP(3, ) = DERIVEES PAR RAPPORT A Y LOCAL C DJAC = JACOBIEN AU POINT D'INTEGRATION IGAU C BGENE = MATRICE B AU POINT D'INTEGRATION IGAU C IRRT = DIFFERENT DE ZERO SI ERREUR C CONSTANTES C NBNO = NOMBRE DE NOEUDS C LRE = NOMBRE DE COLONNES DE LA MATRICE B C NST = NOMBRE DE COMPOSANTES DE CONTRAINTES C C REMARQUE : CE SOUS-PROGRAMME EST VALABLE EN CONTRAINTES PLANES, C DEFORMATIONS PLANES ET AXISYMETRIQUES. LA MATRICE C BGENE = TETA ( Ntop , - Nbot ) C EST UNE MATRICE (2x8). EN EFFET, TETA EST UNE MATRICE C (2x2), ET ( Ntop , - Nbot ) EST UNE MATRICE (2x8). C LA MATRICE TETA EST ICI APPELEE BPSS. C C======================================================================= IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) DIMENSION BPSS(3,3) C IRRT = 0 C C MATRICE JACOBIENNE C SHP(1,I) = SHPTOT(1,I,IGAU) SHP(2,I) = SHPTOT(2,I,IGAU) 1 CONTINUE C C !!!!!! ATTENTION : IL FAUT CALCULER LE JACOBIEN AVEC NBNO=2 !!!!!! C IL NE FAUT SURTOUT PAS METTRE NBNO=4 CAR CA FAUSSE ALORS C LES RESULTATS ... NBNO DOIT ETRE EGAL A 4 CAR IL YA 4 NOEUDS C IF (DJAC.LT.0.0D0) THEN IRRT = 1 ELSE IF (DJAC.EQ.0.0D0) THEN IRRT = 2 ENDIF C C MATRICE B C C PP ATTENTION: IL FAUT PEUT-ETRE RESPECTER LA NUMEROTATION LOCALE DES C NOEUDS C DO 2 I=1,2 DO 3 J=1,2 DO 4 K=1,2 L=2*(J-1)+K C PP M=L+4 M=L+2*(2*(2-J)+1) BGENE(I,L)=BPSS(I,K)*SHP(1,J) BGENE(I,M)=-BGENE(I,L) 4 CONTINUE 3 CONTINUE 2 CONTINUE C RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales