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

Go to the source code of this file.

Functions/Subroutines

subroutine e_damp (co, nk, konl, lakonl, p1, p2, omx, bodyfx, nbody, s, sm, ff, nelem, elcon, nelcon, rhcon, nrhcon, alcon, nalcon, alzero, ielmat, ielorien, norien, orab, ntmat_, t0, t1, ithermal, vold, iperturb, nelemload, sideload, xload, nload, idist, sti, stx, iexpl, plicon, nplicon, plkcon, nplkcon, xstiff, npmat_, dtime, matname, mi, ncmat_, ttime, time, istep, iinc, nmethod)
 

Function/Subroutine Documentation

◆ e_damp()

subroutine e_damp ( real*8, dimension(3,*)  co,
integer  nk,
integer, dimension(20)  konl,
character*8  lakonl,
real*8, dimension(3)  p1,
real*8, dimension(3)  p2,
real*8  omx,
real*8, dimension(3)  bodyfx,
integer  nbody,
real*8, dimension(60,60)  s,
real*8, dimension(60,60)  sm,
real*8, dimension(60)  ff,
integer  nelem,
real*8, dimension(0:ncmat_,ntmat_,*)  elcon,
integer, dimension(2,*)  nelcon,
real*8, dimension(0:1,ntmat_,*)  rhcon,
integer, dimension(*)  nrhcon,
real*8, dimension(0:6,ntmat_,*)  alcon,
integer, dimension(2,*)  nalcon,
real*8, dimension(*)  alzero,
integer, dimension(mi(3),*)  ielmat,
integer, dimension(mi(3),*)  ielorien,
integer  norien,
real*8, dimension(7,*)  orab,
integer  ntmat_,
real*8, dimension(*)  t0,
real*8, dimension(*)  t1,
integer  ithermal,
real*8, dimension(0:mi(2),*)  vold,
integer  iperturb,
integer, dimension(2,*)  nelemload,
character*20, dimension(*)  sideload,
real*8, dimension(2,*)  xload,
integer  nload,
integer  idist,
real*8, dimension(6,mi(1),*)  sti,
real*8, dimension(6,mi(1),*)  stx,
integer  iexpl,
real*8, dimension(0:2*npmat_,ntmat_,*)  plicon,
integer, dimension(0:ntmat_,*)  nplicon,
real*8, dimension(0:2*npmat_,ntmat_,*)  plkcon,
integer, dimension(0:ntmat_,*)  nplkcon,
real*8, dimension(27,mi(1),*)  xstiff,
integer  npmat_,
real*8  dtime,
character*80, dimension(*)  matname,
integer, dimension(*)  mi,
integer  ncmat_,
real*8  ttime,
real*8  time,
integer  istep,
integer  iinc,
integer  nmethod 
)
26 !
27 ! computation of the element matrix and rhs for the element with
28 ! the topology in konl
29 !
30 ! ff: rhs without temperature and eigenstress contribution
31 !
32  implicit none
33 !
34  character*8 lakonl
35  character*20 sideload(*)
36  character*80 matname(*)
37 !
38  integer konl(20),nelemload(2,*),nk,nbody,nelem,
39  & ithermal,iperturb,nload,idist,i,j,i1,i2,mi(*),
40  & nelcon(2,*),nrhcon(*),nalcon(2,*),ielmat(mi(3),*),
41  & ielorien(mi(3),*),ntmat_,nope,norien,iexpl,kode,imat,ncmat_,
42  & istep,iinc,nmethod,nplicon(0:ntmat_,*),nplkcon(0:ntmat_,*),
43  & npmat_
44 !
45  real*8 co(3,*),xl(3,20),
46  & s(60,60),p1(3),p2(3),bodyfx(3),ff(60),
47  & elcon(0:ncmat_,ntmat_,*),
48  & rhcon(0:1,ntmat_,*),alcon(0:6,ntmat_,*),alzero(*),orab(7,*),
49  & t0(*),t1(*),voldl(3,20),vold(0:mi(2),*),xload(2,*),omx,
50  & sm(60,60),
51  & sti(6,mi(1),*),stx(6,mi(1),*),t0l,t1l,elas(21),elconloc(21)
52 !
53  real*8 plicon(0:2*npmat_,ntmat_,*),plkcon(0:2*npmat_,ntmat_,*),
54  & xstiff(27,mi(1),*),dtime,ttime,time
55 !
56  imat=ielmat(1,nelem)
57 !
58  read(lakonl(8:8),'(i1)') nope
59  nope=nope+1
60 !
61 ! computation of the coordinates of the local nodes
62 !
63  do i=1,nope
64  do j=1,3
65  xl(j,i)=co(j,konl(i))
66  enddo
67  enddo
68 !
69 ! displacements for 2nd order static and modal theory
70 !
71  if(iperturb.ne.0) then
72  do i1=1,nope
73  do i2=1,3
74  voldl(i2,i1)=vold(i2,konl(i1))
75  enddo
76  enddo
77  endif
78 !
79 ! initialisation of s
80 !
81  do i=1,3*nope
82  do j=1,3*nope
83  s(i,j)=0.d0
84  enddo
85  enddo
86 !
87 ! calculating the stiffness matrix for the contact spring elements
88 !
89  if(lakonl(7:7).eq.'A') then
90  kode=nelcon(1,imat)
91  t0l=0.d0
92  t1l=0.d0
93  if(ithermal.eq.1) then
94  t0l=(t0(konl(1))+t0(konl(2)))/2.d0
95  t1l=(t1(konl(1))+t1(konl(2)))/2.d0
96  elseif(ithermal.ge.2) then
97  t0l=(t0(konl(1))+t0(konl(2)))/2.d0
98  t1l=(vold(0,konl(1))+vold(0,konl(2)))/2.d0
99  endif
100  endif
101  call dashdamp(xl,elas,konl,voldl,s,imat,elcon,nelcon,
102  & ncmat_,ntmat_,nope,lakonl,t0l,t1l,kode,elconloc,plicon,
103  & nplicon,npmat_,iperturb,time,nmethod)
104  return
105  return
static ITG * idist
Definition: radflowload.c:39
subroutine dashdamp(xl, elas, konl, voldl, s, imat, elcon, nelcon, ncmat_, ntmat_, nope, lakonl, t0l, t1l, kode, elconloc, plicon, nplicon, npmat_, iperturb, time, nmethod)
Definition: dashdamp.f:22
Hosted by OpenAircraft.com, (Michigan UAV, LLC)