1 : C INTCN1 SOURCE PV 09/03/12 21:25:19 6325 2 : SUBROUTINE INTCN1(IPVANO,IPGEOM,IPINTE,IPVAEQ) 3 : IMPLICIT INTEGER(I-N) 4 : IMPLICIT REAL*8(A-H,O-Z) 5 : ************************************************************************ 6 : * 7 : * I N T C N 1 8 : * ----------- 9 : * 10 : * FONCTION: 11 : * --------- 12 : * INTEGRATION NUMERIQUE DANS UN DOMAINE UNIDIMENSIONNEL DU PRODUIT: 13 : * COEF. * TRANSPOSEE( N ) 14 : * COEF. : GRANDEUR PHYSIQUE REPRESENTEE PAR UN CHAMELEM 15 : * N : FONCTIONS DE FORME DE L'ELEMENT MAILLANT LE DOMAINE 16 : * CONSIDERE 17 : * 18 : * MODULES UTILISES: 19 : * ----------------- 20 : * 21 : -INC CCOPTIO 22 : -INC CCREEL 23 : -INC SMCHAML 24 : -INC SMELEME 25 : -INC SMINTE 26 : -INC SMCOORD 27 : * 28 : * PARAMETRES: (E)=ENTREE (S)=SORTIE (+ = CONTENU DANS UN COMMUN) 29 : * ----------- 30 : * 31 : * IPVANO (E) POINTEUR SUR UN SEGMENT MELVAL CONTENANT LES 32 : * VALEURS NODALES DE NOTRE COEFFICIENT 33 : * IPGEOM (E) POINTEUR SUR UN OBJET MAILLAGE ELEMENTAIRE 34 : * DU DOMAINE D'INTEGRATION 35 : * IPINTE (E) POINTEUR SUR UN SEGMENT MINTE CONTENANT LES 36 : * CARACTERISTIQUES D'INTEGRATION DES FACES 37 : * +IDIM (E) VOIR CCOPTIO 38 : * +XZERO (E) VOIR CCREEL 39 : * +XPETIT (E) VOIR CCREEL 40 : * IPVAEQ (S) POINTEUR SUR UN SEGMENT MELVAL CONTENANT LES VALEURS 41 : * NODALES EQUIVALENTES (APRES INTEGRATION NUMERIQUE) 42 : * 43 : * VARIABLES: 44 : * ---------- 45 : * 46 : * XE(3,NBPTEL) = CORDONNEES DES ELEMENTS DANS LE REPERE GLOBAL 47 : * FACE = LONGUEUR DE DE L'ELEMENT CONSIDERE 48 : * A = TABLEAU DE TRAVAIL 49 : * 50 : SEGMENT,MMAT1 51 : REAL*8 XE(3,NBPTEL),A(NBPTEL,NBPTEL),SHP(6,NBPTEL) 52 : ENDSEGMENT 53 : * 54 : * CONSTANTES: 55 : * ----------- 56 : * 57 : PARAMETER ( O1=1.D0 ) 58 : PARAMETER ( O2=2.D0 ) 59 : * 60 : * REMARQUES: 61 : * ---------- 62 : * 63 : * L'UTILISATION DE CE S-P PRESUPPOSE UN PRE ET POST-TRAITEMENT 64 : * DES SEGMENTS MELVAL PASSES EN TANT QUE PARAMETRES 65 : * 66 : * AUTEUR, DATE DE CREATION: 67 : * ------------------------- 68 : * 69 : * DENIS ROBERT,LE 15 AVRIL 1988. 70 : * 71 : * LANGAGE: 72 : * -------- 73 : * 74 : * ESOPE + FORTRAN77 75 : * 76 : ************************************************************************ 77 : IF (IDIM.EQ.3) THEN 78 : * 79 : * OPTION INDISPONIBLE 80 : * 80 : CALL ERREUR(19) 81 : RETURN 82 : ENDIF 83 : * 84 : * ON RECUPERE LES VALEURS NODALES DU COEFFICIENT 85 : * 86 : MELVA1=IPVANO 87 : SEGACT,MELVA1 88 : NBPTE1=MELVA1.VELCHE(/1) 89 : NEL1=MELVA1.VELCHE(/2) 90 : * 91 : * ON RECUPERE LES CARACTERISTIQUES D'INTEGRATION DES FACES 92 : * 93 : MINTE=IPINTE 94 : SEGACT,MINTE 95 : NBPGAU=POIGAU(/1) 96 : * 97 : * ON RECUPERE UN DES MAILLAGES ELEMENTAIRES DE L'ENVELOPPE 98 : * 99 : MELEME=IPGEOM 100 : SEGACT,MELEME 101 : NBPTEL=NUM(/1) 102 : NEL=NUM(/2) 103 : * 104 : * INITIALISATION DU MELVAL QUI CONTIENDRA LES VALEURS EQUIVALENTES 105 : * 106 : N1PTEL=NBPTEL 107 : N1EL=NEL 108 : N2PTEL=0 109 : N2EL=0 110 : SEGINI,MELVAL 111 : IPVAEQ=MELVAL 112 : SEGINI,MMAT1 113 : * 114 : * BOUCLE SUR LES ELEMENTS 115 : * 116 : DO 10 IEL=1,NEL 117 : * 118 : * ON CHERCHE LES COORDONNEES DES ELEMENTS DANS LE REPERE GLOBAL 119 : * 119 : CALL DOXE(XCOOR,IDIM,NBPTEL,NUM,IEL,XE) 120 : * 121 : * CALCUL DE LA LONGUEUR DE LA FACE CONSIDEREE 122 : * 123 : C DLX=XZERO 124 : C DLY=XZERO 125 : C DO 20 IGAU=1,NBPGAU 126 : C DLONX=XZERO 127 : C DLONY=XZERO 128 : C DO 30 INOE=1,NBPTEL 129 : C DLONX=DLONX+SHPTOT(2,INOE,IGAU)*XE(1,INOE) 130 : C DLONY=DLONY+SHPTOT(2,INOE,IGAU)*XE(2,INOE) 131 : C 30 CONTINUE 132 : C* END DO 133 : CC DLX=DLX+DLONX*POIGAU(IGAU) 134 : CC DLY=DLY+DLONY*POIGAU(IGAU) 135 : C DLX= DLONX 136 : C DLY= DLONY 137 : C 20 CONTINUE 138 : C* END DO 139 : C FACE=SQRT(DLX**2+DLY**2) 140 : * 141 : * BOUCLES SUR LES POINTS DE GAUSS ET SUR LES NOEUDS 142 : * 142 : CALL ZERO(A,NBPTEL,NBPTEL) 143 : DO 40 IGAU=1,NBPGAU 144 : DLX=XZERO 145 : DLY=XZERO 146 : DLONX=XZERO 147 : DLONY=XZERO 148 : DO 30 INOE=1,NBPTEL 149 : DLONX=DLONX+SHPTOT(2,INOE,IGAU)*XE(1,INOE) 150 : DLONY=DLONY+SHPTOT(2,INOE,IGAU)*XE(2,INOE) 151 : 30 CONTINUE 152 : * END DO 153 : C DLX=DLX+DLONX*POIGAU(IGAU) 154 : C DLY=DLY+DLONY*POIGAU(IGAU) 155 : DLX= DLONX 156 : DLY= DLONY 157 : 158 : * END DO 159 : FACE=SQRT(DLX**2+DLY**2) 160 : AXIS=O1 161 : IF (IFOMOD.EQ.0) THEN 162 : * 163 : * CAS DES ELEMENTS AXISYMETRIQUES 164 : * 165 : DO 41 NP=1,NBPTEL 166 : SHP(1,NP)=SHPTOT(1,NP,IGAU) 167 : SHP(2,NP)=SHPTOT(2,NP,IGAU) 168 : SHP(3,NP)=SHPTOT(3,NP,IGAU) 169 : 41 CONTINUE 170 : * END DO 170 : CALL DISTRR(XE,SHP,NBPTEL,RR) 171 : AXIS=O2*XPI*RR 172 : ENDIF 173 : DO 50 INOE=1,NBPTEL 174 : DO 60 INO2=1,NBPTEL 175 : A(INOE,INO2)=A(INOE,INO2)+SHPTOT(1,INOE,IGAU)* 176 : 1 SHPTOT(1,INO2,IGAU)*POIGAU(IGAU)*AXIS*FACE 177 : 60 CONTINUE 178 : * END DO 179 : 50 CONTINUE 180 : * END DO 181 : 40 CONTINUE 182 : * END DO 183 : IEMIN=MIN(NEL1,IEL) 184 : DO 70 INOE=1,NBPTEL 185 : DO 80 INO2=1,NBPTEL 186 : INMIN=MIN(NBPTE1,INO2) 187 : VELCHE(INOE,IEL)=VELCHE(INOE,IEL)+MELVA1.VELCHE(INMIN,IEMIN)* 188 : 1 A(INO2,INOE) 189 : 80 CONTINUE 190 : * END DO 191 : 70 CONTINUE 192 : * END DO 193 : 10 CONTINUE 194 : * END DO 195 : SEGSUP,MMAT1 196 : SEGDES,MELEME,MELVA1,MINTE 197 : SEGDES,MELVAL 198 : * 199 : END 200 : 201 : 202 : 203 : 204 :
© Cast3M 2003 - All rights reserved.
Disclaimer