Exemplo n.º 1
0
reactors = ReactorNet([r1, r2])

tim = []
t1 = []
t2 = []
v1 = []
v2 = []
v = []
xco = []
xh2 = []

for n in range(30):
    time = (n+1)*0.002
    reactors.advance(time)
    print fmt % (time, r1.temperature(), r2.temperature(),
                 r1.volume(), r2.volume(), r1.volume() + r2.volume(),
                 r2.moleFraction('CO'))

    tim.append(time)
    t1.append(r1.temperature())
    t2.append(r2.temperature())
    v1.append(r1.volume())
    v2.append(r2.volume())
    v.append(r1.volume() + r2.volume())
    xco.append(r2.moleFraction('CO'))
    xh2.append(r1.moleFraction('H2'))


# plot the results if matplotlib is installed.
# see http://matplotlib.sourceforge.net to get it
args = sys.argv
Exemplo n.º 2
0
time = 0.0
f = open('piston.csv','w')
writeCSV(f,['time (s)','T1 (K)','P1 (Bar)','V1 (m3)',
            'T2 (K)','P2 (Bar)','V2 (m3)'])
temp = zeros([300, 2], 'd')
pres = zeros([300, 2], 'd')
vol = zeros([300, 2], 'd')
tm = zeros(300,'d')
for n in range(300):
    time += 4.e-4
    print time, r2.temperature(),n
    sim.advance(time)
    tm[n] = time
    temp[n,:] = [r1.temperature(), r2.temperature()]
    pres[n,:] = [1.0e-5*r1.pressure(), 1.0e-5*r2.pressure()]
    vol[n,:] = [r1.volume(), r2.volume()]
    writeCSV(f, [tm[n], temp[n,0], pres[n,0], vol[n,0],
                 temp[n,1], pres[n,1], vol[n,1]])
f.close()
import os
print 'Output written to file piston.csv'
print 'Directory: '+os.getcwd()

args = sys.argv
if len(args) > 1 and args[1] == '-plot':
    try:    
        from matplotlib.pylab import *
        clf
        subplot(2,2,1)
        plot(tm, temp[:,0],'g-',tm, temp[:,1],'b-')
        legend(['Reactor 1','Reactor 2'],2)
Exemplo n.º 3
0
writeCSV(f, [
    'time (s)', 'T1 (K)', 'P1 (Bar)', 'V1 (m3)', 'T2 (K)', 'P2 (Bar)',
    'V2 (m3)'
])
temp = zeros([300, 2], 'd')
pres = zeros([300, 2], 'd')
vol = zeros([300, 2], 'd')
tm = zeros(300, 'd')
for n in range(300):
    time += 4.e-4
    print time, r2.temperature(), n
    sim.advance(time)
    tm[n] = time
    temp[n, :] = [r1.temperature(), r2.temperature()]
    pres[n, :] = [1.0e-5 * r1.pressure(), 1.0e-5 * r2.pressure()]
    vol[n, :] = [r1.volume(), r2.volume()]
    writeCSV(f, [
        tm[n], temp[n, 0], pres[n, 0], vol[n, 0], temp[n, 1], pres[n, 1],
        vol[n, 1]
    ])
f.close()
import os
print 'Output written to file piston.csv'
print 'Directory: ' + os.getcwd()

args = sys.argv
if len(args) > 1 and args[1] == '-plot':
    try:
        from matplotlib.pylab import *
        clf
        subplot(2, 2, 1)
Exemplo n.º 4
0
reactors = ReactorNet([r1, r2])

tim = []
t1 = []
t2 = []
v1 = []
v2 = []
v = []
xco = []
xh2 = []

for n in range(30):
    time = (n+1)*0.002
    reactors.advance(time)
    print fmt % (time, r1.temperature(), r2.temperature(),
                 r1.volume(), r2.volume(), r1.volume() + r2.volume(),
                 r2.moleFraction('CO'))

    tim.append(time)
    t1.append(r1.temperature())
    t2.append(r2.temperature())
    v1.append(r1.volume())
    v2.append(r2.volume())
    v.append(r1.volume() + r2.volume())
    xco.append(r2.moleFraction('CO'))  
    xh2.append(r1.moleFraction('H2'))

    
# plot the results if matplotlib is installed.
# see http://matplotlib.sourceforge.net to get it
args = sys.argv
Exemplo n.º 5
0
reactors = ReactorNet([r1, r2])

tim = []
t1 = []
t2 = []
v1 = []
v2 = []
v = []
xco = []
xh2 = []

for n in range(30):
    time = (n + 1) * 0.002
    reactors.advance(time)
    print fmt % (time, r1.temperature(), r2.temperature(), r1.volume(),
                 r2.volume(), r1.volume() + r2.volume(), r2.moleFraction('CO'))

    tim.append(time)
    t1.append(r1.temperature())
    t2.append(r2.temperature())
    v1.append(r1.volume())
    v2.append(r2.volume())
    v.append(r1.volume() + r2.volume())
    xco.append(r2.moleFraction('CO'))
    xh2.append(r1.moleFraction('H2'))

# plot the results if matplotlib is installed.
# see http://matplotlib.sourceforge.net to get it
args = sys.argv
if len(args) > 1 and (args[1] == '-plot' or args[1] == '-p'
Exemplo n.º 6
0
gas2.set(T=290, P=OneAtm, X="N2:1")
env = Reservoir(gas2)
# Reaktorgemisch vorlegen // 1m3
# gas2.set(T=400+273.75, P=OneAtm/1.3, X='CO:20, CO2:60, O2:4.2, N2:15.8')
# 24.334 0.7311988
# 25.215 0.5627019
gas2.set(T=25.215 + 273.15, P=56270, X="O2:21.6, N2:79.1")
# gas2.set(T=900, P=OneAtm, X='CO:20, CO2:60, N2:15.8 , O2:4.2')
r2 = Reactor(gas2, volume=0.025)

heatrate = Polynomial([-64.0e-1, 0.0, 0.0])
wall = Wall(left=r2, right=env)

# in Joule
print " Heizrate in MW ", heatrate(1) / 1000
print " Heizrate in MW/m3 ", heatrate(1) / r2.volume() / 1000
wall.set(Q=heatrate)

sim = ReactorNet([r2])
print "H20", r2.moleFraction("H2O")
print "CH4", r2.moleFraction("CH4")
print "CO2", r2.moleFraction("CO2")
print "CO", r2.moleFraction("CO")
print "O2", r2.moleFraction("O2")
print "N2", r2.moleFraction("N2")

time_list = []
temp_list = []
temp_list3 = []

# Abbruchkriterium haelfte des Sauerstoffs ist Verbraucht.