These changes make it unnecessary to copy header files around during the build process, which tends to confuse IDEs and debuggers. The headers which comprise Cantera's external C++ interface are now in the 'include' directory. All of the samples and demos are now in the 'samples' subdirectory.
77 lines
1.7 KiB
Matlab
Executable file
77 lines
1.7 KiB
Matlab
Executable file
function prandtl1(g)
|
|
% PRANDTL1 Prandlt number for an equilibrium H/O gas mixture.
|
|
%
|
|
% This example computes and plots the Prandtl number for a
|
|
% hydrogen / oxygen mixture in chemical equilibrium for P = 1
|
|
% atm and a range of temperatures and elemental O/(O+H) ratios.
|
|
%
|
|
help prandtl1
|
|
|
|
if nargin == 1 & isa(g,'solution')
|
|
gas = g;
|
|
else
|
|
gas = GRI30('Mix');
|
|
end
|
|
|
|
pr = zeros(31,31);
|
|
xh2 = zeros(31,31);
|
|
visc = zeros(31,31);
|
|
lambda = zeros(31,31);
|
|
t = [];
|
|
xo2 = [];
|
|
io2 = speciesIndex(gas,'O2');
|
|
ih2 = speciesIndex(gas,'H2');
|
|
ih = speciesIndex(gas,'H');
|
|
ih2o = speciesIndex(gas,'H2O');
|
|
|
|
minT = minTemp(gas);
|
|
maxT = maxTemp(gas);
|
|
dT = (maxT - minT)/30.0;
|
|
|
|
atm = oneatm;
|
|
t0 = cputime;
|
|
for i = 1:31
|
|
t(i) = minT + dT*(i-1);
|
|
for j = 1:31
|
|
xo2(j) = 0.99*(j-1)/30.0;
|
|
x = zeros(nSpecies(gas),1);
|
|
x(io2) = xo2(j);
|
|
x(ih2) = 1.0 - xo2(j);
|
|
set(gas,'T',t(i),'P',oneatm,'X',x);
|
|
equilibrate(gas,'TP');
|
|
visc(i,j) = viscosity(gas);
|
|
lambda(i,j) = thermalConductivity(gas);
|
|
pr(i,j) = visc(i,j)*cp_mass(gas)/lambda(i,j);
|
|
x = moleFractions(gas);
|
|
xh2(i,j) = x(ih2);
|
|
end
|
|
end
|
|
disp(['CPU time = ' num2str(cputime - t0)]);
|
|
|
|
% plot results
|
|
|
|
clf;
|
|
%figure(1);
|
|
subplot(2,2,1);
|
|
surf(xo2,t,pr);
|
|
xlabel('Elemental O/(O+H)');
|
|
ylabel('Temperature (K)');
|
|
zlabel('Prandtl Number');
|
|
|
|
subplot(2,2,2);
|
|
surf(xo2,t,xh2);
|
|
xlabel('Elemental O/(O+H)');
|
|
ylabel('Temperature (K)');
|
|
zlabel('H_2 Mole Fraction');
|
|
|
|
subplot(2,2,3);
|
|
surf(xo2,t,visc);
|
|
xlabel('Elemental O/(O+H)');
|
|
ylabel('Temperature (K)');
|
|
zlabel('Viscosity');
|
|
|
|
subplot(2,2,4);
|
|
surf(xo2,t,lambda);
|
|
xlabel('Elemental O/(O+H)');
|
|
ylabel('Temperature (K)');
|
|
zlabel('Thermal Conductivity');
|