% dynamic_viscosity: Dynamical viscosity % % eta=dynamic_viscosity(T,rho,A); for an neutral gas % % eta=dynamic_viscosity(T,rho,A,Z); for an ionized gas % % ARGUMENTS % T Gas temperature [K] % rho Gas density [g cm^-3] % A Mean atomic mass of gas % Z Mean charge of gas particle (optional) [esu] % % RETURNS % Dynamic viscosity [g cm^-1 s] % 06 03 01 Standardized header comments. % % USES % impact_parameter % % SEE ALSO % drag_coef, drag_force, Reynolds_number % AUTHOR: Eric Tittley % % HISTORY % 00 07 31: First version function eta=dynamic_viscosity(T,rho,A,Z) R = 8.314510e7; % erg K^-1 mol^-1 k = 1.380658e-16; % erg K^-1 N_A = 6.0221367e23; % mol^-1 amu = 1.6605402e-24; % g e = 4.8032068e-10; % esu a_o = 1e-9; % cm if(nargin==3) %neutral gas eta=(3*k*T*A*amu)^0.5 / (pi * a_o^2); elseif(nargin==4) %ionized gas n_e=5*rho/(7*amu); Lambda=impact_parameter(Z,Z,T,n_e); eta = (6*amu)^0.5 / (4 * pi^0.5) * A^0.5 * (k * T)^(5/2) / ( (Z*e)^4 * log(Lambda) ); else error('need 3 or 4 arguments') end