29 character*20 label,sideload(*)
31 integer ipkon(*),nelem,kon(*),mi(*),nope,indexe,j,k,null,
32 & mint3d,jj,iflag,ne,nelemload(2,*),iamload(2,*),nload,nload_,
33 & ielmat(mi(3),*),konl(20),idefload(*),iamplitude,isector,nam,
34 & one,nelcon(2,*),nalcon(2,*),ithermal,i1,ncmat_,ntmat_,imat
36 real*8 co(3,*),xl(3,20),xi,et,ze,xsj,shp(4,20),weight,xload(2,*),
37 & sti(6,mi(1),*),alpha(6),heat,elcon(0:ncmat_,ntmat_,*),volume,
38 & elconloc(21),t1l,alcon(0:6,ntmat_,*),vold(0:mi(2),*),t1(*)
48 if(ipkon(nelem).lt.0) cycle
53 if(int(elcon(2,1,ielmat(1,nelem))).ne.2) cycle
58 if(lakon(nelem)(1:5).eq.
'C3D8I')
then 60 elseif(lakon(nelem)(4:4).eq.
'2')
then 62 elseif(lakon(nelem)(4:4).eq.
'8')
then 64 elseif(lakon(nelem)(4:5).eq.
'10')
then 66 elseif(lakon(nelem)(4:4).eq.
'4')
then 68 elseif(lakon(nelem)(4:5).eq.
'15')
then 70 elseif(lakon(nelem)(4:5).eq.
'6')
then 84 if(lakon(nelem)(4:5).eq.
'8R')
then 86 elseif((lakon(nelem)(4:4).eq.
'8').or.
87 & (lakon(nelem)(4:6).eq.
'20R'))
then 89 elseif(lakon(nelem)(4:4).eq.
'2')
then 91 elseif(lakon(nelem)(4:5).eq.
'10')
then 93 elseif(lakon(nelem)(4:4).eq.
'4')
then 95 elseif(lakon(nelem)(4:5).eq.
'15')
then 97 elseif(lakon(nelem)(4:5).eq.
'6')
then 104 if(lakon(nelem)(4:5).eq.
'8R')
then 109 elseif((lakon(nelem)(4:4).eq.
'8').or.
110 & (lakon(nelem)(4:6).eq.
'20R'))
116 elseif(lakon(nelem)(4:4).eq.
'2')
then 121 elseif(lakon(nelem)(4:5).eq.
'10')
then 126 elseif(lakon(nelem)(4:4).eq.
'4')
then 131 elseif(lakon(nelem)(4:5).eq.
'15')
then 144 call shape20h(xi,et,ze,xl,xsj,shp,iflag)
145 elseif(nope.eq.8)
then 146 call shape8h(xi,et,ze,xl,xsj,shp,iflag)
147 elseif(nope.eq.10)
then 149 elseif(nope.eq.4)
then 150 call shape4tet(xi,et,ze,xl,xsj,shp,iflag)
151 elseif(nope.eq.15)
then 152 call shape15w(xi,et,ze,xl,xsj,shp,iflag)
154 call shape6w(xi,et,ze,xl,xsj,shp,iflag)
160 if(ithermal.eq.1)
then 161 if(lakon(nelem)(4:5).eq.
'8 ')
then 163 t1l=t1l+t1(konl(i1))/8.d0
165 elseif(lakon(nelem)(4:6).eq.
'20 ')
then 166 call linscal(t1,konl,nope,jj,t1l,one)
167 elseif(lakon(nelem)(4:6).eq.
'10T')
then 171 t1l=t1l+shp(4,i1)*t1(konl(i1))
174 elseif(ithermal.ge.2)
then 175 if(lakon(nelem)(4:5).eq.
'8 ')
then 177 t1l=t1l+vold(0,konl(i1))/8.d0
179 elseif(lakon(nelem)(4:6).eq.
'20 ')
then 180 call linscal(vold,konl,nope,jj,t1l,mi(2))
181 elseif(lakon(nelem)(4:6).eq.
'10T')
then 185 t1l=t1l+shp(4,i1)*vold(0,konl(i1))
194 & imat,ntmat_,t1l,elconloc,ncmat_,alpha)
196 heat=heat+weight*xsj*alpha(1)*
197 & (sti(1,jj,nelem)*sti(1,jj,nelem)+
198 & sti(2,jj,nelem)*sti(2,jj,nelem)+
199 & sti(3,jj,nelem)*sti(3,jj,nelem))
200 volume=volume+weight*xsj
210 call loadadd(nelem,label,heat,nelemload,sideload,
211 & xload,nload,nload_,iamload,iamplitude,nam,isector,
subroutine shape6w(xi, et, ze, xl, xsj, shp, iflag)
Definition: shape6w.f:20
subroutine linscal10(scal, konl, scall, idim, shp)
Definition: linscal10.f:20
subroutine loadadd(nelement, label, value, nelemload, sideload, xload, nload, nload_, iamload, iamplitude, nam, isector, idefload)
Definition: loadadd.f:21
subroutine shape10tet(xi, et, ze, xl, xsj, shp, iflag)
Definition: shape10tet.f:20
subroutine shape8h(xi, et, ze, xl, xsj, shp, iflag)
Definition: shape8h.f:20
subroutine shape15w(xi, et, ze, xl, xsj, shp, iflag)
Definition: shape15w.f:20
subroutine linscal(scal, konl, nope, jj, scall, idim)
Definition: linscal.f:20
subroutine shape20h(xi, et, ze, xl, xsj, shp, iflag)
Definition: shape20h.f:20
subroutine shape4tet(xi, et, ze, xl, xsj, shp, iflag)
Definition: shape4tet.f:20
subroutine materialdata_em(elcon, nelcon, alcon, nalcon, imat, ntmat_, t1l, elconloc, ncmat_, alpha)
Definition: materialdata_em.f:20