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

Go to the source code of this file.

Functions/Subroutines

subroutine desiperelem (ndesi, istartdesi, ialdesi, ipoeldi, ieldi, ne)
 

Function/Subroutine Documentation

◆ desiperelem()

subroutine desiperelem ( integer  ndesi,
integer, dimension(*)  istartdesi,
integer, dimension(*)  ialdesi,
integer, dimension(*)  ipoeldi,
integer, dimension(2,*)  ieldi,
integer  ne 
)
21 !
22  implicit none
23 !
24  integer ndesi,istartdesi(*),ialdesi(*),ipoeldi(*),ieldi(2,*),
25  & ieldifree,i,j,nelem,ne
26 !
27 ! storing the design variables per element
28 !
29  ieldifree=1
30  do i=1,ndesi
31  do j=istartdesi(i),istartdesi(i+1)-1
32  nelem=ialdesi(j)
33  ieldi(1,ieldifree)=i
34  ieldi(2,ieldifree)=ipoeldi(nelem)
35  ipoeldi(nelem)=ieldifree
36  ieldifree=ieldifree+1
37  enddo
38  enddo
39 !
40 ! adding the zero design variable to all elements with
41 ! a nonzero ipoeldi value
42 !
43  do i=1,ne
44  if(ipoeldi(i).eq.0) cycle
45  ieldi(1,ieldifree)=0
46  ieldi(2,ieldifree)=ipoeldi(i)
47  ipoeldi(i)=ieldifree
48  ieldifree=ieldifree+1
49  enddo
50 !
51  return
Hosted by OpenAircraft.com, (Michigan UAV, LLC)