xref: /phasta/phSolver/common/perprep.f (revision 595995161822a203c8467e0e4a253d7bd7d6df32)
1*59599516SKenneth E. Jansen        module periodicity
2*59599516SKenneth E. Jansen
3*59599516SKenneth E. Jansen        real*8, allocatable :: rcount(:)
4*59599516SKenneth E. Jansen        end module
5*59599516SKenneth E. Jansen
6*59599516SKenneth E. Jansen
7*59599516SKenneth E. Jansen       subroutine setper (nshg)
8*59599516SKenneth E. Jansen
9*59599516SKenneth E. Jansen       use periodicity
10*59599516SKenneth E. Jansen
11*59599516SKenneth E. Jansen       allocate (rcount(nshg))
12*59599516SKenneth E. Jansen
13*59599516SKenneth E. Jansen       return
14*59599516SKenneth E. Jansen       end
15*59599516SKenneth E. Jansen
16*59599516SKenneth E. Jansen       subroutine perprep (iBC, iper,nshg)
17*59599516SKenneth E. Jansen
18*59599516SKenneth E. Jansen       use periodicity
19*59599516SKenneth E. Jansen
20*59599516SKenneth E. Jansen       dimension iBC(nshg),
21*59599516SKenneth E. Jansen     &           iper(nshg)
22*59599516SKenneth E. Jansen
23*59599516SKenneth E. Jansenc
24*59599516SKenneth E. Jansenc..... calculate the inverse of the number of slaves + 1
25*59599516SKenneth E. Jansenc
26*59599516SKenneth E. Jansen       one=1.00000000000
27*59599516SKenneth E. Jansen       rcount=one
28*59599516SKenneth E. Jansen       do j = 1,nshg
29*59599516SKenneth E. Jansen          if (btest(iBC(j),10)) then
30*59599516SKenneth E. Jansen             i = iper(j)
31*59599516SKenneth E. Jansen             rcount(i) = rcount(i) + one
32*59599516SKenneth E. Jansen          endif
33*59599516SKenneth E. Jansen       enddo
34*59599516SKenneth E. Jansen       do k=1,nshg
35*59599516SKenneth E. Jansen          if(rcount(k).ne.one) then
36*59599516SKenneth E. Jansen             rcount(k)=one/rcount(k)
37*59599516SKenneth E. Jansen          endif
38*59599516SKenneth E. Jansen       enddo
39*59599516SKenneth E. Jansen
40*59599516SKenneth E. Jansenc
41*59599516SKenneth E. Jansenc.... return
42*59599516SKenneth E. Jansenc
43*59599516SKenneth E. Jansen       return
44*59599516SKenneth E. Jansen       end
45