from constants0 import *

def T_out(T1=300, p1=2, p2=20, Cp = 30.0):
    #beregner temperatur ut av kompressor med virkningsgrad 0.85
    T = (T1/eta) * ((p2/p1)**(gasConst/Cp) - 1) + T1
    return T

def shaftWork(T1 = 300, p1=2, p2 = 20, Cp = 30.0):
    #beregner akselarbeid for samme kompressor
    W = ((Cp*T1)/eta)*((p2/p1)**(gasConst/Cp) - 1)
    return W

def cooling(T1 = 300, T2=300, Cp=30.0):
    #beregner varme tilført ved kjøling av gass
    Q = Cp * (T2-T1)
    return Q

def trestegskompresjon():
    # Summerer akselarbeid for de tre trinnene
    W = shaftWork(T1=298, p1=2, p2=4, Cp=38.2)
    W += shaftWork(T1=303, p1=4, p2=8, Cp=38.2)
    W += shaftWork(T1=303, p1=8, p2=20, Cp=38.2)

    #Regner ut temperaturer før kjøling for hvert trinn
    Tb = T_out(T1=298, p1=2, p2=4, Cp=38.2)
    Td = T_out(T1=303, p1=4, p2=8, Cp=38.2)
    Tf = T_out(T1=303, p1=8, p2=20, Cp=38.2)

    #Summerer kjøling i hvert trinn
    Q = cooling(T1=Tb, T2=303, Cp=38.2)
    Q += cooling(T1=Td, T2=303, Cp=38.2)
    Q += cooling(T1=Tf, T2=303, Cp=38.2)

    #Skriver ut data
    print('W : ', W)
    print('Q : ', Q)
    print('Tb : ',Tb)
    print('Td : ', Td)
    print('Tf : ', Tf)
