17 sigma,chi,beta,zeta0,theta,ti,dt,lambda,
23 double precision mi(s),sigmai(s),T,alpha(s,s),ni(s),rho,v0, &
24 mu(s,s),sigma(s,s),chi(s,s),beta(s,s),zeta0, &
25 theta(s),Ti(s),DT(s),lambda
28 double precision E(s,s),A(s,s),C(s,s),F(s,s),sum1(s),sum2(s), &
29 sum3(s),sum4(s),omega(s,s),lambdai_bar(s), &
30 gamma(s,s),Amat(s,s),bmat(s),lambdai(s), &
31 lambdakini(s),lambdakin,lambdacol,CT(s,s)
37 parameter(pi=3.14159265458979323846d0)
44 e(i,j) = 2.d0*mu(j,i)**2/theta(i)**2*(theta(i) &
46 *(2.d0*alpha(i,j)**2-3.d0*alpha(i,j)+4.d0) &
47 *(5.d0*theta(i)+8.d0*theta(j)) &
48 -mu(j,i)*(theta(i)+theta(j)) &
49 *(beta(i,j)/theta(i)**2*(5.d0*theta(i)+8.d0*theta(j)
62 a(i,j) = 5.d0*(2.d0*beta(i,j)+theta(j))+mu(j,i) &
63 *(theta(i)+theta(j))*(5.d0*(1.d0-alpha(i,j)) &
64 -(14.d0*alpha(i,j)-22.d0)*beta(i,j)/theta(i)) &
65 +18.d0*beta(i,j)**2/theta(i)+2.d0*mu(j,i)**2 &
66 *(2.d0*alpha(i,j)**2-3.d0*alpha(i,j)+4.d0) &
67 *(theta(i)+theta(j))**2/theta(i) &
68 -5.d0*theta(j)/theta(i)*(theta(i)+theta(j))
70 c(i,j) = 5.d0*(2.d0*beta(i,j)-theta(i))+mu(j,i) &
71 *(theta(i)+theta(j))*(5.d0*(1.d0-alpha(i,j)) &
72 +(14.d0*alpha(i,j)-22.d0)*beta(i,j)/theta(j)) &
73 -18.d0*beta(i,j)**2/theta(j)-2.d0*mu(j,i)**2 &
74 *(2.d0*alpha(i,j)**2-3.d0*alpha(i,j)+4.d0) &
75 *(theta(i)+theta(j))**2/theta(j) &
76 +5.d0*(theta(i)+theta(j))
78 f(i,j) = 2.d0*(mu(j,i)*(theta(i)+theta(j)) &
79 /theta(j))**2*(2.d0*alpha(i,j)**2-3.d0 &
80 *alpha(i,j)+4.d0)*(8.d0*theta(i)+5.d0*theta(j)) &
81 -mu(j,i)*(theta(i)+theta(j))*(beta(i,j) &
82 /theta(j)**2*(8.d0*theta(i)+5.d0*theta(j)) &
83 *(14.d0*alpha(i,j)-22.d0)+theta(i)/theta(j) &
84 *(20.d0+3.d0*(15.d0-7.d0*alpha(i,j))+9.d0 &
85 *(1.d0-alpha(i,j))-28.d0*alpha(i,j))+25.d0 &
86 *(1.d0-alpha(i,j)))+18.d0 &
87 *(beta(i,j)/theta(j))**2*(6.d0*theta(i) &
88 +5.d0*theta(j)) -2.d0*beta(i,j)/theta(j)*(66.d0 &
89 *theta(i)+25.d0*theta(j))+5.d0*theta(i)/theta(j) &
90 *(6.d0*theta(i)+11.d0*theta(j))-5.d0*(theta(i) &
91 +theta(j))/theta(j)*(6.d0*theta(i)+5.d0*theta(j))
104 sum1(i) = sum1(i)+ni(j)*chi(i,j)*sigma(i,j)**2 &
105 *v0*mu(j,i)*(1.d0+alpha(i,j))*(theta(i) &
106 /(theta(j)*(theta(i)+theta(j))))**1.5d0 &
107 *(e(i,j)-5.d0*(theta(i)+theta(j))/theta(i) &
109 sum2(i) = sum2(i) + ni(j)*chi(i,j)*sigma(i,j)**2 &
110 *v0*mu(j,i)*(1.d0+alpha(i,j))*dsqrt(theta(i) &
111 /((theta(i)+theta(j))*theta(j)**3))*a(i,j)
126 omega(i,i) = 4.d0/3.d0*dsqrt(pi/2.d0)*sigmai(i)**2 &
127 *ni(i)*chi(i,i)*v0*(1.d0-alpha(i,i)**2) &
128 /dsqrt(theta(i)) + 4.d0*dsqrt(pi)/15d0*sum2(i)
130 if(ni(j)>0d0) sum3(i) = sum3(i)+ &
131 (omega(i,j)-zeta0)/(ni(j)*ti(j))*dt(j)
133 omega(i,j) = 4.d0*dsqrt(pi)/15.d0*ni(j)*chi(i,j) &
134 *sigma(i,j)**2*v0*mu(j,i)*(1.d0+alpha(i,j)) &
135 *dsqrt(theta(i)/((theta(i)+theta(j)) &
136 *theta(j)**3))*c(i,j)
138 if(ni(j)>0d0) sum3(i) = sum3(i)+ &
139 omega(i,j)/(ni(j)*ti(j))*dt(j)
141 sum4(i) = sum4(i) + 2.d0*pi*ni(i)*ni(j)*mu(i,j) &
142 *chi(i,j)*sigma(i,j)**3*ti(j)*(1.d0+alpha(i,j)) &
143 *(ti(i)/mi(i)*(5.d0*(mu(i,j)**2-1.d0) &
144 +(1.d0-9.d0*alpha(i,j))*mu(i,j)*mu(j,i) &
145 +(2.d0+3.d0*alpha(i,j)+6.d0*alpha(i,j)**2) &
146 *mu(j,i)**2) +6.d0*ti(j)/mi(j)*mu(j,i)**2 &
147 *(1.d0+alpha(i,j))**2)
153 lambdai_bar(i) = -2.5d0*rho*ni(i)*ti(i)**3 &
154 /(ti(i)*t*mi(i))*sum3(i)+2.5d0*ni(i)*ti(i)**2 &
155 /(mi(i)*t)+sum4(i)/(6.d0*t)
158 gamma(i,i) = 16.d0/15.d0*dsqrt(pi)*sigmai(i)**2 &
159 *ni(i)*chi(i,i)*v0/dsqrt(2.d0*theta(i)) &
160 *(1.d0+alpha(i,i))*(1.d0+33.d0/16.d0 &
161 *(1.d0-alpha(i,i))) &
162 +2.d0/15.d0*dsqrt(pi)*sum1(i)
164 amat(i,j) = gamma(i,j) - 2.d0*zeta0
166 gamma(i,j) = -2.d0/15.d0*dsqrt(pi)*ni(i)*chi(i,j) &
167 *sigma(i,j)**2*v0*mu(i,j)*(1.d0+alpha(i,j)) &
168 *(theta(j)/(theta(i)*(theta(i)+theta(j))))**1.5d0 &
169 *(f(i,j)+5.d0*((theta(i)+theta(j))/theta(j)) &
172 amat(i,j) = gamma(i,j)
175 bmat(i) = lambdai_bar(i)
178 CALL ludcmp(amat, s, np, indx, d,
'thermal_conductivity')
179 CALL lubksb(amat, s, np, indx, bmat)
187 lambdakini(i) = lambdai(i) + 2.5d0/t*rho*ti(i)*dt(i)/mi(i)
188 lambdakin = lambdakin + lambdakini(i)
194 ct(i,j) = -4.d0/3.d0*dsqrt(pi)*ni(i)*ni(j)*v0**3 &
195 /dsqrt((theta(i)+theta(j))*(theta(i)*theta(j))**3) &
196 *(2.d0*beta(i,j)**2+theta(i)*theta(j) &
197 + (theta(i)+theta(j)) *((theta(i)+theta(j))*mu(i,j) &
198 *mu(j,i)+beta(i,j)*(1.d0+mu(j,i))))-dsqrt(pi)*ni(i) &
199 *ni(j)*v0**3*(1.d0-alpha(i,j))*(mu(j,i)-mu(i,j)) &
200 *((theta(i)+theta(j))/theta(i)/theta(j))**1.5d0 &
201 *(mu(j,i)+beta(i,j)/(theta(i)+theta(j)))
202 lambdacol = lambdacol + (1.d0+alpha(i,j))/8.d0*mi(j) &
203 *mu(i,j)*sigma(i,j)**3*chi(i,j) *(4.d0*pi/5.d0 &
204 *(1.d0-alpha(i,j))*(mu(i,j)-mu(j,i))*ni(i) &
205 *(2.d0/mi(j)*lambdakini(j)+5.d0*ti(i)/(mi(i)*mi(j) &
206 *t)*rho*dt(j)) +48.d0*pi/15.d0*ni(i)*(2.d0*mu(i,j) &
207 /mi(j)*lambdakini(j)-5.d0*ti(i)/(mi(i)*mi(j)*t) &
208 *(2.d0*mu(i,j)-mu(j,i))*rho*dt(j)) &
209 -sigma(i,j)*ct(i,j)/t)
213 lambda = lambdakin + lambdacol
subroutine thermal_conductivity(s, mi, T, sigmai, alpha, ni, rho, v0, mu,
subroutine ludcmp(a, n, np, indx, d, calledFrom)
subroutine lubksb(a, n, np, indx, b)