From 8b4c5336ba01ff8c1e293dbad6d534b9016846f4 Mon Sep 17 00:00:00 2001 From: Ray Speth Date: Tue, 23 Sep 2014 02:20:55 +0000 Subject: [PATCH] [Cython/Reactor] Add Reactor keyword argument 'volume' --- interfaces/cython/cantera/reactor.pyx | 5 ++++- interfaces/cython/cantera/test/test_reactor.py | 7 +++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/interfaces/cython/cantera/reactor.pyx b/interfaces/cython/cantera/reactor.pyx index 3dadcc9e2..8c102510b 100644 --- a/interfaces/cython/cantera/reactor.pyx +++ b/interfaces/cython/cantera/reactor.pyx @@ -12,7 +12,7 @@ cdef class ReactorBase: self.rbase = newReactor(stringify(self.reactor_type)) # The signature of this function causes warnings for Sphinx documentation - def __init__(self, ThermoPhase contents=None, name=None): + def __init__(self, ThermoPhase contents=None, name=None, *, volume=None): self._inlets = [] self._outlets = [] self._walls = [] @@ -26,6 +26,9 @@ cdef class ReactorBase: n = reactor_counts[self.reactor_type] self.name = '{0}_{1}'.format(self.reactor_type, n) + if volume is not None: + self.volume = volume + def __dealloc__(self): del self.rbase diff --git a/interfaces/cython/cantera/test/test_reactor.py b/interfaces/cython/cantera/test/test_reactor.py index 05e17c69c..8b58f1501 100644 --- a/interfaces/cython/cantera/test/test_reactor.py +++ b/interfaces/cython/cantera/test/test_reactor.py @@ -50,6 +50,13 @@ class TestReactor(utilities.CanteraTest): self.assertNear(R.T, 300) self.assertEqual(len(R.kinetics.net_production_rates), g.n_species) + def test_volume(self): + R = self.reactorClass(volume=11) + self.assertEqual(R.volume, 11) + + R.volume = 9 + self.assertEqual(R.volume, 9) + def test_names(self): self.make_reactors()