CalculiX  2.13
A Free Software Three-Dimensional Structural Finite Element Program
networkneighbor.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine networkneighbor (nelem, node, nelemnei, nodenei, ibranch, iponoel, inoel, ipkon, kon)
 

Function/Subroutine Documentation

◆ networkneighbor()

subroutine networkneighbor ( integer  nelem,
integer  node,
integer  nelemnei,
integer  nodenei,
integer  ibranch,
integer, dimension(*)  iponoel,
integer, dimension(2,*)  inoel,
integer, dimension(*)  ipkon,
integer, dimension(*)  kon 
)
21 !
22 ! looks for the neighboring element and neighboring end node of
23 ! node "node" of element "nelem". If the neighboring end node
24 ! belongs to more than 2 elements ibranch=1, else ibranch=0
25 !
26  implicit none
27 !
28  integer nelem,node,nelemnei,nodenei,ibranch,index,indexe,
29  & iponoel(*),inoel(2,*),ipkon(*),kon(*),iel
30 !
31  nelemnei=0
32  ibranch=0
33 !
34  index=iponoel(node)
35  if(index.eq.0) then
36  write(*,*) '*ERROR in networkneighbor:node',node
37  write(*,*) ' does not belong to network element',nelem
38  call exit(201)
39  endif
40 !
41  do
42  iel=inoel(1,index)
43 !
44  if(iel.eq.nelem) then
45  index=inoel(2,index)
46  if(index.eq.0) exit
47  cycle
48  endif
49 !
50 ! neighboring element; check whether a neighboring element
51 ! was already found
52 !
53  if(nelemnei.ne.0) then
54  ibranch=1
55  exit
56  endif
57 !
58  nelemnei=iel
59  indexe=ipkon(iel)
60  if(kon(indexe+1).eq.node) then
61  nodenei=kon(indexe+3)
62  else
63  nodenei=kon(indexe+1)
64  endif
65  index=inoel(2,index)
66  if(index.eq.0) exit
67  enddo
68 !
69  return
Hosted by OpenAircraft.com, (Michigan UAV, LLC)