C TSEG2A SOURCE CHAT 05/01/13 03:53:27 5004 SUBROUTINE TSEG2A(POINTS,QSIGAU,POIGAU,SHPTOT) IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) ************************************************************************ * * T S E G 2 A * ----------- * * FONCTION: ON ACQUIERT: * --------- - LES COORDONNEES INTRINSEQUES * - LES FONCTIONS DE FORME ET LEURS DERIVEES * POUR L'ELEMENT DE THERMIQUE SEG2. * * MODULES UTILISES: * ----------------- * -INC CCOPTIO * * PARAMETRES: (E)=ENTREE (S)=SORTIE (+ = CONTENU DANS UN COMMUN) * ----------- * * POINTS (E) CHAINE DE CARACTERES: * 'NOEUDS' SI ON VEUT LES VALEURS AUX NOEUDS * 'GAUSS' POUR LES VALEURS AUX POINTS DE GAUSS. * QSIGAU (S) | * POIGAU (S) POIDS D'INTEGRATION,SI ON A 'GAUSS'. * SHPTOT (S) FONCTIONS DE FORME ET LEURS DERIVEES. * REAL*8 QSIGAU(2),POIGAU(2) REAL*8 SHPTOT(6,2,2) CHARACTER*(*) POINTS * * CONSTANTES: * ----------- * * PARAMETER ( O2=2.D0 ) PARAMETER ( O1=1.D0 ) PARAMETER ( O5=0.5D0 ) PARAMETER ( O577=0.577350269189626D0 ) * * * AUTEUR, DATE DE CREATION: * ------------------------- * * DENIS ROBERT,LE 03/02/88. * * LANGAGE: * -------- * * FORTRAN77 * ************************************************************************ * IF (POINTS(1:5).EQ.'NOEUD') GOTO 66 IF (POINTS(1:5).NE.'GAUSS') GOTO 100 * * COORDONNEES DES 2 POINTS DE GAUSS * NBPGAU=2 NBNO=2 QSIGAU(1)=-O577 QSIGAU(2)= O577 POIGAU(1)=O1 POIGAU(2)=POIGAU(1) GOTO 2 * * COORDONNEES DES NOEUDS * 66 CONTINUE NBNO=2 NBPGAU=NBNO QSIGAU(1)=-O1 QSIGAU(2)=O1 POIGAU(1)=O1 POIGAU(2)=POIGAU(1) * * FONCTIONS DE FORME ET LEURS DERIVEES * 2 DO 1 I=1,NBPGAU XI=QSIGAU(I) SHPTOT(1,1,I)=(O1-XI)/O2 SHPTOT(1,2,I)=(O1+XI)/O2 * SHPTOT(2,1,I)=-O5 SHPTOT(2,2,I)= O5 1 CONTINUE RETURN 100 CONTINUE CALL ERREUR(19) * END