Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
data-science / thermodynamics / ideal_gas.py
Size: Mime:
# some useful ideal gas relationships
import math


air_specific_heats_ratio = 1.4


def compression_polytropic_coefficient(inlet_temperature, inlet_pressure,
                                       outlet_temperature, outlet_pressure):
    """
    Polytropic coefficient in a compression process.
        :param inlet_temperature: 
        :param inlet_pressure: 
        :param outlet_temperature: 
        :param outlet_pressure: 
    """
    try:
        a = math.log(outlet_temperature / inlet_temperature,
                    outlet_pressure / inlet_pressure)
        return 1 / (1 - a)
    except ZeroDivisionError as e:
        print(e)
        return 1.0


def polytropic_compression_heat_proportion(polytropic_coefficient):
    return (air_specific_heats_ratio - polytropic_coefficient) / \
           (air_specific_heats_ratio - 1)