1*10167291SKenneth E. Jansen subroutine npSucPatch(nsfnp,nmap) 2*10167291SKenneth E. Jansen 3*10167291SKenneth E. Jansenccc 4*10167291SKenneth E. Jansenc output: nsfnp, number of the nodal points which lie on the surface, local for one process 5*10167291SKenneth E. Jansenc nmap, a map from nsfnp to nshg, map the node on the surface to the global nodal numbering for one process 6*10167291SKenneth E. Jansenc 7*10167291SKenneth E. Jansenccc 8*10167291SKenneth E. Jansen use pointer_data 9*10167291SKenneth E. Jansen use wallData 10*10167291SKenneth E. Jansen include "common.h" 11*10167291SKenneth E. Jansen include "mpif.h" 12*10167291SKenneth E. Jansen integer nsfnp 13*10167291SKenneth E. Jansen integer nmap(nshg) 14*10167291SKenneth E. Jansen 15*10167291SKenneth E. Jansen 16*10167291SKenneth E. Jansenc--- Start to find surface nodes by looking for nonzero wall normals --- c 17*10167291SKenneth E. Jansen nsfnp=0 18*10167291SKenneth E. Jansen do ind = 1, nshg 19*10167291SKenneth E. Jansen wnrmsq = wnorm(ind,1)**2 + wnorm(ind,2)**2 + wnorm(ind,3)**2 20*10167291SKenneth E. Jansen if(wnrmsq.gt.pt5) then 21*10167291SKenneth E. Jansen nsfnp=nsfnp+1 22*10167291SKenneth E. Jansen nmap(nsfnp)=ind 23*10167291SKenneth E. Jansen endif 24*10167291SKenneth E. Jansen enddo 25*10167291SKenneth E. Jansen 26*10167291SKenneth E. Jansen return 27*10167291SKenneth E. Jansen end 28