xref: /phasta/phSolver/common/BCprofile2.f (revision 712d3df0b59ebebaaeaea358162c8d2c043c6e08)
1*10167291SKenneth E. Jansenc..............................................................................
2*10167291SKenneth E. Jansen
3*10167291SKenneth E. Jansen        subroutine SetUniOutPres(BC)
4*10167291SKenneth E. Jansen
5*10167291SKenneth E. Jansen        include "common.h"
6*10167291SKenneth E. Jansen        include "mpif.h"
7*10167291SKenneth E. Jansen        include "auxmpi.h"
8*10167291SKenneth E. Jansen
9*10167291SKenneth E. Jansen        integer BCfaceNode(nshg)
10*10167291SKenneth E. Jansen        integer nBCfaceNode
11*10167291SKenneth E. Jansen        integer isfID
12*10167291SKenneth E. Jansen        real*8 BC(nshg,ndofBC)
13*10167291SKenneth E. Jansen
14*10167291SKenneth E. Jansen        if(myrank.eq.0)write(*,*)'Outlet pressure:',outPres1
15*10167291SKenneth E. Jansen        isfID=isetOutPres
16*10167291SKenneth E. Jansen        call sfID2np(isfID,nBCfaceNode,BCfaceNode)
17*10167291SKenneth E. Jansen        if(nBCfaceNode .gt. 0)then
18*10167291SKenneth E. Jansen           do i=1,nBCfaceNode
19*10167291SKenneth E. Jansen             nn=BCfaceNode(i)
20*10167291SKenneth E. Jansen             BC(nn,1)=outPres1
21*10167291SKenneth E. Jansen           enddo
22*10167291SKenneth E. Jansen        endif
23*10167291SKenneth E. Jansen
24*10167291SKenneth E. Jansen        return
25*10167291SKenneth E. Jansen        end
26*10167291SKenneth E. Jansen
27*10167291SKenneth E. Jansenc..............................................................................
28*10167291SKenneth E. Jansen        subroutine setInlet_Duct(x,BC,iTurbWall)
29*10167291SKenneth E. Jansen
30*10167291SKenneth E. Jansen        include "common.h"
31*10167291SKenneth E. Jansen        include "mpif.h"
32*10167291SKenneth E. Jansen        include "auxmpi.h"
33*10167291SKenneth E. Jansen
34*10167291SKenneth E. Jansen        real*8 BC(nshg,ndofBC)
35*10167291SKenneth E. Jansen        real*8 x(nshg,nsd)
36*10167291SKenneth E. Jansen        integer i,nn
37*10167291SKenneth E. Jansen        real*8 xcoor,ycoor,zcoor
38*10167291SKenneth E. Jansen        real ry,rz
39*10167291SKenneth E. Jansen        real*8 Temp,xVel
40*10167291SKenneth E. Jansen        integer BCfaceNode(nshg)
41*10167291SKenneth E. Jansen        integer nBCfaceNode
42*10167291SKenneth E. Jansen        integer isfID
43*10167291SKenneth E. Jansen        integer iTurbWall(nshg)
44*10167291SKenneth E. Jansen
45*10167291SKenneth E. Jansen        if(myrank.eq.0)write(*,*)'Inlet surf:',isetInlet_Duct
46*10167291SKenneth E. Jansen
47*10167291SKenneth E. Jansen        isfID=isetInlet_Duct
48*10167291SKenneth E. Jansen        call sfID2np(isfID,nBCfaceNode,BCfaceNode)
49*10167291SKenneth E. Jansen        if(nBCfaceNode .gt. 0)then
50*10167291SKenneth E. Jansen          do i=1,nBCfaceNode
51*10167291SKenneth E. Jansen            nn=BCfaceNode(i)
52*10167291SKenneth E. Jansen            if(iTurbWall(nn).eq.0)then
53*10167291SKenneth E. Jansen
54*10167291SKenneth E. Jansen              xcoor=x(nn,1)
55*10167291SKenneth E. Jansen              ycoor=x(nn,2)
56*10167291SKenneth E. Jansen              zcoor=x(nn,3)
57*10167291SKenneth E. Jansenc...........................
58*10167291SKenneth E. Jansen
59*10167291SKenneth E. Jansenc Contraction Square Length is 46.25 inch, 0.587375 = 46.25/2*0.0254
60*10167291SKenneth E. Jansenc Inlet Vel is computed based on throat Mach 0.43
61*10167291SKenneth E. Jansenc Inlet Temp is 330K, wall temp is 317K
62*10167291SKenneth E. Jansen
63*10167291SKenneth E. Jansen              if(ycoor<(-0.587375+1.0e-4))then
64*10167291SKenneth E. Jansen               ry=(ycoor+0.587375)/1.0e-4
65*10167291SKenneth E. Jansen              elseif(ycoor>(0.587375-1.0e-4))then
66*10167291SKenneth E. Jansen               ry=(0.587375-ycoor)/1.0e-4
67*10167291SKenneth E. Jansen              else
68*10167291SKenneth E. Jansen               ry=1.0
69*10167291SKenneth E. Jansen              endif
70*10167291SKenneth E. Jansen
71*10167291SKenneth E. Jansen              if(zcoor<(-0.587375+1.0e-4))then
72*10167291SKenneth E. Jansen               rz=(zcoor+0.587375)/1.0e-4
73*10167291SKenneth E. Jansen              elseif(zcoor>(0.587375-1.0e-4))then
74*10167291SKenneth E. Jansen               rz=(0.587375-zcoor)/1.0e-4
75*10167291SKenneth E. Jansen              else
76*10167291SKenneth E. Jansen               rz=1.0
77*10167291SKenneth E. Jansen              endif
78*10167291SKenneth E. Jansen
79*10167291SKenneth E. Jansen              ry=max(0.0,ry)
80*10167291SKenneth E. Jansen              rz=max(0.0,rz)
81*10167291SKenneth E. Jansen
82*10167291SKenneth E. Jansen              xVel = 1.513158*ry*rz
83*10167291SKenneth E. Jansenc              xVel = 0.1*ry*rz
84*10167291SKenneth E. Jansen              Temp = 317.0+13.0*ry*rz
85*10167291SKenneth E. Jansenc..........................................
86*10167291SKenneth E. Jansen              BC(nn,2) = Temp   !Temp
87*10167291SKenneth E. Jansen              BC(nn,3) = xVel   ! set and scale x velocity
88*10167291SKenneth E. Jansen              BC(nn,4) = 0
89*10167291SKenneth E. Jansen              BC(nn,5) = 0
90*10167291SKenneth E. Jansen            endif
91*10167291SKenneth E. Jansen          enddo
92*10167291SKenneth E. Jansen         endif
93*10167291SKenneth E. Jansen
94*10167291SKenneth E. Jansen        return
95*10167291SKenneth E. Jansen        end
96*10167291SKenneth E. Jansen
97