51 arclen12,arclen34,arclen56, &
65 LOGICAL :: boundmoved(6), edgemoved(12)
67 REAL(RFREAL),
POINTER :: arclen12(:,:), arclen34(:,:), arclen56(:,:)
68 REAL(RFREAL),
POINTER :: dnode(:,:), xyzold(:,:)
70 TYPE(t_region
) :: region
73 INTEGER :: ibound, l1, l2
77 INTEGER :: l1b, l1e, l2b, l2e, lc, ijkn, ijke(4), ijkem(4), inoff, ijnoff
78 INTEGER :: switch(6,9)
82 REAL(RFREAL) :: arclen(4), ds(4),
s(4)
83 REAL(RFREAL) :: corner(3,8), e1(3), e2(3), e3(3), e4(3), &
84 p1(3), p2(3), p3(3), p4(3), dn(3)
89 'RFLO_BoundaryDeformation.F90' )
114 corner(:,2) = dnode(:,indijk(
ipnbeg,
jpnbeg,kpnend,inoff,ijnoff))
115 corner(:,3) = dnode(:,indijk(
ipnbeg,
jpnend,kpnend,inoff,ijnoff))
118 corner(:,6) = dnode(:,indijk(
ipnend,
jpnbeg,kpnend,inoff,ijnoff))
119 corner(:,7) = dnode(:,indijk(
ipnend,
jpnend,kpnend,inoff,ijnoff))
125 IF ((.NOT.boundmoved(ibound)) .AND. &
126 (edgemoved(switch(ibound,1)) .OR. edgemoved(switch(ibound,2)) .OR. &
127 edgemoved(switch(ibound,3)) .OR. edgemoved(switch(ibound,4))))
THEN
129 l1b = switch(ibound,5)
130 l1e = switch(ibound,6)
131 l2b = switch(ibound,7)
132 l2e = switch(ibound,8)
133 lc = switch(ibound,9)
135 IF (ibound == 1)
THEN
140 ELSE IF (ibound == 2)
THEN
145 ELSE IF (ibound == 3)
THEN
150 ELSE IF (ibound == 4)
THEN
155 ELSE IF (ibound == 5)
THEN
160 ELSE IF (ibound == 6)
THEN
173 IF (ibound==1 .OR. ibound==2)
THEN
174 ijkn = indijk(lc,l1 ,l2 ,inoff,ijnoff)
175 ijke(1) = indijk(lc,
jpnbeg,l2 ,inoff,ijnoff)
176 ijkem(1) = indijk(lc,
jpnbeg,l2-1 ,inoff,ijnoff)
177 ijke(2) = indijk(lc,
jpnend,l2 ,inoff,ijnoff)
178 ijkem(2) = indijk(lc,
jpnend,l2-1 ,inoff,ijnoff)
179 ijke(3) = indijk(lc,l1 ,
kpnbeg,inoff,ijnoff)
180 ijkem(3) = indijk(lc,l1-1 ,
kpnbeg,inoff,ijnoff)
181 ijke(4) = indijk(lc,l1 ,kpnend,inoff,ijnoff)
182 ijkem(4) = indijk(lc,l1-1 ,kpnend,inoff,ijnoff)
183 arclen(1) = arclen56(lc,
jpnbeg)
184 arclen(2) = arclen56(lc,
jpnend)
185 arclen(3) = arclen34(
kpnbeg,lc)
186 arclen(4) = arclen34(kpnend,lc)
187 ELSE IF (ibound==3 .OR. ibound==4)
THEN
188 ijkn = indijk(l2 ,lc,l1 ,inoff,ijnoff)
189 ijke(1) = indijk(l2 ,lc,
kpnbeg,inoff,ijnoff)
190 ijkem(1) = indijk(l2-1 ,lc,
kpnbeg,inoff,ijnoff)
191 ijke(2) = indijk(l2 ,lc,kpnend,inoff,ijnoff)
192 ijkem(2) = indijk(l2-1 ,lc,kpnend,inoff,ijnoff)
193 ijke(3) = indijk(
ipnbeg,lc,l1 ,inoff,ijnoff)
194 ijkem(3) = indijk(
ipnbeg,lc,l1-1 ,inoff,ijnoff)
195 ijke(4) = indijk(
ipnend,lc,l1 ,inoff,ijnoff)
196 ijkem(4) = indijk(
ipnend,lc,l1-1 ,inoff,ijnoff)
197 arclen(1) = arclen12(lc,
kpnbeg)
198 arclen(2) = arclen12(lc,kpnend)
199 arclen(3) = arclen56(
ipnbeg,lc)
200 arclen(4) = arclen56(
ipnend,lc)
201 ELSE IF (ibound==5 .OR. ibound==6)
THEN
202 ijkn = indijk(l1 ,l2 ,lc,inoff,ijnoff)
203 ijke(1) = indijk(
ipnbeg,l2 ,lc,inoff,ijnoff)
204 ijkem(1) = indijk(
ipnbeg,l2-1 ,lc,inoff,ijnoff)
205 ijke(2) = indijk(
ipnend,l2 ,lc,inoff,ijnoff)
206 ijkem(2) = indijk(
ipnend,l2-1 ,lc,inoff,ijnoff)
207 ijke(3) = indijk(l1 ,
jpnbeg,lc,inoff,ijnoff)
208 ijkem(3) = indijk(l1-1 ,
jpnbeg,lc,inoff,ijnoff)
209 ijke(4) = indijk(l1 ,
jpnend,lc,inoff,ijnoff)
210 ijkem(4) = indijk(l1-1 ,
jpnend,lc,inoff,ijnoff)
211 arclen(1) = arclen34(lc,
ipnbeg)
212 arclen(2) = arclen34(lc,
ipnend)
213 arclen(3) = arclen12(
jpnbeg,lc)
214 arclen(4) = arclen12(
jpnend,lc)
218 sqrt((xyzold(xcoord,ijke(1))-xyzold(xcoord,ijkem(1)))**2 + &
219 (xyzold(ycoord,ijke(1))-xyzold(ycoord,ijkem(1)))**2 + &
220 (xyzold(zcoord,ijke(1))-xyzold(zcoord,ijkem(1)))**2)
222 sqrt((xyzold(xcoord,ijke(2))-xyzold(xcoord,ijkem(2)))**2 + &
223 (xyzold(ycoord,ijke(2))-xyzold(ycoord,ijkem(2)))**2 + &
224 (xyzold(zcoord,ijke(2))-xyzold(zcoord,ijkem(2)))**2)
228 sqrt((xyzold(xcoord,ijke(3))-xyzold(xcoord,ijkem(3)))**2 + &
229 (xyzold(ycoord,ijke(3))-xyzold(ycoord,ijkem(3)))**2 + &
230 (xyzold(zcoord,ijke(3))-xyzold(zcoord,ijkem(3)))**2)
232 sqrt((xyzold(xcoord,ijke(4))-xyzold(xcoord,ijkem(4)))**2 + &
233 (xyzold(ycoord,ijke(4))-xyzold(ycoord,ijkem(4)))**2 + &
234 (xyzold(zcoord,ijke(4))-xyzold(zcoord,ijkem(4)))**2)
235 s(:) = ds(:)/arclen(:)
236 e1(:) = dnode(:,ijke(1))
237 e2(:) = dnode(:,ijke(2))
238 e3(:) = dnode(:,ijke(3))
239 e4(:) = dnode(:,ijke(4))
240 CALL
rflo_tfint2d(
s(1),
s(2),
s(3),
s(4),e1,e2,e3,e4,
p1,p2,p3,p4,dn )
241 dnode(:,ijkn) = dn(:)
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE SUBROUTINE jpnbeg
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE SUBROUTINE kpnbeg
subroutine rflo_tfint2d(s1, s2, s3, s4, e1, e2, e3, e4, p1, p2, p3, p4, xyz)
subroutine registerfunction(global, funName, fileName)
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE SUBROUTINE jpnend
subroutine rflo_getnodeoffset(region, iLev, iNodeOffset, ijNodeOffset)
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE SUBROUTINE ipnbeg
subroutine rflo_getdimensphysnodes(region, iLev, ipnbeg, ipnend, jpnbeg, jpnend, kpnbeg, kpnend)
subroutine deregisterfunction(global)
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE SUBROUTINE ipnend