Cantera version
2.4.0 / 2.5.0a3
Operating System / Python/MATLAB version
all
Expected Behavior
FlowDevice objects should use a consistent philosophy for the implementation of parameters. I.e. MassFlowController, PressureController and Valve. Function names should be representative of actual behavior. MATLAB and Python implementations should use the same approach.
Actual Behavior
The implementation of FlowDevice objects is not consistent and even differs between Python and MATLAB. Python does not use the vector m_coeffs whereas MATLAB can set an array of values that cannot be used by the underlying C++ code. FlowDevice::updateMassFlowRate function signatures take time as an argument, which is not implemented for Valve objects (which precludes the implementation of time-dependent switching valves).
Some function names in the python interface are misleading (Valve.set_pressure_coeff). Python and MATLAB implementations differ (FlowDevice::setParameters).
Steps to reproduce
- N/A
Cantera version
2.4.0 / 2.5.0a3
Operating System / Python/MATLAB version
all
Expected Behavior
FlowDeviceobjects should use a consistent philosophy for the implementation of parameters. I.e.MassFlowController,PressureControllerandValve. Function names should be representative of actual behavior. MATLAB and Python implementations should use the same approach.Actual Behavior
The implementation of
FlowDeviceobjects is not consistent and even differs between Python and MATLAB.Python does not use the vectorm_coeffswhereas MATLAB can set an array of values that cannot be used by the underlying C++ code.FlowDevice::updateMassFlowRatefunction signatures take time as an argument, which is not implemented forValveobjects (which precludes the implementation of time-dependent switching valves).Some function names in the python interface are misleading (
Valve.set_pressure_coeff). Python and MATLAB implementations differ (FlowDevice::setParameters).Steps to reproduce