28 SUBROUTINE polyhedr(IPOLY, RPOLY , POLB , NPOLB, POLH,
29 . NPOLH, NRPMAX , NPHMAX, IBRIC, LMIN,
30 . INFO , NPOLHMAX, NPPMAX)
34#include "implicit_f.inc"
38 INTEGER NPPMAX, (6+NPPMAX,*), POLB(*), NPOLB, NPHMAX,
39 . POLH(NPHMAX+2,*),NPOLH, NRPMAX, IBRIC, INFO, NPOLHMAX
41 . rpoly(nrpmax,*), lmin
45 INTEGER I, ITAG(NPOLB), ICMAX, ICUR, II, J, JJ, K, KK, ISTOP,
46 . L, LL, ICUR_OLD, ITY, JMIN, PMIN, POLD
48 . x1, y1, z1, x2, y2, z2, xx1, yy1, zz1, xx2, yy2, zz2,
49 . dd11, dd12, dd21, dd22, tole
55 tole=epsilon(zero)*0.5*lmin*lmin
72 IF (j/=ipoly(2,ii))
THEN
77 x1=rpoly(4+3*(j-1)+1,ii)
78 y1=rpoly(4+3*(j-1)+2,ii)
79 z1=rpoly(4+3*(j-1)+3,ii)
80 x2=rpoly(4+3*(jj-1)+1,ii)
81 y2=rpoly(4+3*(jj-1)+2,ii)
82 z2=rpoly(4+3*(jj-1)+3,ii)
88 DO WHILE (istop==0.AND.l<ipoly(2,kk))
90 IF (l/=ipoly(2,kk))
THEN
95 xx1=rpoly(4+3*(l-1)+1,kk)
96 yy1=rpoly(4+3*(l-1)+2,kk)
97 zz1=rpoly(4+3*(l-1)+3,kk)
98 xx2=rpoly(4+3*(ll-1)+1,kk)
99 yy2=rpoly(4+3*(ll-1)+2,kk)
100 zz2=rpoly(4+3*(ll-1)+3,kk)
101 dd11=(xx1-x1)**2+(yy1-y1)**2+(zz1-z1)**2
102 dd21=(xx2-x1)**2+(yy2-y1)**2+(zz2-z1)**2
103 dd12=(xx1-x2)**2+(yy1-y2)**2+(zz1-z2)**2
104 dd22=(xx2-x2)**2+(yy2-y2)**2+(zz2-z2)**2
105 IF ((dd11<=tole.AND.dd22<=tole).OR.
106 . (dd21<=tole.AND.dd12<=tole)) istop=l
115 IF (itag(l)==icur_old) itag(l)=icur
127 IF (itag(j)==i) ii=ii+1
129 IF (ii/=0) npolh=npolh+1
131 IF (npolh>npolhmax)
THEN
141 IF (itag(j)==i) ii=ii+1
158 IF (ipoly(5,jj)==0)
THEN
169 DO k=j+1,polh(1,npolh)
170 IF (polh(2+k,npolh)<pmin)
THEN
177 polh(2+jmin,npolh)=pold
subroutine polyhedr(ipoly, rpoly, polb, npolb, polh, npolh, nrpmax, nphmax, ibric, lmin, info, npolhmax, nppmax)
subroutine fvmesh1(ibuf, elem, x, ivolu, bric, xb, rvolu, nel, neli, nbric, tbric, sfac, dxm, nba, nela, tba, tfaca, tagels, ibufa, elema, tagela, ixs, id, titr, nb_node, ityp)