def regnut(guessT,
           partlist = [0.21, 0.53, 0.16, 0.05, 0.05],
           coefflist = ['CO', 'H2', 'CH4', 'N2', 'CH3OH'],
           T1 = 550,

           hopp=75, mode=0):

    if mode == 0:
        if len(partlist) != len(coefflist):
            return print('partlist is len: ', len(partlist), '\n coefflist is len: ', len(coefflist))

    from py_oving.oving1.HeatCp import MeanHeatCapacity as mhcp

    cp =0
    for i in range(len(partlist)):
        cp += partlist[i] * mhcp(guessT, 550, coefflist[i])

    diff = 1684 - (T1-guessT)*cp
    print(guessT,'      ',diff,'        ',hopp)

    if diff > 1:
        if mode == -1:
            hopp = hopp/2
        return regnut(guessT-hopp,hopp=hopp,mode=1)

    if diff < -1:
        if mode == 1:
            hopp = hopp/2
        return regnut(guessT+hopp,hopp=hopp,mode=-1)

    return guessT,cp

