krcom2
C KRCOM2 SOURCE CHAT 05/01/13 01:06:03 5004 IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) C C RECOMBINAISON C ------------- C CONTRIBUTION DUE A UN PATCH DONNE C----------------------------------------------------------------------- SEGMENT SKRESO INTEGER KFC,NRES,KES,KIMP ENDSEGMENT C KFC : NOMBRE DE FACES H.C C NRES: RESOLUTION C KES : DIM ESPACE C KIMP: IMPRESSION C----------------------------------------------------------------------- C----------------------------------------------------------------------- SEGMENT SHC2D INTEGER IR(NR),KA(NFC),IM(NFC,NFC) INTEGER KRO(NFC,NES),KSI(NFC,NES) REAL*8 V(NES,NR),G(NR) ENDSEGMENT C DESCRIPTION DU H.C DE PROJECTION C -------------------------------- C V : DIRECTION UNITAIRE DES CELLULES C G : FACTEUR DE FORME ASSOCIE C IR: CORRESPONDANCE C KRO , KSI : POUR LE CHANGEMENT DE REPERE C IM : REFERENCE C NR : RESOLUTION C NFC : NOMBRE DE FACES C----------------------------------------------------------------------- SEGMENT SKFAC2 INTEGER NUK(MS,MFACE),KPATCH(MFACE) INTEGER NCELL(MFACE) REAL*8 U(3,MFACE),S(MFACE) REAL*8 FF1(MFACE) ENDSEGMENT SEGMENT IPATCH REAL*8 GP(MSP,NPATCH),SP(NPATCH) ENDSEGMENT C C DESCRIPTION DES ELEMENTS C ------------------------ C MFACE : NOMBRE DE FACES C NUK : CONNECTIVITES C U : NORMALE UNITAIRE ET EQUATION DU PLAN DE L'ELEMENT C S : SURFACE C KVU : VISIBILITE A PRIORI C FF : FACTEURS DE FORME C FF1 : TRAVAIL C NCELL : NOMBRE TOTAL DE CELLULES VUES PAR UN POINT C KPATCH: POINTEUR SUR IPATCH C NPATCH: NOMBRE DE POINTS SUR L'ELEMENT (REDECOUPAGE) C GP : COORDONNEES DES POINTS C SP : ET SURFACES C----------------------------------------------------------------------- SEGMENT SKBUF2 INTEGER NUMF(NFC,NOC,NR),NTYP(NFC,NR) REAL*8 ZB(NFC,NR),PSC(NFC,NR) ENDSEGMENT C C BUFFER ASSOCIE AU H.C C --------------------- C NUMF : INDICE DE LE DERNIERE FACE RENCONTREE C NTYP : TYPES ASSOCIES C ZB : PROFONDEUR C PSC : PRODUIT SCALAIRE (NORMALE.DIRECTION CELLULE) C----------------------------------------------------------------------- MFACE = FF1(/1) DO 400 K = 1,MFACE FF1(K) = 0. 400 CONTINUE NC = 0 DO 500 NF = 1,KFC DO 501 I = 1,NRES NTY = NTYP(NF,I) IF ( (NTY.NE.0) .AND. (PSC(NF,I).GT.-1.) ) THEN NC = NC + 1 PROD = PSC(NF,I)*G(I) DO 100 KT=1,NTY K = NUMF(NF,KT,I) FF1(K) = FF1(K) + PROD/NTY 100 CONTINUE ENDIF 501 CONTINUE 500 CONTINUE NCELL(K1) = NC IF (KIMP.GE.4) THEN WRITE(6,1000) K1,SP1,NCELL(K1),FFT 1000 FORMAT(1X,' K1 ',I4,' SP1 ',E12.5,' NCELL ',I6,' FFT ',F10.5) ENDIF DO 600 K = 1,MFACE FF1(K) = SP1 * FF1(K) 600 CONTINUE C RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales