Adding an example dir

This commit is contained in:
Harry Moffat
2009-03-24 20:18:12 +00:00
parent 5b26e6bbe0
commit 6b030cb1c3
6 changed files with 378 additions and 0 deletions

View File

@@ -0,0 +1,9 @@
Makefile
runtest
ct2ctml.log
diff_out_0.txt
gri30.xml
h2o2.xml
liquidvapor.xml
output_0.txt
transport_log.xml

View File

@@ -0,0 +1,15 @@
#!/bin/sh
PYTHON_CMD = @PYTHON_CMD@
run:
$(PYTHON_CMD) isentropic.py
test:
./runtest
clean:
rm -f *.log *.csv *.xml
./cleanup
# end of file

View File

@@ -0,0 +1,5 @@
#!/bin/sh
#
/bin/rm -rf equilibrate_log*.html
/bin/rm -rf .cttmp* ct2ctml.log transport_log.xml vcs_equilibrate_res*.csv \
catcomb.csv output_0.txt diff*

View File

@@ -0,0 +1,90 @@
from Cantera import *
from Cantera.num import zeros
import math
def soundspeed(gas):
"""The speed of sound. Assumes an ideal gas."""
# if gas.isIdealGas():
gamma = gas.cp_mass()/gas.cv_mass()
return math.sqrt(gamma * GasConstant
* gas.temperature() / gas.meanMolecularWeight() )
#else:
# raise "non-ideal not implemented."
def isentropic(g = None):
"""
ISENTROPIC isentropic, adiabatic flow example
In this example, the area ratio vs. Mach number curve is
computed. If a gas object is supplied, it will be used for the
calculations, with the stagnation state given by the input gas
state. Otherwise, the calculations will be done for a 10:1
hydrogen/nitrogen mixture with stagnation T0 = 1200 K, P0 = 10
atm.
"""
if g == None:
gas = GRI30()
gas.set(T = 1200.0,P = 10.0*OneAtm,X = 'H2:1,N2:0.1')
else:
gas = g
# get the stagnation state parameters
s0 = gas.entropy_mass()
h0 = gas.enthalpy_mass()
p0 = gas.pressure()
mdot = 1 # arbitrary
amin = 1.e14
data = zeros((200,4),'d')
# compute values for a range of pressure ratios
for r in range(200):
p = p0*(r+1)/201.0
# set the state using (p,s0)
gas.set(S = s0, P = p)
h = gas.enthalpy_mass()
rho = gas.density()
v2 = 2.0*(h0 - h) # h + V^2/2 = h0
v = math.sqrt(v2)
area = mdot/(rho*v); # rho*v*A = constant
if area < amin: amin = area
data[r,:] = [area, v/soundspeed(gas), gas.temperature(), p/p0]
data[:,0] /= amin
return data
if __name__ == "__main__":
print isentropic.__doc__
data = isentropic()
try:
from pylab import *
clf
plot(data[:,1], data[:,0])
ylabel('Area Ratio')
xlabel('Mach Number')
title('Isentropic Flow: Area Ratio vs. Mach Number')
show()
except:
print 'area ratio, Mach number, temperature, pressure ratio'
print data

View File

