55 numnp,nstart,nend,numcstet,numat_vol,coeffexp,temperature,temperature0)
72 REAL*8,
DIMENSION(1:3,1:numnp) :: coor
74 REAL*8,
DIMENSION(1:9,1:numat_vol) :: ci
76 REAL*8,
DIMENSION(1:numat_vol) :: coeffexp
78 REAL*8,
DIMENSION(1:3*numnp) :: r_in
80 REAL*8,
DIMENSION(1:numcstet) :: s11, s22, s33
82 INTEGER,
DIMENSION(1:4,1:numcstet) :: lmcstet
84 INTEGER,
DIMENSION(1:numcstet) :: matcstet
87 INTEGER :: n1,n2,n3,n4
89 REAL*8 :: u1,u2,u3,u4,v1,v2,v3,v4,w1,w2,w3,w4
91 REAL*8 :: vx6, vx6inv, vol
93 REAL*8 :: b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12
95 REAL*8 :: e11,e22,e33,e12,e23,e13
97 REAL*8 :: x1,x2,x3,x4,y1,y2,y3,y4,z1,z2,z3,z4
99 REAL*8 :: x14, x24, x34, y14, y24, y34, z14, z24, z34
101 REAL*8 :: x12, x13, y12, y13, z12, z13
103 REAL*8 :: c11, c21, c31
105 INTEGER ::
i,
j,nstart,nend
106 INTEGER :: k1n1,k1n2,k1n3,k1n4,k2n1,k2n2,k2n3,k2n4
107 INTEGER :: k3n1,k3n2,k3n3,k3n4
109 REAL*8,
DIMENSION(1:NumNP) :: temperature
110 REAL*8 :: temperaturegauss,temperature0
111 REAL*8 :: strssth11, strssth22, strssth33
166 c11 = y24*z34 - z24*y34
167 c21 = -( x24*z34 - z24*x34 )
168 c31 = x24*y34 - y24*x34
170 vx6 = -( x14*c11 + y14*c21 + z14*c31 )
177 b1 = (y34*z24 - y24*z34) * vx6inv
178 b2 = (z34*x24 - z24*x34) * vx6inv
179 b3 = (x34*y24 - x24*y34) * vx6inv
180 b4 = (y13*z14 - y14*z13) * vx6inv
181 b5 = (z13*x14 - z14*x13) * vx6inv
182 b6 = (x13*y14 - x14*y13) * vx6inv
183 b7 = (y14*z12 - y12*z14) * vx6inv
184 b8 = (z14*x12 - z12*x14) * vx6inv
185 b9 = (x14*y12 - x12*y14) * vx6inv
186 b10 = (y12*z13 - y13*z12) * vx6inv
187 b11 = (z12*x13 - z13*x12) * vx6inv
188 b12 = (x12*y13 - x13*y12) * vx6inv
190 temperaturegauss = ( temperature(n1) + &
193 temperature(n4) )*0.25d0
195 strssth11 = -ci(1,
j)*coeffexp(
j)*( temperaturegauss - temperature0 )
196 strssth22 = -ci(3,
j)*coeffexp(
j)*( temperaturegauss - temperature0 )
197 strssth33 = -ci(6,
j)*coeffexp(
j)*( temperaturegauss - temperature0 )
199 print*,-ci(1,
j)*coeffexp(
j),ci(1,
j),coeffexp(
j),temperaturegauss
201 s11(
i) = s11(
i) + strssth11
202 s22(
i) = s22(
i) + strssth22
203 s33(
i) = s33(
i) + strssth33
212 r_in(k1n1) = r_in(k1n1) - strssth11*b1*vol
213 r_in(k2n1) = r_in(k2n1) - strssth22*b2*vol
214 r_in(k3n1) = r_in(k3n1) - strssth33*b3*vol
216 r_in(k1n2) = r_in(k1n2) - strssth11*b4*vol
217 r_in(k2n2) = r_in(k2n2) - strssth22*b5*vol
218 r_in(k3n2) = r_in(k3n2) - strssth33*b6*vol
220 r_in(k1n3) = r_in(k1n3) - strssth11*b7*vol
221 r_in(k2n3) = r_in(k2n3) - strssth22*b8*vol
222 r_in(k3n3) = r_in(k3n3) - strssth33*b9*vol
224 r_in(k1n4) = r_in(k1n4) - strssth11*b10*vol
225 r_in(k2n4) = r_in(k2n4) - strssth22*b11*vol
226 r_in(k3n4) = r_in(k3n4) - strssth33*b12*vol
subroutine v3d4_thermalexp(coor, matcstet, lmcstet, R_in, ci, S11, S22, S33, numnp, nstart, nend, numcstet, numat_vol, CoeffExp, Temperature, Temperature0)