106 INTEGER :: I, I1, I2, J, IC, N1, N2, N3
107 REAL(SP) :: DXN,DYN,DXC,DYC,CROSS
115 n1 =
nv(ic,1) ; n2 =
nv(ic,2) ; n3 =
nv(ic,3)
116 IF( n1-i2 == 0 .OR. n2-i2 == 0 .OR. n3-i2 == 0)
THEN 117 dxn =
vx(i2)-
vx(i1) ; dyn =
vy(i2)-
vy(i1)
118 dxc =
xc(ic)-
vx(i1) ; dyc =
yc(ic)-
vy(i1)
119 cross = sign(1.0_sp,dxc*dyn - dyc*dxn)
120 cxobc(ic) = cross*dyn/sqrt(dxn**2 +dyn**2)
121 cyobc(ic) = -cross*dxn/sqrt(dxn**2 +dyn**2)
129 n1 =
nv(ic,1) ; n2 =
nv(ic,2) ; n3 =
nv(ic,3)
130 IF( n1-i2 == 0 .OR. n2-i2 == 0 .OR. n3-i2 == 0)
THEN 131 dxn =
vx(i2)-
vx(i1) ; dyn =
vy(i2)-
vy(i1)
132 dxc =
xc(ic)-
vx(i1) ; dyc =
yc(ic)-
vy(i1)
133 cross = sign(1.0_sp,dxc*dyn - dyc*dxn)
134 cxobc(ic) = cross*dyn/sqrt(dxn**2 +dyn**2)
135 cyobc(ic) =-cross*dxn/sqrt(dxn**2 +dyn**2)
integer, dimension(:,:), allocatable adjn_obc
integer, dimension(:), allocatable nadjn_obc
real(sp), dimension(:), allocatable, target yc
real(sp), dimension(:), allocatable, target vx
real(sp), dimension(:), allocatable cxobc
real(sp), dimension(:), allocatable cyobc
real(sp), dimension(:), allocatable, target vy
integer, dimension(:), allocatable, target ntve
integer, dimension(:), allocatable i_obc_n
integer, dimension(:,:), allocatable, target nv
integer, dimension(:,:), allocatable, target nbve
real(sp), dimension(:), allocatable, target xc