@@ -0,0 +1,212 @@
ISENTROPIC isentropic, adiabatic flow example
In this example, the area ratio vs. Mach number curve is
computed. If a gas object is supplied, it will be used for the
calculations, with the stagnation state given by the input gas
state. Otherwise, the calculations will be done for a 10:1
hydrogen/nitrogen mixture with stagnation T0 = 1200 K, P0 = 10
atm.
area ratio, Mach number, temperature, pressure ratio
[[ 1.30469086e+01 4.18453822e+00 2.70202095e+02 4.97512438e-03]
[ 8.22559670e+00 3.67857400e+00 3.29941747e+02 9.95024876e-03]
[ 6.30079079e+00 3.39589395e+00 3.70405399e+02 1.49253731e-02]
[ 5.22634245e+00 3.20015488e+00 4.01965000e+02 1.99004975e-02]
[ 4.52790569e+00 3.05070912e+00 4.28239982e+02 2.48756219e-02]
[ 4.03195312e+00 2.92997543e+00 4.50961600e+02 2.98507463e-02]
[ 3.65876748e+00 2.82876597e+00 4.71105183e+02 3.48258706e-02]
[ 3.36620070e+00 2.74168088e+00 4.89279551e+02 3.98009950e-02]
[ 3.12971350e+00 2.66527972e+00 5.05892668e+02 4.47761194e-02]
[ 2.93397438e+00 2.59723694e+00 5.21232543e+02 4.97512438e-02]
[ 2.76887308e+00 2.53590779e+00 5.35510812e+02 5.47263682e-02]
[ 2.62745129e+00 2.48008661e+00 5.48888010e+02 5.97014925e-02]
[ 2.50475091e+00 2.42886355e+00 5.61489097e+02 6.46766169e-02]
[ 2.39713601e+00 2.38153526e+00 5.73413450e+02 6.96517413e-02]
[ 2.30187492e+00 2.33754692e+00 5.84741540e+02 7.46268657e-02]
[ 2.21687238e+00 2.29645325e+00 5.95539546e+02 7.96019900e-02]
[ 2.14049232e+00 2.25789150e+00 6.05862622e+02 8.45771144e-02]
[ 2.07143708e+00 2.22156228e+00 6.15757278e+02 8.95522388e-02]
[ 2.00866322e+00 2.18721568e+00 6.25263135e+02 9.45273632e-02]
[ 1.95132137e+00 2.15464092e+00 6.34414258e+02 9.95024876e-02]
[ 1.89871255e+00 2.12365863e+00 6.43240175e+02 1.04477612e-01]
[ 1.85025591e+00 2.09411493e+00 6.51766668e+02 1.09452736e-01]
[ 1.80546446e+00 2.06587683e+00 6.60016398e+02 1.14427861e-01]
[ 1.76392657e+00 2.03882860e+00 6.68009405e+02 1.19402985e-01]
[ 1.72529180e+00 2.01286896e+00 6.75763507e+02 1.24378109e-01]
[ 1.68925975e+00 1.98790873e+00 6.83294626e+02 1.29353234e-01]
[ 1.65557133e+00 1.96386903e+00 6.90617057e+02 1.34328358e-01]
[ 1.62400181e+00 1.94067973e+00 6.97743688e+02 1.39303483e-01]
[ 1.59435522e+00 1.91827823e+00 7.04686185e+02 1.44278607e-01]
[ 1.56645984e+00 1.89660840e+00 7.11455145e+02 1.49253731e-01]
[ 1.54016452e+00 1.87561973e+00 7.18060230e+02 1.54228856e-01]
[ 1.51533563e+00 1.85526664e+00 7.24510273e+02 1.59203980e-01]
[ 1.49185457e+00 1.83550779e+00 7.30813378e+02 1.64179104e-01]
[ 1.46961568e+00 1.81630565e+00 7.36976995e+02 1.69154229e-01]
[ 1.44852454e+00 1.79762601e+00 7.43007996e+02 1.74129353e-01]
[ 1.42849644e+00 1.77943760e+00 7.48912734e+02 1.79104478e-01]
[ 1.40945516e+00 1.76171178e+00 7.54697092e+02 1.84079602e-01]
[ 1.39133197e+00 1.74442222e+00 7.60366536e+02 1.89054726e-01]
[ 1.37406466e+00 1.72754473e+00 7.65926149e+02 1.94029851e-01]
[ 1.35759679e+00 1.71105694e+00 7.71380669e+02 1.99004975e-01]
[ 1.34187708e+00 1.69493822e+00 7.76734525e+02 2.03980100e-01]
[ 1.32685875e+00 1.67916943e+00 7.81991856e+02 2.08955224e-01]
[ 1.31249908e+00 1.66373282e+00 7.87156544e+02 2.13930348e-01]
[ 1.29875898e+00 1.64861189e+00 7.92232230e+02 2.18905473e-01]
[ 1.28560260e+00 1.63379127e+00 7.97222339e+02 2.23880597e-01]
[ 1.27299696e+00 1.61925663e+00 8.02130094e+02 2.28855721e-01]
[ 1.26091174e+00 1.60499457e+00 8.06958533e+02 2.33830846e-01]
[ 1.24931897e+00 1.59099257e+00 8.11710524e+02 2.38805970e-01]
[ 1.23819281e+00 1.57723889e+00 8.16388777e+02 2.43781095e-01]
[ 1.22750934e+00 1.56372252e+00 8.20995857e+02 2.48756219e-01]
[ 1.21724644e+00 1.55043310e+00 8.25534192e+02 2.53731343e-01]
[ 1.20738355e+00 1.53736092e+00 8.30006086e+02 2.58706468e-01]
[ 1.19790159e+00 1.52449679e+00 8.34413725e+02 2.63681592e-01]
[ 1.18878280e+00 1.51183209e+00 8.38759189e+02 2.68656716e-01]
[ 1.18001066e+00 1.49935864e+00 8.43044453e+02 2.73631841e-01]
[ 1.17156975e+00 1.48706874e+00 8.47271399e+02 2.78606965e-01]
[ 1.16344568e+00 1.47495508e+00 8.51441821e+02 2.83582090e-01]
[ 1.15562501e+00 1.46301077e+00 8.55557428e+02 2.88557214e-01]
[ 1.14809516e+00 1.45122924e+00 8.59619854e+02 2.93532338e-01]
[ 1.14084436e+00 1.43960427e+00 8.63630658e+02 2.98507463e-01]
[ 1.13386159e+00 1.42812997e+00 8.67591331e+02 3.03482587e-01]
[ 1.12713650e+00 1.41680071e+00 8.71503300e+02 3.08457711e-01]
[ 1.12065939e+00 1.40561115e+00 8.75367932e+02 3.13432836e-01]
[ 1.11442115e+00 1.39455620e+00 8.79186535e+02 3.18407960e-01]
[ 1.10841322e+00 1.38363100e+00 8.82960364e+02 3.23383085e-01]
[ 1.10262753e+00 1.37283093e+00 8.86690623e+02 3.28358209e-01]
[ 1.09705651e+00 1.36215155e+00 8.90378469e+02 3.33333333e-01]
[ 1.09169304e+00 1.35158865e+00 8.94025011e+02 3.38308458e-01]
[ 1.08653040e+00 1.34113817e+00 8.97631318e+02 3.43283582e-01]
[ 1.08156225e+00 1.33079625e+00 9.01198417e+02 3.48258706e-01]
[ 1.07678264e+00 1.32055917e+00 9.04727294e+02 3.53233831e-01]
[ 1.07218595e+00 1.31042339e+00 9.08218902e+02 3.58208955e-01]
[ 1.06776688e+00 1.30038549e+00 9.11674157e+02 3.63184080e-01]
[ 1.06352043e+00 1.29044219e+00 9.15093942e+02 3.68159204e-01]
[ 1.05944189e+00 1.28059035e+00 9.18479110e+02 3.73134328e-01]
[ 1.05552682e+00 1.27082694e+00 9.21830481e+02 3.78109453e-01]
[ 1.05177102e+00 1.26114904e+00 9.25148850e+02 3.83084577e-01]
[ 1.04817055e+00 1.25155386e+00 9.28434983e+02 3.88059701e-01]
[ 1.04472169e+00 1.24203868e+00 9.31689619e+02 3.93034826e-01]
[ 1.04142092e+00 1.23260090e+00 9.34913475e+02 3.98009950e-01]
[ 1.03826495e+00 1.22323801e+00 9.38107243e+02 4.02985075e-01]
[ 1.03525066e+00 1.21394758e+00 9.41271591e+02 4.07960199e-01]
[ 1.03237514e+00 1.20472726e+00 9.44407167e+02 4.12935323e-01]
[ 1.02963563e+00 1.19557477e+00 9.47514600e+02 4.17910448e-01]
[ 1.02702957e+00 1.18648793e+00 9.50594496e+02 4.22885572e-01]
[ 1.02455453e+00 1.17746460e+00 9.53647444e+02 4.27860697e-01]
[ 1.02220825e+00 1.16850272e+00 9.56674014e+02 4.32835821e-01]
[ 1.01998862e+00 1.15960030e+00 9.59674761e+02 4.37810945e-01]
[ 1.01789368e+00 1.15075539e+00 9.62650220e+02 4.42786070e-01]
[ 1.01592160e+00 1.14196612e+00 9.65600913e+02 4.47761194e-01]
[ 1.01407067e+00 1.13323064e+00 9.68527345e+02 4.52736318e-01]
[ 1.01233933e+00 1.12454719e+00 9.71430006e+02 4.57711443e-01]
[ 1.01072613e+00 1.11591402e+00 9.74309374e+02 4.62686567e-01]
[ 1.00922975e+00 1.10732945e+00 9.77165912e+02 4.67661692e-01]
[ 1.00784900e+00 1.09879184e+00 9.80000070e+02 4.72636816e-01]
[ 1.00658276e+00 1.09029958e+00 9.82812285e+02 4.77611940e-01]
[ 1.00543008e+00 1.08185111e+00 9.85602984e+02 4.82587065e-01]
[ 1.00439009e+00 1.07344489e+00 9.88372581e+02 4.87562189e-01]
[ 1.00346202e+00 1.06507944e+00 9.91121478e+02 4.92537313e-01]
[ 1.00264522e+00 1.05675330e+00 9.93850069e+02 4.97512438e-01]
[ 1.00193914e+00 1.04846502e+00 9.96558734e+02 5.02487562e-01]
[ 1.00134336e+00 1.04021322e+00 9.99247846e+02 5.07462687e-01]
[ 1.00085710e+00 1.03204368e+00 1.00191750e+03 5.12437811e-01]
[ 1.00047986e+00 1.02392718e+00 1.00456749e+03 5.17412935e-01]
[ 1.00021128e+00 1.01584435e+00 1.00719807e+03 5.22388060e-01]
[ 1.00005131e+00 1.00779388e+00 1.00980956e+03 5.27363184e-01]
[ 1.00000000e+00 9.99774445e-01 1.01240228e+03 5.32338308e-01]
[ 1.00005751e+00 9.91784755e-01 1.01497652e+03 5.37313433e-01]
[ 1.00022409e+00 9.83823535e-01 1.01753259e+03 5.42288557e-01]
[ 1.00050011e+00 9.75889529e-01 1.02007078e+03 5.47263682e-01]
[ 1.00088603e+00 9.67981492e-01 1.02259136e+03 5.52238806e-01]
[ 1.00138242e+00 9.60098196e-01 1.02509461e+03 5.57213930e-01]
[ 1.00198996e+00 9.52238423e-01 1.02758080e+03 5.62189055e-01]
[ 1.00270944e+00 9.44400967e-01 1.03005019e+03 5.67164179e-01]
[ 1.00354176e+00 9.36584632e-01 1.03250304e+03 5.72139303e-01]
[ 1.00448794e+00 9.28788230e-01 1.03493959e+03 5.77114428e-01]
[ 1.00554910e+00 9.21010581e-01 1.03736010e+03 5.82089552e-01]
[ 1.00672651e+00 9.13250511e-01 1.03976479e+03 5.87064677e-01]
[ 1.00802154e+00 9.05506849e-01 1.04215390e+03 5.92039801e-01]
[ 1.00943571e+00 8.97778431e-01 1.04452767e+03 5.97014925e-01]
[ 1.01097065e+00 8.90064093e-01 1.04688630e+03 6.01990050e-01]
[ 1.01262815e+00 8.82362673e-01 1.04923002e+03 6.06965174e-01]
[ 1.01441014e+00 8.74673008e-01 1.05155904e+03 6.11940299e-01]
[ 1.01631868e+00 8.66993934e-01 1.05387356e+03 6.16915423e-01]
[ 1.01835602e+00 8.59324285e-01 1.05617380e+03 6.21890547e-01]
[ 1.02052454e+00 8.51662890e-01 1.05845995e+03 6.26865672e-01]
[ 1.02282682e+00 8.44008572e-01 1.06073219e+03 6.31840796e-01]
[ 1.02526561e+00 8.36360149e-01 1.06299074e+03 6.36815920e-01]
[ 1.02784384e+00 8.28716429e-01 1.06523576e+03 6.41791045e-01]
[ 1.03056465e+00 8.21076211e-01 1.06746744e+03 6.46766169e-01]
[ 1.03343139e+00 8.13438282e-01 1.06968596e+03 6.51741294e-01]
[ 1.03644763e+00 8.05801417e-01 1.07189150e+03 6.56716418e-01]
[ 1.03961718e+00 7.98164375e-01 1.07408422e+03 6.61691542e-01]
[ 1.04294408e+00 7.90525899e-01 1.07626430e+03 6.66666667e-01]
[ 1.04643265e+00 7.82884716e-01 1.07843189e+03 6.71641791e-01]
[ 1.05008750e+00 7.75239528e-01 1.08058716e+03 6.76616915e-01]
[ 1.05391351e+00 7.67589021e-01 1.08273026e+03 6.81592040e-01]
[ 1.05791592e+00 7.59931851e-01 1.08486136e+03 6.86567164e-01]
[ 1.06210027e+00 7.52266651e-01 1.08698060e+03 6.91542289e-01]
[ 1.06647248e+00 7.44592024e-01 1.08908812e+03 6.96517413e-01]
[ 1.07103886e+00 7.36906542e-01 1.09118409e+03 7.01492537e-01]
[ 1.07580615e+00 7.29208742e-01 1.09326863e+03 7.06467662e-01]
[ 1.08078152e+00 7.21497124e-01 1.09534189e+03 7.11442786e-01]
[ 1.08597262e+00 7.13770149e-01 1.09740400e+03 7.16417910e-01]
[ 1.09138765e+00 7.06026235e-01 1.09945510e+03 7.21393035e-01]
[ 1.09703534e+00 6.98263752e-01 1.10149533e+03 7.26368159e-01]
[ 1.10292504e+00 6.90481019e-01 1.10352481e+03 7.31343284e-01]
[ 1.10906676e+00 6.82676303e-01 1.10554367e+03 7.36318408e-01]
[ 1.11547122e+00 6.74847808e-01 1.10755203e+03 7.41293532e-01]
[ 1.12214991e+00 6.66993678e-01 1.10955002e+03 7.46268657e-01]
[ 1.12911518e+00 6.59111986e-01 1.11153775e+03 7.51243781e-01]
[ 1.13638028e+00 6.51200732e-01 1.11351536e+03 7.56218905e-01]
[ 1.14395948e+00 6.43257833e-01 1.11548294e+03 7.61194030e-01]
[ 1.15186813e+00 6.35281122e-01 1.11744062e+03 7.66169154e-01]
[ 1.16012281e+00 6.27268334e-01 1.11938851e+03 7.71144279e-01]
[ 1.16874141e+00 6.19217104e-01 1.12132671e+03 7.76119403e-01]
[ 1.17774327e+00 6.11124957e-01 1.12325534e+03 7.81094527e-01]
[ 1.18714936e+00 6.02989293e-01 1.12517451e+03 7.86069652e-01]
[ 1.19698242e+00 5.94807385e-01 1.12708431e+03 7.91044776e-01]
[ 1.20726717e+00 5.86576360e-01 1.12898485e+03 7.96019900e-01]
[ 1.21803053e+00 5.78293190e-01 1.13087623e+03 8.00995025e-01]
[ 1.22930185e+00 5.69954676e-01 1.13275856e+03 8.05970149e-01]
[ 1.24111323e+00 5.61557433e-01 1.13463191e+03 8.10945274e-01]
[ 1.25349984e+00 5.53097870e-01 1.13649641e+03 8.15920398e-01]
[ 1.26650028e+00 5.44572172e-01 1.13835213e+03 8.20895522e-01]
[ 1.28015705e+00 5.35976275e-01 1.14019917e+03 8.25870647e-01]
[ 1.29451704e+00 5.27305842e-01 1.14203762e+03 8.30845771e-01]
[ 1.30963215e+00 5.18556231e-01 1.14386757e+03 8.35820896e-01]
[ 1.32555995e+00 5.09722466e-01 1.14568911e+03 8.40796020e-01]
[ 1.34236455e+00 5.00799197e-01 1.14750233e+03 8.45771144e-01]
[ 1.36011752e+00 4.91780654e-01 1.14930731e+03 8.50746269e-01]
[ 1.37889909e+00 4.82660600e-01 1.15110413e+03 8.55721393e-01]
[ 1.39879948e+00 4.73432273e-01 1.15289289e+03 8.60696517e-01]
[ 1.41992062e+00 4.64088316e-01 1.15467365e+03 8.65671642e-01]
[ 1.44237809e+00 4.54620702e-01 1.15644650e+03 8.70646766e-01]
[ 1.46630363e+00 4.45020637e-01 1.15821152e+03 8.75621891e-01]
[ 1.49184806e+00 4.35278454e-01 1.15996879e+03 8.80597015e-01]
[ 1.51918507e+00 4.25383480e-01 1.16171838e+03 8.85572139e-01]
[ 1.54851580e+00 4.15323883e-01 1.16346037e+03 8.90547264e-01]
[ 1.58007469e+00 4.05086480e-01 1.16519484e+03 8.95522388e-01]
[ 1.61413689e+00 3.94656507e-01 1.16692185e+03 9.00497512e-01]
[ 1.65102777e+00 3.84017340e-01 1.16864147e+03 9.05472637e-01]
[ 1.69113540e+00 3.73150142e-01 1.17035379e+03 9.10447761e-01]
[ 1.73492690e+00 3.62033422e-01 1.17205886e+03 9.15422886e-01]
[ 1.78297036e+00 3.50642479e-01 1.17375676e+03 9.20398010e-01]
[ 1.83596478e+00 3.38948683e-01 1.17544755e+03 9.25373134e-01]
[ 1.89478143e+00 3.26918531e-01 1.17713131e+03 9.30348259e-01]
[ 1.96052259e+00 3.14512405e-01 1.17880809e+03 9.35323383e-01]
[ 2.03460654e+00 3.01682875e-01 1.18047796e+03 9.40298507e-01]
[ 2.11889442e+00 2.88372355e-01 1.18214099e+03 9.45273632e-01]
[ 2.21588518e+00 2.74509772e-01 1.18379724e+03 9.50248756e-01]
[ 2.32902692e+00 2.60005685e-01 1.18544677e+03 9.55223881e-01]
[ 2.46323657e+00 2.44744860e-01 1.18708965e+03 9.60199005e-01]
[ 2.62581558e+00 2.28574507e-01 1.18872592e+03 9.65174129e-01]
[ 2.82817604e+00 2.11284549e-01 1.19035566e+03 9.70149254e-01]
[ 3.08938842e+00 1.92572196e-01 1.19197891e+03 9.75124378e-01]
[ 3.44436790e+00 1.71972158e-01 1.19359575e+03 9.80099502e-01]
[ 3.96613421e+00 1.48700149e-01 1.19520622e+03 9.85074627e-01]
[ 4.84404272e+00 1.21224791e-01 1.19681038e+03 9.90049751e-01]
[ 6.83162862e+00 8.55864718e-02 1.19840829e+03 9.95024876e-01]]

View File

@@ -0,0 +1,47 @@
#!/bin/sh
#
#
temp_success="1"
/bin/rm -f output_0.txt diff_csv.txt diff_out_0.txt
##########################################################################
PYTHON_CMD=@PYTHON_CMD@
prog=isentropic.py
if test ! -f $prog ; then
echo $prog ' does not exist'
exit -1
fi
#################################################################
#
CANTERA_DATA=${CANTERA_DATA:=../../../data/inputs}; export CANTERA_DATA
CANTERA_BIN=${CANTERA_BIN:=../../../bin}
#################################################################
$PYTHON_CMD $prog > output_0.txt <<+
1.0
+
retnStat=$?
if [ $retnStat != "0" ]
then
temp_success="0"
echo "$prog returned with bad status, $retnStat, check output"
fi
diff -w output_blessed_0.txt output_0.txt > diff_out_0.txt
retnStat_0=$?
retnTotal=1
if test $retnStat_0 = "0"
then
retnTotal=0
fi
if test $retnTotal = "0"
then
echo "Successful test comparison on "`pwd`
else
echo "Unsuccessful test comparison of txt files on "`pwd` " test"
echo " see diff_outi_0.txt "
fi