16 chi,zeta0,theta,ti,p,dt,nu)
22 double precision alpha(s,s),ni(s),mi(s),rho,v0,mu(s,s), &
23 sigma(s,s),chi(s,s),zeta0,theta(s), &
27 double precision sum1(s),sum2(s),nu(s,s),Amat(s,s),bmat(s)
33 parameter(pi=3.14159265458979323846d0)
43 sum1(i) = sum1(i) + ni(j)*sigma(i,j)**2*chi(i,j) &
44 *mu(j,i)*v0*(1.d0+alpha(i,j)) &
45 *dsqrt((theta(i)+theta(j))/(theta(i)*theta(j)))
47 sum2(i) = sum2(i) + ni(j)*mu(i,j)*chi(i,j)* &
48 sigma(i,j)**3*ti(j)*(1.d0+alpha(i,j))
55 nu(i,i) = 4.d0*dsqrt(pi)/3.d0*sum1(i)
57 amat(i,j) = nu(i,j)-zeta0
59 nu(i,j) = -4.d0*dsqrt(pi)/3.d0*ni(i)*sigma(i,j)**2 &
60 *chi(i,j)*mu(i,j)*v0*(1.d0+alpha(i,j)) &
61 *dsqrt((theta(i)+theta(j))/(theta(i)*theta(j)))
66 bmat(i) = -p*ni(i)*mi(i)/rho**2*(1.d0-rho*ti(i) &
67 /(mi(i)*p))+2d0*pi/3d0*ni(i)/rho*sum2(i)
70 CALL ludcmp(amat, s, np, indx, d,
'thermal_diffusivity')
71 CALL lubksb(amat, s, np, indx, bmat)
subroutine thermal_diffusivity(s, alpha, ni, mi, rho, v0, mu, sigma, chi, zeta0, theta, Ti, p, DT, nu)
subroutine ludcmp(a, n, np, indx, d, calledFrom)
subroutine lubksb(a, n, np, indx, b)