Exemplo n.º 1
0
 def show(self, rate=None, cost=None):
     # Get units of measure
     display_units = self.display_units
     rate_units = rate or display_units.rate
     cost_units = cost or display_units.cost
     rate = convert(self.rate, 'kW', rate_units)
     cost = convert(self.cost, 'USD/hr', cost_units)
     return (
         f'<{type(self).__name__}: {rate:.3g} {rate_units}, {cost:.3g} {cost_units}>'
     )
Exemplo n.º 2
0
 def _info_data(self, duty, flow, cost):
     # Get units of measure
     su = self.display_units
     duty_units = duty or su.duty
     flow_units = flow or su.flow
     cost_units = cost or su.cost
     
     # Change units and return info string
     flow = self.inlet_utility_stream.get_total_flow(flow_units)
     duty = convert(self.duty, 'kJ/hr', duty_units)
     cost = convert(self.cost, 'USD/hr', cost_units)
     return duty, copysign(flow, self.flow), cost, duty_units, flow_units, cost_units
 def show(self, rate=None, cost=None):
     # Get units of measure
     display_units = self.display_units
     rate_units = rate or display_units.rate
     cost_units = cost or display_units.cost
     production = convert(self.production, 'kW', rate_units)
     consumption = convert(self.consumption, 'kW', rate_units)
     rate = consumption - production
     cost = convert(self.cost, 'USD/hr', cost_units)
     print(f'{type(self).__name__}:\n'
           f' consumption: {consumption:.3g} {rate_units}\n'
           f' production: {production:.3g} {rate_units}\n'
           f' rate: {rate:.3g} {rate_units}\n'
           f' cost: {cost:.3g} {cost_units}')
Exemplo n.º 4
0
 def _info_phaseTP(self, phase, T_units, P_units):
     T_limit = convert(self.T_limit, 'K', T_units)
     T_limit = f"{T_limit:.3g} K" if T_limit else "None"
     T = convert(self.T, 'K', T_units)
     P = convert(self.P, 'Pa', P_units)
     s = '' if isinstance(phase, str) else 's'
     ht_price = self.heat_transfer_price
     rg_price = self.regeneration_price
     ht_eff = self.heat_transfer_efficiency
     return (f" heat_transfer_efficiency: {ht_eff:.3f}\n"
             f" heat_transfer_price: {ht_price:.3g} USD/kJ\n"
             f" regeneration_price: {rg_price:.3g} USD/kmol\n"
             f" T_limit: {T_limit}\n"
             f" phase{s}: {repr(phase)}\n"
             f" T: {T:.5g} {T_units}\n"
             f" P: {P:.6g} {P_units}\n")
Exemplo n.º 5
0
def set_figure_size(width=None, aspect_ratio=None, units=None):
    # units default to inch
    # width defaults 6.614 inches
    # aspect ratio defaults to 0.65
    if aspect_ratio is None:
        aspect_ratio = 0.65
    if width is None:
        width = 6.6142
    else:
        if units is not None:
            from thermosteam.units_of_measure import convert
            width = convert(width, units, 'inch')
    import matplotlib
    params = matplotlib.rcParams
    params['figure.figsize'] = np.array([width, width * aspect_ratio])
Exemplo n.º 6
0
 def get_design_result(self, key, units):
     return convert(self.design_results[key], self._units[key], units)