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

Go to the source code of this file.

Functions/Subroutines

subroutine genmodes (i, kon, ipkon, lakon, ne, nk, nk_, co)
 

Function/Subroutine Documentation

◆ genmodes()

subroutine genmodes ( integer  i,
integer, dimension(*)  kon,
integer, dimension(*)  ipkon,
character*8, dimension(*)  lakon,
integer  ne,
integer  nk,
integer  nk_,
real*8, dimension(3,*)  co 
)
21 !
22 ! generate nodes for incompatible modes
23 !
24  implicit none
25 !
26  character*8 lakon(*)
27 !
28  real*8 co(3,*),coords(3)
29 !
30  integer i,kon(*),ipkon(*),ne,nope,nopeexp,
31  & nk,nk_,j,indexe,k,nodeb(8,3)
32 !
33  indexe=ipkon(i)
34 !
35  if(lakon(i)(1:5).eq.'C3D8I')then
36  nope=8
37  nopeexp=3
38  else
39  write(*,*) "*ERROR in genmodes: wrong element type, element=",
40  & lakon(i)
41  call exit(201)
42  endif
43 !
44 ! generating additional nodes for the incompatible element.
45 !
46 ! determining the mean value of the coordinates of the element
47 !
48  do k=1,3
49  coords(k)=0.d0
50  do j=1,nope
51  coords(k)=coords(k)+co(k,kon(indexe+j))
52  enddo
53  coords(k)=coords(k)/8.d0
54  enddo
55 !
56  do j=1,nopeexp
57  nk=nk+1
58  if(nk.gt.nk_) then
59  write(*,*) '*ERROR in genmodes: increase nk_'
60  call exit(201)
61  endif
62  kon(indexe+nope+j)=nk
63  do k=1,3
64  co(k,nk)=coords(k)
65  enddo
66  enddo
67 !
68  return
Hosted by OpenAircraft.com, (Michigan UAV, LLC)