CoolProp.Plots.SimpleCyclesExpansion module¶
- class CoolProp.Plots.SimpleCyclesExpansion.BasePowerCycle(fluid_ref='HEOS::Water', graph_type='TS', **kwargs)¶
Bases:
BaseCycle
A thermodynamic cycle for power producing processes.
Defines the basic properties and methods to unify access to power cycle-related quantities.
see
CoolProp.Plots.SimpleCycles.BaseCycle
for details.
- class CoolProp.Plots.SimpleCyclesExpansion.SimpleRankineCycle(fluid_ref='HEOS::Water', graph_type='TS', **kwargs)¶
Bases:
BasePowerCycle
A simple Rankine cycle without regeneration
see
CoolProp.Plots.SimpleCycles.BasePowerCycle
for details.- STATECHANGE = [<function SimpleRankineCycle.<lambda>>, <function SimpleRankineCycle.<lambda>>, <function SimpleRankineCycle.<lambda>>, <function SimpleRankineCycle.<lambda>>]¶
A list of lists of tuples that defines how the state transitions behave for the corresponding entry in BaseCycle.STATECOUNT
- STATECOUNT = 4¶
A list of accepted numbers of states
- eta_thermal()¶
Thermal efficiency
The thermal efficiency for the specified process(es), :math:`eta_{th} =
rac{dot{W}_{exp} - dot{W}_{pum}}{dot{Q}_{in}}`.
float
- simple_solve(T0, p0, T2, p2, eta_exp, eta_pum, fluid=None, SI=True)¶
” A simple Rankine cycle calculation
- Parameters:
T0 (float) – The coldest point, before the pump
p0 (float) – The lowest pressure, before the pump
T2 (float) – The hottest point, before the expander
p2 (float) – The highest pressure, before the expander
eta_exp (float) – Isentropic expander efficiency
eta_pum (float) – Isentropic pump efficiency
Examples
>>> import CoolProp >>> from CoolProp.Plots import PropertyPlot >>> from CoolProp.Plots import SimpleRankineCycle >>> pp = PropertyPlot('HEOS::Water', 'TS', unit_system='EUR') >>> pp.calc_isolines(CoolProp.iQ, num=11) >>> cycle = SimpleRankineCycle('HEOS::Water', 'TS', unit_system='EUR') >>> T0 = 300 >>> pp.state.update(CoolProp.QT_INPUTS,0.0,T0+15) >>> p0 = pp.state.keyed_output(CoolProp.iP) >>> T2 = 700 >>> pp.state.update(CoolProp.QT_INPUTS,1.0,T2-150) >>> p2 = pp.state.keyed_output(CoolProp.iP) >>> cycle.simple_solve(T0, p0, T2, p2, 0.7, 0.8, SI=True) >>> cycle.steps = 50 >>> sc = cycle.get_state_changes() >>> import matplotlib.pyplot as plt >>> plt.close(cycle.figure) >>> pp.draw_process(sc)