74 alfa11,alfa12,alfa13,alfa21,alfa22,alfa23,&
75 alfa31,alfa32,alfa33,beta11,beta12,beta13,&
76 beta21,beta22,beta23,beta31,beta32,beta33,&
77 gamma1,gamma2,gamma3,delta1,delta2,delta3,&
81 strainxx,strainyy,strainzz,&
82 strainxy,strainyz,strainzx,&
83 stressxx,stressyy,stresszz,&
84 stressxy,stressyz,stresszx)
91 integer*4 :: i,j,k,p,q,r,L
93 real*8 :: alfa11,alfa12,alfa13,alfa21,alfa22,alfa23,alfa31,alfa32,alfa33
94 real*8 :: beta11,beta12,beta13,beta21,beta22,beta23,beta31,beta32,beta33
95 real*8 :: gamma1,gamma2,gamma3,delta1,delta2,delta3,dphi,
phi
96 real*8 :: dxdx,dxdy,dxdz,dydx,dydy,dydz,dzdx,dzdy,dzdz,det_j
97 real*8 :: duxdx,duxdy,duxdz,duydx,duydy,duydz,duzdx,duzdy,duzdz
98 real*8 :: t1ux,t2ux,t3ux,t1uy,t2uy,t3uy,t1uz,t2uz,t3uz, dpdcsi, dpdeta
100 real*8,
dimension(nn) :: ct,ww
102 real*8,
dimension(nn,nn) :: dd
104 real*8,
dimension(nn,nn,nn) :: ux,uy,uz
105 real*8,
dimension(nn,nn,nn) :: div,rotx,roty,rotz
106 real*8,
dimension(nn,nn,nn) :: strainxx,strainyy,strainzz
107 real*8,
dimension(nn,nn,nn) :: strainxy,strainyz,strainzx
108 real*8,
dimension(nn,nn,nn) :: stressxx,stressyy,stresszz
109 real*8,
dimension(nn,nn,nn) :: stressxy,stressyz,stresszx
110 real*8,
dimension(nn,nn,nn) :: lambda,mu
112 real*8,
dimension(nn**3) :: derx, dery, derz, ux_el, uy_el, uz_el
126 l = i + (j-1)*nn + (k-1)*nn*nn
133 dxdx = alfa11 + beta12*ct(r) + beta13*ct(q) &
135 dydx = alfa21 + beta22*ct(r) + beta23*ct(q) &
137 dzdx = alfa31 + beta32*ct(r) + beta33*ct(q) &
140 dxdy = alfa12 + beta11*ct(r) + beta13*ct(p) &
142 dydy = alfa22 + beta21*ct(r) + beta23*ct(p) &
144 dzdy = alfa32 + beta31*ct(r) + beta33*ct(p) &
147 dxdz = alfa13 + beta11*ct(q) + beta12*ct(p) &
149 dydz = alfa23 + beta21*ct(q) + beta22*ct(p) &
151 dzdz = alfa33 + beta31*ct(q) + beta32*ct(p) &
154 det_j = dxdz * (dydx*dzdy - dzdx*dydy) &
155 - dydz * (dxdx*dzdy - dzdx*dxdy) &
156 + dzdz * (dxdx*dydy - dydx*dxdy)
159 dpdcsi = dphi(nn-1, ct(p), ct(i)) *
phi(nn-1, ct
160 dpdeta =
phi(nn-1, ct(p), ct(i)) * dphi(nn-1
161 dpdzeta =
phi(nn-1, ct(p), ct(i)) *
phi(nn-1, ct(q),
164 derx(l) = (dydx*(dzdy*dpdzeta - dzdz*dpdeta) - dydy
165 dydz*(dzdx*dpdeta - dzdy*dpdcsi))/det_j
167 dery(l) = (dzdx*(dxdy*dpdzeta - dxdz*dpdeta) - dzdy*
168 dzdz*(dxdx*dpdeta - dxdy*dpdcsi))/det_j
170 derz(l) = (dxdx*(dydy*dpdzeta - dydz*dpdeta) - dxdy*
171 dxdz*(dydx*dpdeta - dydy*dpdcsi))/det_j
180 strainxx(p,q,r) = dot_product(derx,ux_el)
181 strainyy(p,q,r) = dot_product(dery,uy_el)
182 strainyy(p,q,r) = dot_product(derz,uz_el)
183 strainxy(p,q,r) = 0.5d0*(dot_product(derx,uy_el) + dot_product
184 strainyz(p,q,r) = 0.5d0*(dot_product(derz,uy_el) + dot_product
185 strainzx(p,q,r) = 0.5d0*(dot_product(derx,uz_el) + dot_product
187 rotx(p,q,r) = 0.5d0*(dot_product(dery,uz_el) - dot_product
188 roty(p,q,r) = 0.5d0*(dot_product(derz,ux_el) - dot_product
189 rotz(p,q,r) = 0.5d0*(dot_product(derx,uy_el) - dot_product
191 stressxx(p,q,r) = lambda(p,q,r) * (dot_product(derx,ux_el
192 + dot_product(derz,uz_el)) + 2.0d0*mu(p,q
193 stressyy(p,q,r) = lambda(p,q,r) * (dot_product(derx,ux_el
194 + dot_product(derz,uz_el)) + 2.0d0*mu(p,q
195 stresszz(p,q,r) = lambda(p,q,r) * (dot_product(derx,ux_el
196 + dot_product(derz,uz_el)) + 2.0d0*mu(p,q
198 stressyz(p,q,r) = mu(p,q,r) * (dot_product(derz,uy_el) + dot_product
199 stresszx(p,q,r) = mu(p,q,r) * (dot_product(derx,uz_el) + dot_product
200 stressxy(p,q,r) = mu(p,q,r) * (dot_product(derx,uy_el) + dot_product